ar71xx: add default network configuration file for the WP543 board
[openwrt-10.03/.git] / target / linux / ar71xx / base-files / etc / preinit.arch
index 6e09039059eac8f1854e0154c28c1b776879a6c9..a6af7e117aaaeb037a8a39d2d9fc5aeb5b89a336 100644 (file)
@@ -4,21 +4,49 @@
 
 . /lib/ar71xx.sh
 
-tew632brp_init_mac_address() {
+fetch_mac_from_mtd() {
+       local mtd_part=$1
+       local lan_env=$2
+       local wan_env=$3
        local mtd mac
 
-       mtd=$(grep config /proc/mtd | cut -d: -f1)
+       mtd=$(grep $mtd_part /proc/mtd | cut -d: -f1)
        [ -z $mtd ] && return
 
-       mac=$(grep lan_mac /dev/$mtd | cut -d= -f2)
+       mac=$(grep $lan_env /dev/$mtd | cut -d= -f2)
        [ ! -z $mac ] && ifconfig eth0 hw ether $mac 2>/dev/null
 
-       mac=$(grep wan_mac /dev/$mtd | cut -d= -f2)
+       mac=$(grep $wan_env /dev/$mtd | cut -d= -f2)
        [ ! -z $mac ] && ifconfig eth1 hw ether $mac 2>/dev/null
 }
 
-case $(ar71xx_board_name) in
-       tew-632brp)
-               tew632brp_init_mac_address
-               ;;
-esac
+preinit_load_modules() {
+       insmod input-core
+       insmod input-polldev
+       insmod gpio_buttons
+       insmod button-hotplug
+}
+
+preinit_set_mac_address() {
+       case $(ar71xx_board_name) in
+               tew-632brp)
+                       fetch_mac_from_mtd config lan_mac wan_mac
+                       ;;
+               wrt160nl)
+                       fetch_mac_from_mtd nvram lan_hwaddr wan_hwaddr
+                       ;;
+       esac
+}
+
+preinit_set_mac_address
+preinit_load_modules
+
+ifname=eth0
+
+failsafe_ip
+
+netmsg 192.168.1.255 "Press reset now, to enter Failsafe!"
+
+ifconfig "$ifname" 0.0.0.0 down
+
+sleep 2