aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/cns3xxx/base-files/etc/init.d/netdev-cpu
diff options
context:
space:
mode:
authorJames <>2015-11-04 11:49:21 +0000
committerJames <>2015-11-04 11:49:21 +0000
commit716ca530e1c4515d8683c9d5be3d56b301758b66 (patch)
tree700eb5bcc1a462a5f21dcec15ce7c97ecfefa772 /target/linux/cns3xxx/base-files/etc/init.d/netdev-cpu
downloadtrunk-47381-716ca530e1c4515d8683c9d5be3d56b301758b66.tar.gz
trunk-47381-716ca530e1c4515d8683c9d5be3d56b301758b66.tar.bz2
trunk-47381-716ca530e1c4515d8683c9d5be3d56b301758b66.zip
trunk-47381HEADmaster
Diffstat (limited to 'target/linux/cns3xxx/base-files/etc/init.d/netdev-cpu')
-rwxr-xr-xtarget/linux/cns3xxx/base-files/etc/init.d/netdev-cpu21
1 files changed, 21 insertions, 0 deletions
diff --git a/target/linux/cns3xxx/base-files/etc/init.d/netdev-cpu b/target/linux/cns3xxx/base-files/etc/init.d/netdev-cpu
new file mode 100755
index 0000000..3a2a57b
--- /dev/null
+++ b/target/linux/cns3xxx/base-files/etc/init.d/netdev-cpu
@@ -0,0 +1,21 @@
+#!/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() {
+ set_irq_affinity gig_switch 2
+ set_irq_affinity gig_stat 2
+}