#!/bin/sh /etc/rc.common START=99 get_irq() { local name="$1" grep -m 1 "$name" /proc/interrupts | cut -d: -f1 | sed 's, *,,' } set_irq_affinity() { local name="$1" local val="$2" local irq="$(get_irq "$name")" [ -n "$irq" ] || return echo "$val" > "/proc/irq/$irq/smp_affinity" } start() { if grep -q 'processor.*: 2' /proc/cpuinfo; then mask1=4 mask2=8 elif grep -q 'processor.*: 1' /proc/cpuinfo; then mask1=2 mask2=2 else return fi set_irq_affinity mt76x2e $mask1 set_irq_affinity mt7603e $mask2 }