d3fd38637f
Renaming an atm etherbride using 'ip link' (via hotplug) is racy since the original netdev might disappear before br2684ctl has finished appling it's setting: local2.notice br2684ctl[1667]: Interface "nas0" created sucessfully local2.notice br2684ctl[1667]: Communicating over ATM 0.8.35, encapsulation: LLC kern.info kernel: dsl0: renamed from nas0 kern.err kernel: br2684:br2684_regvcc: tried to attach to non-existent device local2.err br2684ctl[1667]: Could not configure interface:No such device or address By passing the final used netdev name to br2684ctl_wrap another race condition workaround will be enabled again. Change the lantiq ptm driver to create a netdev with the name dsl as well. Albeit the rename via 'ip link' works fine so far, using a different approach for ptm then atm could be confusing. Signed-off-by: Mathias Kresin <dev@kresin.me>
248 lines
5.7 KiB
Bash
Executable file
248 lines
5.7 KiB
Bash
Executable file
#!/bin/sh
|
|
#
|
|
# Copyright (C) 2011-2015 OpenWrt.org
|
|
#
|
|
|
|
. /lib/functions/uci-defaults.sh
|
|
. /lib/functions/system.sh
|
|
. /lib/functions/lantiq.sh
|
|
|
|
board_config_update
|
|
|
|
vpi=1
|
|
vci=32
|
|
annex="a"
|
|
tone="av"
|
|
xfer_mode=""
|
|
encaps="llc"
|
|
payload="bridged"
|
|
lan_mac=""
|
|
wan_mac=""
|
|
interface_wan="dsl0"
|
|
|
|
board=$(board_name)
|
|
|
|
case "$board" in
|
|
audiocodes,mp-252)
|
|
ucidef_add_switch "switch0" \
|
|
"1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5t@eth0"
|
|
;;
|
|
|
|
allnet,all0333cj)
|
|
annex="b"
|
|
lan_mac=$(mtd_get_mac_ascii uboot_env ethaddr)
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
ucidef_set_interface_lan 'eth0'
|
|
;;
|
|
|
|
arcadyan,arv4510pw)
|
|
lan_mac=$(mtd_get_mac_ascii uboot_env ethaddr)
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan:4" "2:lan:2" "1:lan:3" "3:lan:1" "5t@eth0"
|
|
;;
|
|
|
|
arcadyan,arv4519pw|arcadyan,arv7510pw22|arcadyan,arv7518pw)
|
|
ucidef_add_switch "switch0" \
|
|
"0t@eth0" "2:lan" "3:lan" "4:lan" "5:lan"
|
|
;;
|
|
|
|
arcadyan,arv4520pw)
|
|
annex="b"
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5t@eth0"
|
|
;;
|
|
|
|
arcadyan,arv4525pw|arcadyan,arv452cqw|arcadyan,arv7525pw|arcadyan,arv752dpw)
|
|
annex="b"
|
|
ucidef_set_interface_lan 'eth0'
|
|
;;
|
|
|
|
arcadyan,arv7506pw11)
|
|
annex="b"
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary board_config 22)" 2)
|
|
ucidef_add_switch "switch0" \
|
|
"1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5t@eth0"
|
|
;;
|
|
|
|
arcadyan,arv7519pw)
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary board_config 22)" 1)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan" "1:lan" "2:lan" "3:lan" "4t@eth0"
|
|
;;
|
|
|
|
arcadyan,arv7519rw22)
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary boardconfig 22)" 1)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan:5" "2:lan:3" "3:lan:4" "4:lan:1" "5:lan:2" "6t@eth0"
|
|
;;
|
|
|
|
arcadyan,arv752dpw22|arcadyan,arv8539pw22)
|
|
annex="b"
|
|
ucidef_add_switch "switch0" \
|
|
"0t@eth0" "2:lan" "3:lan" "4:lan" "5:lan"
|
|
;;
|
|
|
|
alphanetworks,asl56026)
|
|
lan_mac=$(mtd_get_mac_ascii uboot_env ethaddr)
|
|
wan_mac=$(mtd_get_mac_ascii uboot_env wanmac)
|
|
ucidef_add_switch "switch0"\
|
|
"2:lan" "3:lan" "6t@eth0"
|
|
;;
|
|
|
|
bt,homehub-v2b)
|
|
lan_mac=$(mtd_get_mac_ascii uboot_env ethaddr)
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
ucidef_add_switch "switch0" \
|
|
"1:lan" "2:lan" "3:lan" "4:lan" "5t@eth0"
|
|
;;
|
|
|
|
bt,homehub-v3a)
|
|
lan_mac=$(mtd_get_mac_ascii uboot_env ethaddr)
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
ucidef_set_interface_lan 'eth0'
|
|
;;
|
|
|
|
bt,homehub-v5a)
|
|
lan_mac=$(mtd_get_mac_binary_ubi caldata 4364)
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan:3" "1:lan:4" "2:lan:2" "4:lan:1" "5:wan:5" "6t@eth0"
|
|
;;
|
|
|
|
netgear,dgn1000b)
|
|
annex="b"
|
|
ucidef_set_interface_lan 'eth0'
|
|
;;
|
|
|
|
netgear,dgn3500|netgear,dgn3500b)
|
|
lan_mac=$(mtd_get_mac_ascii uboot-env ethaddr)
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5t@eth0"
|
|
;;
|
|
|
|
netgear,dm200)
|
|
lan_mac=$(mtd_get_mac_binary ART 0)
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
ucidef_set_interface_lan 'eth0'
|
|
;;
|
|
|
|
lantiq,easy80920-nand|lantiq,easy80920-nor)
|
|
lan_mac=$(mtd_get_mac_ascii uboot_env ethaddr)
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan:4" "1:lan:3" "2:lan:2" "4:lan:1" "5:wan:5" "6t@eth0"
|
|
;;
|
|
|
|
avm,fritz3370)
|
|
annex="b"
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary urlader 2439)" 1)
|
|
ucidef_set_interface_lan 'eth0'
|
|
;;
|
|
|
|
avm,fritz7320)
|
|
annex="b"
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary urlader 2705)" 1)
|
|
ucidef_set_interface_lan 'eth0'
|
|
;;
|
|
|
|
avm,fritz7360sl)
|
|
annex="b"
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary urlader 2705)" 1)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan:3" "1:lan:4" "2:lan:2" "4:lan:1" "6t@eth0"
|
|
;;
|
|
|
|
siemens,gigaset-sx76x)
|
|
annex="b"
|
|
ucidef_add_switch "switch0" \
|
|
"1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5t@eth0"
|
|
;;
|
|
|
|
zte,h201l)
|
|
annex="b"
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan" "1:lan" "2:lan" "3:lan" "4t@eth0"
|
|
;;
|
|
|
|
zyxel,p-2601hn)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan" "1:lan" "2:lan" "3:lan" "5t@eth0"
|
|
;;
|
|
|
|
zyxel,p-2812hnu-f1|zyxel,p-2812hnu-f3)
|
|
lan_mac=$(mtd_get_mac_ascii uboot-env ethaddr)
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan" "1:lan" "2:lan" "4:lan" "5:wan" "6t@eth0"
|
|
;;
|
|
|
|
tplink,tdw8970|tplink,tdw8980)
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary boardconfig 61696)" 1)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan:2" "2:lan:3" "4:lan:4" "5:lan:1" "6t@eth0"
|
|
;;
|
|
|
|
arcadyan,vg3503j)
|
|
lan_mac=$(mtd_get_mac_ascii uboot-env ethaddr)
|
|
wan_mac=$(macaddr_add "$lan_mac" 1)
|
|
ucidef_add_switch "switch0" \
|
|
"2:lan:1" "4:lan:2" "6t@eth0"
|
|
;;
|
|
|
|
tplink,vr200v)
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary romfile 61696)" 1)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan" "2:lan" "4:lan" "5:lan" "6t@eth0"
|
|
;;
|
|
|
|
arcadyan,vgv7510kw22-nor|arcadyan,vgv7510kw22-brn)
|
|
annex="b"
|
|
wan_mac=$(macaddr_add "$(mtd_get_mac_binary board_config 22)" 2)
|
|
ucidef_add_switch "switch0" \
|
|
"2:lan:2" "3:lan:1" "4:lan:4" "5:lan:3" "0:wan:5" "6t@eth0"
|
|
;;
|
|
|
|
arcadyan,vgv7519-nor|arcadyan,vgv7519-brn)
|
|
wan_mac=$(mtd_get_mac_binary board_config 22)
|
|
ucidef_add_switch "switch0" \
|
|
"0:lan:4" "1:lan:3" "2:lan:2" "4:lan:1" "5:wan:5" "6t@eth0"
|
|
;;
|
|
|
|
buffalo,wbmr-hp-g300h)
|
|
ucidef_add_switch "switch0" \
|
|
"0t@eth0" "2:lan" "3:lan" "4:lan" "5:lan"
|
|
;;
|
|
|
|
buffalo,wbmr-300hpd)
|
|
lan_mac=$(mtd_get_mac_ascii ubootconfig ethaddr)
|
|
wan_mac="$lan_mac"
|
|
ucidef_add_switch "switch0" \
|
|
"5:lan:2" "2:lan:3" "3:lan:4" "4:wan:1" "6t@eth0"
|
|
;;
|
|
|
|
*)
|
|
ucidef_set_interface_lan 'eth0'
|
|
;;
|
|
|
|
esac
|
|
|
|
ls /lib/modules/$(uname -r)/ltq_atm* 1> /dev/null 2>&1 && \
|
|
ucidef_add_atm_bridge "$vpi" "$vci" "$encaps" "$payload" "dsl"
|
|
|
|
if lantiq_is_vdsl_system; then
|
|
ucidef_add_vdsl_modem "$annex" "$tone" "$xfer_mode"
|
|
else
|
|
ucidef_add_adsl_modem "$annex" "/lib/firmware/adsl.bin"
|
|
fi
|
|
|
|
ucidef_set_interface_wan "$interface_wan" "pppoe"
|
|
|
|
[ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" "$lan_mac"
|
|
[ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" "$wan_mac"
|
|
|
|
board_config_flush
|
|
|
|
exit 0
|
|
|