# This file handles the NVRAM quirks of various hardware.
# THIS FILE IS NOT A REPLACEMENT FOR NVRAM
+# Load sysconf defaults
+[ -f /etc/sysconf ] && . /etc/sysconf
+
# linksys bug; remove when not using static configuration for lan
NVRAM_lan_proto="static"
FAILSAFE_ifnames="eth0 eth1"
}
+# hacks for buffalo wla2-g54l
+[ "$(nvram get boardnum)" = "00" ] && \
+[ "$(nvram get product_name)" = "Product_name" ] && {
+ debug "### wla2-g54l hacks ###"
+ NVRAM_lan_ifnames="vlan0"
+ NVRAM_wan_ifname="none"
+}
+
+# hack for asus wl-500g hardware
+[ "$(nvram get boardnum)" = "asusX" ] && \
+[ "$(nvram get boardtype)" = "bcm94710dev" ] && {
+ FAILSAFE_lan_ifnames="eth0 eth2"
+}
+
+# hacks for asus wl-500g deluxe
+[ "$(nvram get boardtype)" = "bcm95365r" ] && \
+[ "$(nvram get boardnum)" = "45" ] && {
+ debug "### wl-500g deluxe hacks ###"
+ NVRAM_vlan0hwname="et0"
+ NVRAM_vlan1hwname="et0"
+ NVRAM_lan_ifnames="vlan0 eth1"
+ [ "$(nvram get wan_ifname)" = "eth0.1" ] && {
+ NVRAM_wan_ifname="vlan1"
+ }
+}
+
# defaults if lan_ifname is missing
[ -z "$(nvram get lan_ifname)" ] && {
NVRAM_lan_ifname="br0"
- NVRAM_lan_ifnames="vlan0 vlan2 eth1 eth2 eth3"
+ NVRAM_lan_ifnames=${FAILSAFE_lan_ifnames:-"vlan0 vlan2 eth1 eth2 eth3"}
}
# defaults if wan_ifname is missing
[ -z "$(nvram get wan_ifname)" ] && {
NVRAM_wan_ifname="vlan1"
NVRAM_wan_proto="dhcp"
+ [ "$asus" ] && {
+ NVRAM_wan_ifname="eth1"
+ }
}
# failsafe if reset is held
echo "### YOU ARE IN FAILSAFE MODE ####"
NVRAM_lan_ifname="br0"
NVRAM_lan_ifnames=${FAILSAFE_ifnames:-"vlan0 vlan1 eth1"}
- NVRAM_lan_ipaddr="192.168.1.1"
- NVRAM_lan_netmask="255.255.255.0"
- NVRAM_lan_hwaddr="00:0B:AD:0A:DD:00"
+ NVRAM_lan_ipaddr=${BR2_SYSCONF_FAILSAFE_IP:-"192.168.1.1"}
+ NVRAM_lan_netmask=${BR2_SYSCONF_FAILSAFE_NETMASK:-"255.255.255.0"}
+ NVRAM_lan_hwaddr=${BR2_SYSCONF_FAILSAFE_MAC:-"00:0B:AD:0A:DD:00"}
NVRAM_wan_ifname="none"
NVRAM_wifi_ifname="none"
}