aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm63xx/base-files/lib/preinit/05_init_interfaces_brcm63xx
diff options
context:
space:
mode:
authorDaniel Dickinson <crazycshore@gmail.com>2010-05-30 01:33:20 +0000
committerDaniel Dickinson <crazycshore@gmail.com>2010-05-30 01:33:20 +0000
commit40c53c655647a7125f9367152381ef62ce51a48b (patch)
tree223221a7b5d46c08cb649c3dd7cfa99391550734 /target/linux/brcm63xx/base-files/lib/preinit/05_init_interfaces_brcm63xx
parent82edb6eafa67daa92624a9042a5d646e3bac88b5 (diff)
downloadupstream-40c53c655647a7125f9367152381ef62ce51a48b.tar.gz
upstream-40c53c655647a7125f9367152381ef62ce51a48b.tar.bz2
upstream-40c53c655647a7125f9367152381ef62ce51a48b.zip
brcm63xx: Fixed vlan packet leakage in preinit for known devices with a switch on eth1 (currently only 96348GW - Tecom 6x00)
SVN-Revision: 21629
Diffstat (limited to 'target/linux/brcm63xx/base-files/lib/preinit/05_init_interfaces_brcm63xx')
-rw-r--r--target/linux/brcm63xx/base-files/lib/preinit/05_init_interfaces_brcm63xx26
1 files changed, 26 insertions, 0 deletions
diff --git a/target/linux/brcm63xx/base-files/lib/preinit/05_init_interfaces_brcm63xx b/target/linux/brcm63xx/base-files/lib/preinit/05_init_interfaces_brcm63xx
new file mode 100644
index 0000000000..b7cbecd4f4
--- /dev/null
+++ b/target/linux/brcm63xx/base-files/lib/preinit/05_init_interfaces_brcm63xx
@@ -0,0 +1,26 @@
+#!/bin/sh
+
+set_preinit_iface() {
+ ifname=eth1
+
+ . /lib/brcm63xx.sh
+
+ ifconfig $ifname 0.0.0.0 up
+}
+
+check_module () {
+ module="$1"; shift; params="$*"
+
+ insmod "$module" "$params"
+ sleep 1
+ grep "^$module" /proc/modules
+ return $?
+}
+
+init_iface() {
+ insmod switch-core
+ check_module switch-robo || check_module switch-adm || rmmod switch-core
+}
+
+boot_hook_add preinit_main set_preinit_iface
+boot_hook_add preinit_main init_iface