diff --git a/packages/bsp/common/usr/lib/armbian/armbian-hardware-optimization b/packages/bsp/common/usr/lib/armbian/armbian-hardware-optimization index 52377ab147..5af46a40d4 100755 --- a/packages/bsp/common/usr/lib/armbian/armbian-hardware-optimization +++ b/packages/bsp/common/usr/lib/armbian/armbian-hardware-optimization @@ -186,9 +186,22 @@ prepare_board() { for i in $(awk -F':' '/Mali/{print $1}' /proc/irq/$i/smp_affinity done - echo 2 >/proc/irq/$(awk -F":" "/ehci/ {print \$1}" /proc/irq/$(awk -F":" "/ohci/ {print \$1}" /proc/irq/$(awk -F":" "/xhci/ {print \$1}" /proc/irq/$i/smp_affinity + done + for i in $(awk -F":" "/ohci/ {print \$1}" /proc/irq/$i/smp_affinity + done + for i in $(awk -F":" "/xhci/ {print \$1}" /proc/irq/$i/smp_affinity + done + + # Wait (up to 5s) until eth0 brought up + for i in {1..5}; do + grep -q "eth0" /proc/interrupts && break + sleep 1 + done + echo 8 >/proc/irq/$(awk -F":" "/eth0/ {print \$1}" /sys/class/net/eth0/queues/rx-0/rps_cpus echo 32768 >/proc/sys/net/core/rps_sock_flow_entries @@ -211,6 +224,13 @@ prepare_board() { for i in $(awk -F":" "/xhci/ {print \$1}" /proc/irq/$i/smp_affinity done + + # Wait (up to 5s) until eth0 brought up + for i in {1..5}; do + grep -q "eth0" /proc/interrupts && break + sleep 1 + done + echo 8 >/proc/irq/$(awk -F":" "/eth0/ {print \$1}" /sys/class/net/eth0/queues/rx-0/rps_cpus echo 32768 >/proc/sys/net/core/rps_sock_flow_entries