ar71xx: add support for jjPlus JWAP230
[openwrt/staging/yousong.git] / target / linux / ar71xx / base-files / etc / board.d / 02_network
index 64f2054b6217ec970b3e823d77a501d5c1279bea..667d2284106db8baa638a0f1fbb2f78eb7ce645a 100755 (executable)
@@ -3,19 +3,19 @@
 # Copyright (C) 2011-2015 OpenWrt.org
 #
 
-. /lib/functions/uci-defaults-new.sh
+. /lib/functions/system.sh
+. /lib/functions/uci-defaults.sh
 . /lib/ar71xx.sh
 
 board_config_update
 
-ucidef_set_interface_loopback
-
 board=$(ar71xx_board_name)
 
 
 case "$board" in
 all0315n |\
 all0258n |\
+dr344 |\
 ja76pf2|\
 rocket-m-ti |\
 ubnt-unifi-outdoor)
@@ -23,73 +23,64 @@ ubnt-unifi-outdoor)
        ;;
 
 ap132 |\
+ap152 |\
 wlr8100)
-       ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0t 2 3 4 5"
-       ucidef_add_switch_vlan "switch0" "2" "0t 1"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
        ;;
 
 esr1750 |\
 epg5000)
-       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"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan"
        ;;
 
-ap136-010)
-       ucidef_set_interfaces_lan_wan "eth0" "eth1"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 4"
-       ucidef_add_switch_vlan "switch0" "2" "5 6"
+cr5000)
+       ucidef_add_switch "switch0" \
+               "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
        ;;
 
+ap136-010 |\
 ap147-010)
        ucidef_set_interfaces_lan_wan "eth0" "eth1"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 4"
-       ucidef_add_switch_vlan "switch0" "2" "5 6"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
        ;;
 
 ap136-020 |\
 ap135-020 |\
+tew-823dru |\
 tl-wr1043nd-v2 |\
 wzr-450hp2)
        ucidef_set_interfaces_lan_wan "eth1" "eth0"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 4"
-       ucidef_add_switch_vlan "switch0" "2" "5 6"
+       ucidef_add_switch "switch0" \
+               "0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
        ;;
 
 archer-c5 |\
 archer-c7 |\
 tl-wdr4900-v2)
        ucidef_set_interfaces_lan_wan "eth1" "eth0"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0 2 3 4 5"
-       ucidef_add_switch_vlan "switch0" "2" "1 6"
+       ucidef_add_switch "switch0" \
+               "0@eth1" "2:lan" "3:lan" "4:lan" "5:lan" "6@eth0" "1:wan"
        ;;
 
 bsb)
        ucidef_set_interfaces_lan_wan "eth1" "eth0"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0 1 3"
+       ucidef_add_switch "switch0" \
+               "0@eth1" "1:lan" "3:lan"  # XXX: confirm cpu port!
        ucidef_set_interface_wlan
        ;;
 
+cpe210|\
 cpe510)
-       ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0t 5"
-       ucidef_add_switch_vlan "switch0" "2" "0t 4"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "5:lan" "4:wan"
        ;;
 
 airgatewaypro)
-       ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0t 4"
-       ucidef_add_switch_vlan "switch0" "2" "0t 5"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "4:lan" "5:wan"
        ;;
 
 db120 |\
@@ -98,74 +89,74 @@ rb-2011uas |\
 rb-2011uias |\
 rb-2011uas-2hnd|\
 rb-2011uias-2hnd)
-       ucidef_set_interfaces_lan_wan "eth0.1 eth1" "eth0.2"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0t 2 3 4 5"
-       ucidef_add_switch_vlan "switch0" "2" "0t 1"
-       ucidef_add_switch "switch1" "1" "1"
-       ucidef_add_switch_vlan "switch1" "1" "0 1 2 3 4 5"
-
        case "$board" in
        rb-2011uas* | rb-2011uias | rb-2011uias-2hnd)
-               ucidef_set_interface_raw "sfp" "eth0.3"
-               ucidef_add_switch_vlan "switch0" "3" "0t 6"
-               ;;
+               ucidef_add_switch "switch0" \
+                       "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan" "6:sfp"
+       ;;
+       *)
+               ucidef_add_switch "switch0" \
+                       "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
+       ;;
        esac
+
+       ucidef_add_switch "switch1" \
+               "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:lan"
        ;;
 
 dir-825-b1|\
 tew-673gru)
-       ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 5t"
+       ucidef_set_interfaces_lan_wan "eth0" "eth1"
+       ucidef_add_switch "switch0" \
+               "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
        ;;
 
 f9k1115v2)
        ucidef_set_interfaces_lan_wan "eth1" "eth0"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "2 3 4 5 6"
-       ucidef_add_switch_vlan "switch0" "2" "0 1"
+       ucidef_add_switch "switch0" \
+               "2:lan" "3:lan" "4:lan" "5:lan" "6@eth1" \
+               "0@eth0" "1:wan"  # XXX: confirm cpu ports!
        ;;
 
 nbg460n_550n_550nh)
        ucidef_set_interfaces_lan_wan "eth0" "eth1"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "0" "0 1 2 3 5"
+       ucidef_add_switch "switch0" \
+               "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
        ;;
 
 nbg6616 |\
 nbg6716)
-       ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0t 1 2 3 4"
-       ucidef_add_switch_vlan "switch0" "2" "5 6"
+       ucidef_set_interfaces_lan_wan "eth0" "eth1"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" \
+               "5:wan" "6@eth1"
        ;;
 
 ap143 |\
 rb-433 |\
 rb-433u)
        ucidef_set_interfaces_lan_wan "eth1" "eth0"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "1 2 5"
+       ucidef_add_switch "switch0" \
+               "1:lan" "2:lan" "5@eth1"
        ;;
 
 rb-435g)
        ucidef_set_interfaces_lan_wan "eth1" "eth0"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0 1 2"
+       ucidef_add_switch "switch0" \
+               "0@eth1" "1:lan" "2:lan" # XXX: confirm!
        ;;
 
 rb-450)
        ucidef_set_interfaces_lan_wan "eth1" "eth0"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 5"
+       ucidef_add_switch "switch0" \
+               "0:lan" "1:lan" "2:lan" "3:lan" "5@eth1"
        ;;
 
 rb-450g |\
 routerstation-pro)
        ucidef_set_interfaces_lan_wan "eth1" "eth0"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 4"
+       ucidef_add_switch "switch0" \
+               "0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
        ;;
 
 ap136 |\
@@ -173,10 +164,8 @@ rb-750gl |\
 rb-751g |\
 rb-951g-2hnd |\
 wzr-hp-g450h)
-       ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0t 2 3 4 5"
-       ucidef_add_switch_vlan "switch0" "2" "0t 1"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
        ;;
 
 rb-951ui-2hnd)
@@ -185,48 +174,44 @@ rb-951ui-2hnd)
 
 rb-493g)
        ucidef_set_interfaces_lan_wan "eth0 eth1.1" "eth1.2"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 4"
-       ucidef_add_switch "switch1" "1" "1"
-       ucidef_add_switch_vlan "switch1" "1" "0t 1 2 3 4"
-       ucidef_add_switch_vlan "switch1" "2" "0t 5"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
+       ucidef_add_switch "switch1" \
+               "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
        ;;
 
 wzr-hp-g300nh2 |\
 pb92 |\
 ap113)
-       ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0t 1 3 4 5"
-       ucidef_add_switch_vlan "switch0" "2" "0t 2"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "1:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "2:wan"
        ;;
 
 el-m150)
        ucidef_set_interfaces_lan_wan "eth1" "eth0"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0 1 3"
+       ucidef_add_switch "switch0" \
+               "0:lan" "1:lan" "3@eth1" # XXX: confirm!
+       ;;
+
+tellstick-znet-lite)
+       ucidef_set_interface_wan "eth0" "dhcp"
+       ucidef_set_interface_raw "wlan" "wlan0" "dhcp"
        ;;
 
 tl-wdr4300|\
 tl-wr1041n-v2)
-       ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0t 2 3 4 5"
-       ucidef_add_switch_vlan "switch0" "2" "0t 1"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "2:lan:1" "3:lan:2" "4:lan:3" "5:lan:4" "1:wan"
        ;;
 
 tl-wr1043nd)
-       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"
+       ucidef_add_switch "switch0" \
+               "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "5@eth0"
        ;;
 
 tl-wr2543n)
-       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"
+       ucidef_add_switch "switch0" \
+               "1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
        ;;
 
 tl-wr841n-v1|\
@@ -236,6 +221,7 @@ tl-wr941nd)
        ;;
 
 dir-615-i1 |\
+omy-g1 |\
 r6100 |\
 smart-300 |\
 tl-mr3420-v2 |\
@@ -248,55 +234,54 @@ wnr2000-v3 |\
 wnr2000-v4 |\
 wnr2200 |\
 wnr612-v2 |\
-wnr1000-v2)
+wnr1000-v2 |\
+wpn824n)
        ucidef_set_interfaces_lan_wan "eth1" "eth0"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 4"
+       ucidef_add_switch "switch0" \
+               "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "4@eth1" # XXX: confirm!
        ;;
 
 uap-pro)
-       ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0t 1"
-       ucidef_add_switch_vlan "switch0" "2" "0t 2"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "1:lan" "2:wan"
        ;;
 
 nanostation-m-xw)
-       ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0t 5"
-       ucidef_add_switch_vlan "switch0" "2" "0t 1"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "5:lan" "1:wan"
        ;;
 
 wrt160nl)
        ucidef_set_interfaces_lan_wan "eth0" "eth1"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 4 5"
+       ucidef_add_switch "switch0" \
+               "0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "4@eth0"
        ;;
 
 wzr-hp-g300nh)
        ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 5t"
+       ucidef_add_switch "switch0" \
+               "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
+       ;;
+
+cr3000)
+       ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
+       ucidef_add_switch "switch0"  \
+               "0@eth0" "1:lan:1" "2:lan:4" "3:lan:3" "4:lan:2"
        ;;
 
 dgl-5500-a1 |\
 dir-825-c1)
        local mac
-       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"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
        mac=$(mtd_get_mac_ascii nvram "wan_mac")
        [ -n "$mac" ] && ucidef_set_interface_macaddr "wan" "$mac"
        ;;
 
 mynet-n750)
        local mac
-       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"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
        mac=$(mtd_get_mac_ascii devdata "wanmac")
        [ -n "$mac" ] && ucidef_set_interface_macaddr "wan" "$mac"
        ;;
@@ -309,10 +294,8 @@ dhp-1565-a1 |\
 dir-835-a1 |\
 wndr3700v4 | \
 wndr4300)
-       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"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
        mac_lan=$(mtd_get_mac_binary caldata 0)
        [ -n "$mac_lan" ] && ucidef_set_interface_macaddr "lan" "$mac_lan"
        mac_wan=$(mtd_get_mac_binary caldata 6)
@@ -321,10 +304,8 @@ wndr4300)
 
 esr900)
        local mac
-       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"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
        mac=$(mtd_get_mac_ascii u-boot-env "wanaddr")
        [ -n "$mac" ] && ucidef_set_interface_macaddr "wan" "$mac"
        ;;
@@ -336,21 +317,27 @@ dlan-pro-500-wp)
 
 dlan-pro-1200-ac)
        ucidef_set_interface_lan "eth0"
-       ucidef_add_switch "switch0" "1" "0"
-       ucidef_add_switch_vlan "switch0" "0" "0 2 3 4"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "2:lan" "3:lan" "4:lan"
+       ucidef_add_switch_attr "switch0" "enable" "false"
        ;;
 
+alfa-ap120c |\
 all0305 |\
 antminer-s1 |\
 antminer-s3 |\
+antrouter-r1 |\
 aw-nr580 |\
 bullet-m |\
+c-55 |\
 cap4200ag |\
 eap300v2 |\
 eap7660d |\
 el-mini |\
 loco-m-xw |\
 mr1750 |\
+mr1750v2 |\
+mr18 |\
 mr600 |\
 mr600v2 |\
 mr900 |\
@@ -380,15 +367,22 @@ tl-wa801nd-v2 |\
 tl-wa901nd |\
 tl-wa901nd-v2 |\
 tl-wa901nd-v3 |\
+tl-wa901nd-v4 |\
 tl-wr703n |\
 tube2h |\
+unifiac-lite |\
 wndap360 |\
 mynet-rext |\
 wp543)
        ucidef_set_interface_lan "eth0"
        ;;
 
-arduino-yun | \
+cap324)
+       ucidef_set_interface_lan "eth0" "dhcp"
+       ;;
+
+arduino-yun |\
+tl-wa801nd-v3 |\
 dir-505-a1)
        ucidef_set_interface_lan "eth1"
        ;;
@@ -396,6 +390,8 @@ dir-505-a1)
 alfa-ap96 |\
 alfa-nx |\
 ap83 |\
+gl-ar150 |\
+gl-domino |\
 gl-inet |\
 jwap003 |\
 pb42 |\
@@ -403,26 +399,47 @@ pb44 |\
 routerstation|\
 tl-wr710n |\
 tl-wr720n-v3|\
-wpe72)
+tl-wr810n |\
+wpe72 |\
+wrtnode2q)
+       ucidef_set_interfaces_lan_wan "eth1" "eth0"
+       ;;
+
+gl-ar300)
        ucidef_set_interfaces_lan_wan "eth1" "eth0"
+       ucidef_add_switch "switch0" \
+               "0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
+       ;;
+
+jwap230)
+       ucidef_set_interfaces_lan_wan "eth0" "eth1"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "1:lan" "5:wan" "6@eth1"
+       ;;
+
+wpj342)
+       ucidef_add_switch "switch0" \
+               "0@eth0" "1:lan" "2:wan"
        ;;
 
 wpj344)
-       ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0t 3"
-       ucidef_add_switch_vlan "switch0" "2" "0t 2"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "3:lan" "2:wan"
+       ;;
+
+unifiac-pro)
+       ucidef_add_switch "switch0" \
+               "0@eth0" "2:lan" "3:wan"
        ;;
 
+dr531 |\
 wpj531)
        ucidef_set_interfaces_lan_wan "eth0" "eth1"
        ;;
 
 wpj558)
-       ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "5 6t"
-       ucidef_add_switch_vlan "switch0" "2" "1 6t"
+       ucidef_add_switch "switch0" \
+               "5:lan" "1:wan" "6@eth0"
        ;;
 
 ap121 |\
@@ -442,8 +459,10 @@ oolite |\
 qihoo-c301 |\
 rb-750 |\
 rb-751 |\
+som9331 |\
 tew-632brp |\
 tew-712br |\
+tew-732br |\
 tl-mr3220 |\
 tl-mr3220-v2 |\
 tl-mr3420 |\
@@ -453,43 +472,40 @@ tl-wr741nd |\
 tl-wr741nd-v4 |\
 tl-wr841n-v7 |\
 tl-wr841n-v9 |\
+tl-wr841n-v11 |\
+tl-wr842n-v3 |\
 whr-g301n |\
 whr-hp-g300n |\
 whr-hp-gn |\
 wzr-hp-ag300h)
        ucidef_set_interfaces_lan_wan "eth0" "eth1"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 4"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1"
        ;;
 
 wzr-hp-g450h)
-       ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0t 2 3 4 5"
-       ucidef_add_switch_vlan "switch0" "2" "0t 1"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "2:lan:1 3:lan:2 4:lan:3 5:lan:4" "1:wan"
        ;;
 
 ew-dorin)
-       ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0t 1 2"
-       ucidef_add_switch_vlan "switch0" "2" "0t 3"
+       ucidef_add_switch "switch0" \
+               "0@eth0" "1:lan" "2:lan" "3:wan"
        ;;
 
 ew-dorin-router)
        ucidef_set_interfaces_lan_wan "eth0" "eth1"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0 2 3"
+       ucidef_add_switch "switch0" "0@eth0" "2:lan" "3:lan"
        ;;
 
 wndr3700)
-       ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
-       ucidef_add_switch "switch0" "1" "1"
-       ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 5t"
+       ucidef_set_interfaces_lan_wan "eth0" "eth1"
+       ucidef_add_switch "switch0" \
+               "0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
+
        # Blinkrate: 0=43ms; 1=84ms; 2=120ms; 3=170ms; 4=340ms; 5=670ms
-       uci set network.@switch[-1].blinkrate='2'
+       ucidef_add_switch_attr "switch0" "blinkrate" 2
 
-       ucidef_add_switch_port "switch0" "1"
        # Port 1 controls the GREEN configuration of LEDs for
        # the switch and the section does not correspond to a real
        # switch port.
@@ -499,18 +515,16 @@ wndr3700)
        # 8=10 Mb/s+activity; 9=10/100 Mb/s+activity; 10: Fiber;
        # 11: Fault; 12: Link/activity(tx); 13: Link/activity(rx);
        # 14: Link (master); 15: separate register
-       uci set network.@switch_port[-1].led='6'
+       ucidef_add_switch_port_attr "switch0" 1 led 6
 
-       ucidef_add_switch_port "switch0" "2"
        # Port 2 controls the ORANGE configuration of LEDs for
        # the switch and the section does not correspond to a real
        # switch port.
        #
        # See the key above for switch port 1 for the meaning of the
        # 'led' setting below.
-       uci set network.@switch_port[-1].led='9'
+       ucidef_add_switch_port_attr "switch0" 2 led 9
 
-       ucidef_add_switch_port "switch0" "5"
        # Port 5 controls the configuration of the WAN LED and the
        # section does not correspond to a real switch port.
        #
@@ -519,7 +533,7 @@ wndr3700)
        #
        # See the key above for switch port 1 for the meaning of the
        # 'led' setting below.
-       uci set network.@switch_port[-1].led='2'
+       ucidef_add_switch_port_attr "switch0" 5 led 2
        ;;
 
 *)