mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-21 06:33:41 +00:00
ramips: mt7621: refactor set affinity script
The current one only looks for mt76x2e and mt7603e, and does not work for 2 or more same Wi-Fi chips. Refactor the script to cover those cases. Signed-off-by: DENG Qingfang <dengqf6@mail2.sysu.edu.cn>
This commit is contained in:
parent
ff8b8fee89
commit
23de93a521
@ -2,30 +2,18 @@
|
|||||||
|
|
||||||
START=99
|
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() {
|
start() {
|
||||||
if grep -q 'processor.*: 2' /proc/cpuinfo; then
|
if grep -q 'processor.*: 2' /proc/cpuinfo; then
|
||||||
mask1=4
|
mask=4
|
||||||
mask2=8
|
|
||||||
elif grep -q 'processor.*: 1' /proc/cpuinfo; then
|
elif grep -q 'processor.*: 1' /proc/cpuinfo; then
|
||||||
mask1=2
|
mask=2
|
||||||
mask2=2
|
|
||||||
else
|
else
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
set_irq_affinity mt76x2e $mask1
|
for irq in $(grep "mt76..e" /proc/interrupts | cut -d: -f1 | sed 's, *,,')
|
||||||
set_irq_affinity mt7603e $mask2
|
do
|
||||||
|
echo "$mask" > "/proc/irq/$irq/smp_affinity"
|
||||||
|
[ $mask = 4 ] && mask=8
|
||||||
|
done
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user