81cf1f13806004413c8956996f1fcc083d069e44
[openwrt-10.03/.git] / target / linux / brcm-2.4 / base-files / lib / preinit / 05_init_interfaces_brcm-2.4
1 #!/bin/sh
2
3 set_preinit_iface() {
4         ifname=eth0
5
6         insmod diag
7
8         # hardware specific overrides
9         case "$(cat /proc/diag/model)" in
10                 "Linksys WAP54G V1") ifname=eth1;;
11                 "ASUS WL-HDD") ifname=eth1;;
12                 "ASUS WL-300g") ifname=eth1;;
13                 "ASUS (unknown, BCM4702)") ifname=eth1;;
14                 "Sitecom WL-105b") ifname=eth1;;
15         esac
16 }
17
18 check_module () {
19   module="$1"; shift; params="$*"
20
21   insmod "$module" "$params"
22   sleep 1
23   grep "^$module" /proc/modules
24   return $?
25 }
26
27 init_iface() {
28         check_module tg3
29         insmod switch-core
30         check_module switch-robo || check_module switch-adm  || { 
31           check_module bcm57xx activate_gpio=0x4 && cpu_port="8u*"
32         } || rmmod switch-core
33 }
34
35 boot_hook_add preinit_main init_iface
36 boot_hook_add preinit_main set_preinit_iface
37
38