From c21b416c6e1cb17eb460a6e0df7d89aa88c65107 Mon Sep 17 00:00:00 2001 From: ColorfulRhino <131405023+ColorfulRhino@users.noreply.github.com> Date: Sat, 29 Jun 2024 17:08:45 +0200 Subject: [PATCH] bsp: hardware-optimization: Add check for `BOOT_SOC` to fix rk322x optimizations BOARDFAMILY `rk322x` was integrated into the `rockchip` BOARDFAMILY in https://github.com/armbian/build/pull/6092 This integration made the hardware optimization for rk322x not apply anymore. Also remove a rk322x optimization for an old 4.4 kernel --- .../lib/armbian/armbian-hardware-optimization | 23 +++++++++---------- 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/packages/bsp/common/usr/lib/armbian/armbian-hardware-optimization b/packages/bsp/common/usr/lib/armbian/armbian-hardware-optimization index a0de890abd0a..7a5cf6b41fdd 100755 --- a/packages/bsp/common/usr/lib/armbian/armbian-hardware-optimization +++ b/packages/bsp/common/usr/lib/armbian/armbian-hardware-optimization @@ -106,13 +106,17 @@ prepare_board() { done fi - # IRQ distribution based on $BOARDFAMILY and/or $BOARD_NAME - case ${BOARD} in - rockpro64 | renegade-elite | pinebook-pro | station-p1) - BOARDFAMILY=rk3399 - ;; - esac - case ${BOARDFAMILY} in + local hw_optimization_family + # IRQ distribution based on $BOARDFAMILY or $BOARD or $BOOT_SOC + if [[ "${BOARD}" == "rockpro64" || "${BOARD}" == "renegade-elite" || "${BOARD}" == "pinebook-pro" || "${BOARD}" == "station-p1" ]]; then + hw_optimization_family="rk3399" + elif [[ "${BOOT_SOC}" == "rk322x" ]]; then + hw_optimization_family="rk322x" + else + hw_optimization_family="${BOARDFAMILY}" + fi + + case ${hw_optimization_family} in cubox | udoo*) # i.MX6 boards: send Ethernet to cpu3, MMC to cpu1/cpu2 (when available) echo 2 > /proc/irq/$(awk -F":" "/mmc0/ {print \$1}" < /proc/interrupts | sed 's/\ //g' | head -1)/smp_affinity 2> /dev/null echo 4 > /proc/irq/$(awk -F":" "/mmc1/ {print \$1}" < /proc/interrupts | sed 's/\ //g' | head -1)/smp_affinity 2> /dev/null @@ -190,11 +194,6 @@ prepare_board() { echo 8 > /proc/irq/$(awk -F":" "/eth0/ {print \$1}" < /proc/interrupts | sed 's/\ //g' | head -n1)/smp_affinity echo 7 > /sys/class/net/eth0/queues/rx-0/rps_cpus - # Mali in 4.4 kernel - for i in $(awk -F':' '/Mali_/{print $1}' /proc/interrupts | sed 's/\ //g'); do - echo 8 > /proc/irq/$i/smp_affinity - done - # Lima in mainline kernel echo 8 > /proc/irq/$(awk -F':' '/gp$/{print $1}' /proc/interrupts | sed 's/\ //g')/smp_affinity echo 8 > /proc/irq/$(awk -F':' '/gpmmu/{print $1}' /proc/interrupts | sed 's/\ //g')/smp_affinity