rules.mk: export TMPDIR
[openwrt/openwrt.git] / target / linux / brcm47xx / base-files / lib / preinit / 05_init_interfaces_brcm
index 3ca8456ffb926b864e173e310d318579179a378d..4b0d0eb674ae74c30a20993a04517b76abdc1f52 100644 (file)
@@ -1,38 +1,16 @@
 #!/bin/sh
 
-set_preinit_iface() {
+preinit_iface() {
        ifname=eth0
 
-       insmod diag
-       insmod hwmon
-       insmod tg3
-
        # hardware specific overrides
-       case "$(cat /proc/diag/model)" in
-               "Linksys WAP54G V1") ifname=eth1;;
-               "ASUS WL-HDD") ifname=eth1;;
-               "ASUS WL-300g") ifname=eth1;;
-               "ASUS (unknown, BCM4702)") ifname=eth1;;
-               "Sitecom WL-105b") ifname=eth1;;
+       case "$(awk 'BEGIN{FS="[ \t]+:[ \t]"} /machine/ {print $2}' /proc/cpuinfo)" in
+               "Asus WLHDD") ifname=eth1;;
+               "Asus WL300G") ifname=eth1;;
        esac
-       ifconfig $ifname 0.0.0.0 up
-}
-
-check_module () {
-  module="$1"; shift; params="$*"
-
-  insmod "$module" "$params"
-  sleep 1
-  grep -q ^"$module " /proc/modules
-  return $?
-}
 
-init_iface() {
-       insmod switch-core
-       check_module switch-robo || check_module switch-adm  || {
-         check_module bcm57xx activate_gpio=0x4 && cpu_port="8u*"
-       } || rmmod switch-core
+       local try=0;
+       while [ $((try++)) -le 5 ] && [ ! -f /sys/class/net/$ifname/operstate ]; do sleep 1; done
 }
 
-boot_hook_add preinit_main set_preinit_iface
-boot_hook_add preinit_main init_iface
+boot_hook_add preinit_main preinit_iface