Browse Source

ar71xx: switch network and led defaults to board detection framework

Also translate ucidef_add_switch_vlan() to ucidef_add_switch_ports() for better
switch topology mapping and improved default config generation.

Signed-off-by: Jo-Philipp Wich <[email protected]>

SVN-Revision: 47663
Jo-Philipp Wich 10 years ago
parent
commit
963fc89df2

+ 6 - 4
target/linux/ar71xx/base-files/etc/uci-defaults/01_leds → target/linux/ar71xx/base-files/etc/board.d/01_leds

@@ -3,9 +3,11 @@
 # Copyright (C) 2011 OpenWrt.org
 #
 
-. /lib/functions/uci-defaults.sh
+. /lib/functions/uci-defaults-new.sh
 . /lib/ar71xx.sh
 
+board_config_update
+
 board=$(ar71xx_board_name)
 
 case "$board" in
@@ -211,8 +213,8 @@ dlan-pro-500-wp)
 
 dlan-pro-1200-ac)
 	ucidef_set_led_wlan "wlan" "WLAN" "devolo:status:wlan" "phy0radio"
-	ucidef_set_led_trigger_gpio "plcw" "dLAN" "devolo:status:dlan" "17" "0"
-	ucidef_set_led_trigger_gpio "plcr" "dLAN" "devolo:error:dlan" "16" "0"
+	ucidef_set_led_gpio "plcw" "dLAN" "devolo:status:dlan" "17" "0"
+	ucidef_set_led_gpio "plcr" "dLAN" "devolo:error:dlan" "16" "0"
 	;;
 
 gl-ar150)
@@ -667,6 +669,6 @@ zcn-1523h-5)
 	;;
 esac
 
-ucidef_commit_leds
+board_config_flush
 
 exit 0

+ 111 - 98
target/linux/ar71xx/base-files/etc/uci-defaults/02_network → target/linux/ar71xx/base-files/etc/board.d/02_network

@@ -1,19 +1,18 @@
 #!/bin/sh
 #
-# Copyright (C) 2011 OpenWrt.org
+# Copyright (C) 2011-2015 OpenWrt.org
 #
 
-[ -e /etc/config/network ] && exit 0
-
-touch /etc/config/network
-
-. /lib/functions/uci-defaults.sh
+. /lib/functions/uci-defaults-new.sh
 . /lib/ar71xx.sh
 
+board_config_update
+
 ucidef_set_interface_loopback
 
 board=$(ar71xx_board_name)
 
+
 case "$board" in
 all0315n |\
 all0258n |\
@@ -27,30 +26,24 @@ ap132 |\
 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_ports "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"
-	;;
-
-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"
+	ucidef_add_switch_ports "switch0" \
+		"0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "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_ports "switch0" \
+		"0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan" "6@eth1"
 	;;
 
 ap136-020 |\
@@ -59,8 +52,8 @@ 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_ports "switch0" \
+		"0@eth1" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5:wan" "6@eth0"
 	;;
 
 archer-c5 |\
@@ -68,29 +61,30 @@ 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_ports "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_ports "switch0" \
+		"0@eth1" "1:lan" "3:lan"  # XXX: confirm cpu port!
 	ucidef_set_interface_wlan
 	;;
 
 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_ports "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_ports "switch0" \
+		"0@eth0" "4:lan" "5:wan"
 	;;
 
 db120 |\
@@ -101,45 +95,53 @@ 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_ports "switch0" \
+			"0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan" "6:sfp"
+	;;
+	*)
+		ucidef_add_switch_ports "switch0" \
+			"0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
+	;;
 	esac
+
+	ucidef_add_switch "switch1" "1" "1"
+	ucidef_add_switch_ports "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_set_interfaces_lan_wan "eth0" "eth1"
 	ucidef_add_switch "switch0" "1" "1"
-	ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 5t"
+	ucidef_add_switch_ports "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_ports "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_ports "switch0" \
+		"0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
 	;;
 
 nbg6616 |\
 nbg6716)
-	ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
+	ucidef_set_interfaces_lan_wan "eth0" "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_add_switch_ports "switch0" \
+		"0@eth0" "1:lan" "2:lan" "3:lan" "4:lan" \
+		"5:wan" "6@eth1"
 	;;
 
 ap143 |\
@@ -147,26 +149,30 @@ 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_ports "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_ports "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_ports "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_ports "switch0" \
+		"0@eth1" "2:lan:3" "3:lan:2" "4:lan:1"
 	;;
 
 ap136 |\
@@ -176,8 +182,8 @@ 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_ports "switch0" \
+		"0@eth0" "2:lan" "3:lan" "4:lan" "5:lan" "1:wan"
 	;;
 
 rb-951ui-2hnd)
@@ -187,10 +193,11 @@ 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_ports "switch0" \
+		"0@eth0" "1:lan" "2:lan" "3:lan" "4:lan"
 	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_ports "switch1" \
+		"0@eth1" "1:lan" "2:lan" "3:lan" "4:lan" "5:wan"
 	;;
 
 wzr-hp-g300nh2 |\
@@ -198,36 +205,37 @@ 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_ports "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_ports "switch0" \
+		"0:lan" "1:lan" "3@eth1" # XXX: confirm!
 	;;
 
 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_ports "switch0" \
+		"0@eth0" "1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5: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_ports "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_ports "switch0" \
+		"1:lan" "2:lan" "3:lan" "4:lan" "0:wan" "9@eth0"
 	;;
 
 tl-wr841n-v1|\
@@ -252,33 +260,36 @@ wnr612-v2 |\
 wnr1000-v2)
 	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_ports "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_ports "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_ports "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_ports "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_ports "switch0" \
+		"0:lan" "1:lan" "2:lan" "3:lan" "5@eth0"
 	;;
 
 dgl-5500-a1 |\
@@ -286,8 +297,8 @@ 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_ports "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"
 	;;
@@ -296,8 +307,8 @@ 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_ports "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"
 	;;
@@ -312,8 +323,8 @@ 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_ports "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)
@@ -324,8 +335,8 @@ 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_ports "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"
 	;;
@@ -338,7 +349,8 @@ 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_ports "switch0" \
+		"0@eth0" "2:lan" "3:lan" "4:lan"
 	;;
 
 all0305 |\
@@ -413,14 +425,15 @@ wpe72)
 gl-ar300)
 	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_ports "switch0" \
+		"0@eth1" "1:lan" "2:lan" "3:lan" "4:lan"
 	;;
 
 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_ports "switch0" \
+		"0@eth0" "3:lan" "2:wan"
 	;;
 
 wpj531)
@@ -430,8 +443,8 @@ wpj531)
 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_ports "switch0" \
+		"5:lan" "1:wan" "6@eth0"
 	;;
 
 ap121 |\
@@ -469,37 +482,39 @@ 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_ports "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_ports "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_ports "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_ports "switch0" "0@eth0" "2:lan" "3:lan"
 	;;
 
 wndr3700)
-	ucidef_set_interfaces_lan_wan "eth0.1" "eth1"
+	ucidef_set_interfaces_lan_wan "eth0" "eth1"
 	ucidef_add_switch "switch0" "1" "1"
-	ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 5t"
+	ucidef_add_switch_ports "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.
@@ -509,18 +524,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.
 	#
@@ -529,7 +542,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
 	;;
 
 *)
@@ -537,6 +550,6 @@ wndr3700)
 	;;
 esac
 
-uci commit network
+board_config_flush
 
 exit 0