| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250 |
- #!/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=""
- 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 | \
- awm002-evb | \
- broadway | \
- dcs-930| \
- wnce2001)
- ucidef_add_switch "switch0" "1" "0"
- ucidef_set_interface_lan "eth0"
- ;;
- 3g-6200nl | \
- wl-330n | \
- wmr300)
- ucidef_set_interface_lan "eth0.1"
- ;;
- 3g-6200n | \
- b2c | \
- nw718 | \
- psr-680w | \
- sl-r7205 | \
- w502u | \
- wr6202)
- ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
- ;;
- br-6475nd)
- 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 9t"
- ucidef_add_switch_vlan "switch0" "2" "0 9t"
- ;;
- 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-610-a1 | \
- dir-300-b7 | \
- dir-320-b1 | \
- dir-615-h1 | \
- hlk-rm04 | \
- 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"
- ;;
- argus-atp52b | \
- dir-645 | \
- f5d8235-v1 | \
- f5d8235-v2 | \
- hg255d | \
- rt-n14u | \
- 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"
- ;;
- wcr-150gn)
- ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
- ucidef_add_switch "switch0" "1" "1"
- ucidef_add_switch_vlan "switch0" "1" "0 6t"
- ucidef_add_switch_vlan "switch0" "2" "6t"
- ;;
- d105 | \
- na930 | \
- 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.1" "eth0.2"
- fi
- ;;
- esac
- }
- ramips_setup_macs()
- {
- local board="$1"
- local lan_mac=""
- local wan_mac=""
- case $board in
- *)
- wan_mac=$(macaddr_add "$lan_mac" 1)
- ;;
- br-6475nd)
- lan_mac=$(mtd_get_mac_binary devdata 13)
- wan_mac=$(mtd_get_mac_binary devdata 7)
- ;;
- w306r-v20)
- wan_mac=$(macaddr_add "$lan_mac" 5)
- ;;
- tew-691gr)
- wan_mac=$(macaddr_add "$lan_mac" 3)
- ;;
- tew-692gr)
- wan_mac=$(macaddr_add "$lan_mac" 4)
- ;;
- m3 |\
- m4 |\
- x5 |\
- x8)
- lan_mac=$(macaddr_add "$lan_mac" -1)
- ;;
- dir-620-a1)
- 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)
- ;;
- nbg-419n | \
- wcr-150gn)
- wan_mac=$(mtd_get_mac_binary factory 40)
- ;;
- rt-n56u)
- wan_mac=$(mtd_get_mac_binary factory 32772)
- ;;
- all0239-3g | \
- carambola | \
- freestation5 | \
- w502u | \
- wnce2001)
- 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)
- ;;
- 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
|