cf3885eb0f
Prior to the switch to 3.8, ALL5002 and ALL5003 boards shared mach-all5002.c. With the change to DTS, this is no longer accurate, as ALL5002 is based on Rt3352 SoC while ALL5003 is based on Rt5350 SoC, therefore the corresponding rt5350.dtsi need to be included for ALL5003. Signed-off-by: Daniel Golle <dgolle@allnet.de> Patchwork: http://patchwork.openwrt.org/patch/3557/ Acked-by: John Crispin <blogic@openwrt.org> SVN-Revision: 36435
291 lines
5.7 KiB
Bash
Executable file
291 lines
5.7 KiB
Bash
Executable file
#!/bin/sh
|
|
|
|
. /lib/functions.sh
|
|
. /lib/ramips.sh
|
|
. /lib/functions/uci-defaults.sh
|
|
|
|
ramips_setup_rt3x5x_vlans()
|
|
{
|
|
if [ ! -x /sbin/swconfig ]; then
|
|
# legacy default
|
|
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
|
|
return
|
|
fi
|
|
local wanports=""
|
|
local lanports=""
|
|
swconfig dev rt305x set reset 1
|
|
for port in 5 4 3 2 1 0; do
|
|
if [ `swconfig dev rt305x port $port get disable` = "1" ]; then
|
|
continue
|
|
fi
|
|
if [ `swconfig dev rt305x port $port get lan` = "0" ]; then
|
|
wanports="$port $wanports"
|
|
else
|
|
lanports="$port $lanports"
|
|
fi
|
|
done
|
|
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
|
|
ucidef_add_switch "rt305x" "1" "1"
|
|
ucidef_add_switch_vlan "rt305x" "1" "$lanports 6t"
|
|
ucidef_add_switch_vlan "rt305x" "2" "$wanports 6t"
|
|
}
|
|
|
|
ramips_setup_interfaces()
|
|
{
|
|
local board="$1"
|
|
|
|
ucidef_set_interface_loopback
|
|
|
|
case $board in
|
|
3g300m | \
|
|
w150m | \
|
|
all0256n | \
|
|
all5002 | \
|
|
all5003 | \
|
|
broadway | \
|
|
wnce2001)
|
|
ucidef_add_switch "switch0" "1" "0"
|
|
ucidef_set_interface_lan "eth0"
|
|
;;
|
|
|
|
3g-6200nl | \
|
|
wl-330n)
|
|
ucidef_set_interface_lan "eth0.1"
|
|
;;
|
|
|
|
3g-6200n | \
|
|
argus-atp52b | \
|
|
b2c | \
|
|
nw718 | \
|
|
psr-680w | \
|
|
sl-r7205 | \
|
|
w502u | \
|
|
wr6202)
|
|
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
|
|
;;
|
|
|
|
asl26555)
|
|
ucidef_set_interface_lan "eth0.1"
|
|
ucidef_add_switch "switch0" "1" "1"
|
|
ucidef_add_switch_vlan "switch0" "1" "1 2 3 4 6t"
|
|
;;
|
|
|
|
dir-645)
|
|
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
|
|
ucidef_add_switch "switch0" "1" "1"
|
|
ucidef_add_switch_vlan "switch0" "1" "1 2 3 4 6t"
|
|
ucidef_add_switch_vlan "switch0" "2" "0 6t"
|
|
;;
|
|
|
|
dir-615-h1 | \
|
|
mzk-w300nh2)
|
|
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
|
|
ucidef_add_switch "switch0" "1" "1"
|
|
ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 6t"
|
|
ucidef_add_switch_vlan "switch0" "2" "4 6t"
|
|
;;
|
|
|
|
f5d8235-v1 | \
|
|
f5d8235-v2 | \
|
|
ur-326n4g)
|
|
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
|
|
ucidef_add_switch "switch0" "1" "1"
|
|
ucidef_add_switch_vlan "switch0" "1" "1 2 3 4 6t"
|
|
ucidef_add_switch_vlan "switch0" "2" "0 6t"
|
|
;;
|
|
|
|
ur-336un)
|
|
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
|
|
;;
|
|
|
|
br6524n | \
|
|
v11st-fe)
|
|
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
|
|
ucidef_add_switch "switch0" "1" "1"
|
|
ucidef_add_switch_vlan "switch0" "1" "1 2 3 4 5t"
|
|
ucidef_add_switch_vlan "switch0" "2" "0 5t"
|
|
;;
|
|
|
|
rt-n15 | \
|
|
wl-351)
|
|
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
|
|
ucidef_add_switch "switch0" "1" "1"
|
|
ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 5t"
|
|
ucidef_add_switch_vlan "switch0" "2" "4 5t"
|
|
;;
|
|
|
|
rt-n56u)
|
|
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
|
|
ucidef_add_switch "switch0" "1" "1"
|
|
ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 8t"
|
|
ucidef_add_switch_vlan "switch0" "2" "4 8t"
|
|
;;
|
|
|
|
tew-691gr|\
|
|
tew-692gr)
|
|
ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
|
|
ucidef_add_switch "switch0" "1" "1"
|
|
ucidef_add_switch_vlan "switch0" "1" "0t 1 2 3 4"
|
|
ucidef_add_switch_vlan "switch0" "2" "0t 5"
|
|
;;
|
|
|
|
freestation5 | \
|
|
wcr-150gn)
|
|
ucidef_set_interfaces_lan_wan "eth0.2" "eth0.1"
|
|
;;
|
|
|
|
d105 | \
|
|
omni-emb-hpm|\
|
|
wli-tx4-ag300n)
|
|
ucidef_set_interface_lan "eth0"
|
|
;;
|
|
|
|
*)
|
|
RT3X5X=`cat /proc/cpuinfo | egrep "(RT3.5|RT5350)"`
|
|
if [ -n "${RT3X5X}" ]; then
|
|
ramips_setup_rt3x5x_vlans
|
|
else
|
|
ucidef_set_interfaces_lan_wan "eth0" "eth1"
|
|
fi
|
|
;;
|
|
esac
|
|
}
|
|
|
|
ramips_setup_macs()
|
|
{
|
|
local board="$1"
|
|
local lan_mac=""
|
|
local wan_mac=""
|
|
|
|
case $board in
|
|
all0256n | \
|
|
all5002 | \
|
|
dir-615-h1)
|
|
lan_mac=$(mtd_get_mac_binary factory 40)
|
|
;;
|
|
3g-6200n | \
|
|
3g300m | \
|
|
w150m | \
|
|
air3gii | \
|
|
argus-atp52b | \
|
|
bc2 | \
|
|
br6425 | \
|
|
broadway | \
|
|
dir-620-d1 | \
|
|
f5d8235-v1 | \
|
|
mzk-w300nh2 | \
|
|
nw718 | \
|
|
psr-680w | \
|
|
rt-n15 | \
|
|
sl-r7205 | \
|
|
wl-351)
|
|
lan_mac=$(mtd_get_mac_binary factory 4)
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
;;
|
|
|
|
asl26555)
|
|
lan_mac=$(mtd_get_mac_binary devdata 16388)
|
|
;;
|
|
|
|
w306r-v20)
|
|
lan_mac=$(mtd_get_mac_binary factory 4)
|
|
wan_mac=$(macaddr_add "$lan_mac" 5)
|
|
;;
|
|
|
|
rt-n13u | \
|
|
fonera20n)
|
|
lan_mac=$(mtd_get_mac_binary factory 40)
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
;;
|
|
|
|
dir-300-b1 |\
|
|
dir-300-b2 |\
|
|
dir-600-b1)
|
|
lan_mac=$(mtd_get_mac_binary devdata 16388)
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
;;
|
|
|
|
dir-620-a1)
|
|
lan_mac=$(mtd_get_mac_binary factory 4)
|
|
lan_mac=$(macaddr_setbit_la "$lan_mac")
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
;;
|
|
|
|
dir-645)
|
|
lan_mac=$(mtd_get_mac_ascii nvram lanmac)
|
|
wan_mac=$(mtd_get_mac_ascii nvram wanmac)
|
|
;;
|
|
|
|
esr-9753 | \
|
|
ur-326n4g | \
|
|
ur-336un)
|
|
lan_mac=$(mtd_get_mac_binary devdata 16388)
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
;;
|
|
|
|
nbg-419n | \
|
|
wcr-150gn)
|
|
lan_mac=$(mtd_get_mac_binary factory 4)
|
|
wan_mac=$(mtd_get_mac_binary factory 40)
|
|
;;
|
|
|
|
omni-emb-hpm)
|
|
lan_mac=$(mtd_get_mac_binary factory 40)
|
|
;;
|
|
|
|
f5d8235-v2)
|
|
lan_mac=$(mtd_get_mac_binary "u-boot" 262148)
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
;;
|
|
|
|
rt-n56u)
|
|
lan_mac=$(mtd_get_mac_binary factory 4)
|
|
wan_mac=$(mtd_get_mac_binary factory 32772)
|
|
;;
|
|
|
|
tew-691gr)
|
|
lan_mac=$(mtd_get_mac_binary factory 40)
|
|
wan_mac=$(macaddr_add "$lan_mac" 3)
|
|
;;
|
|
|
|
tew-692gr)
|
|
lan_mac=$(mtd_get_mac_binary factory 40)
|
|
wan_mac=$(macaddr_add "$lan_mac" 4)
|
|
;;
|
|
|
|
all0239-3g | \
|
|
carambola | \
|
|
w502u | \
|
|
wnce2001)
|
|
lan_mac=$(mtd_get_mac_binary factory 40)
|
|
wan_mac=$(mtd_get_mac_binary factory 46)
|
|
;;
|
|
|
|
wl341v3)
|
|
lan_mac=$(mtd_get_mac_binary board-nvram 65440)
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
;;
|
|
|
|
d105 | \
|
|
wli-tx4-ag300n)
|
|
lan_mac=$(mtd_get_mac_binary factory 4)
|
|
;;
|
|
|
|
esac
|
|
|
|
[ -n "$lan_mac" ] && ucidef_set_interface_macaddr lan $lan_mac
|
|
[ -n "$wan_mac" ] && ucidef_set_interface_macaddr wan $wan_mac
|
|
}
|
|
|
|
[ -e /etc/config/network ] && exit 0
|
|
|
|
touch /etc/config/network
|
|
|
|
board=$(ramips_board_name)
|
|
|
|
ramips_setup_interfaces $board
|
|
ramips_setup_macs $board
|
|
|
|
uci commit network
|
|
|
|
exit 0
|