1#!/bin/sh
2
3set_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	ifconfig $ifname 0.0.0.0 up
17}
18
19check_module () {
20  module="$1"; shift; params="$*"
21
22  insmod "$module" "$params"
23  sleep 1
24  grep "^$module" /proc/modules
25  return $?
26}
27
28init_iface() {
29	check_module tg3
30	insmod switch-core
31	check_module switch-robo || check_module switch-adm  || { 
32	  check_module bcm57xx activate_gpio=0x4 && cpu_port="8u*"
33	} || rmmod switch-core
34}
35
36boot_hook_add preinit_main set_preinit_iface
37boot_hook_add preinit_main init_iface
38