kirkwood: add *plugs to uci-defaults
[openwrt.git] / target / linux / kirkwood / base-files / etc / uci-defaults / 02_network
index 48c1232..9fd6845 100644 (file)
@@ -1,37 +1,74 @@
 #!/bin/sh
 #
-# Copyright (C) 2012 OpenWrt.org
+# Copyright (C) 2012-2014 OpenWrt.org
 #
 
 [ -e /etc/config/network ] && exit 0
 
+touch /etc/config/network
+
 set_lan_dhcp() {
        local ifname=$1
        uci batch <<EOF
 set network.lan='interface'
 set network.lan.ifname='$ifname'
 set network.lan.proto='dhcp'
+set network.lan6='interface'
+set network.lan6.ifname='@lan'
+set network.lan6.proto='dhcpv6'
+set network.lan6.reqprefix='no'
+EOF
+}
+
+add_port_based_vlan() {
+       local device=$1
+       local vlan=$2
+       local ports=$3
+       uci batch <<EOF
+add network switch_vlan
+set network.@switch_vlan[-1].device='$device'
+set network.@switch_vlan[-1].vlan='$vlan'
+set network.@switch_vlan[-1].ports='$ports'
+set network.@switch_vlan[-1].port_based='1'
 EOF
 }
 
 . /lib/functions/uci-defaults.sh
 . /lib/kirkwood.sh
 
-touch /etc/config/network
+board=$(kirkwood_board_name)
 
 ucidef_set_interface_loopback
 
-hardware=$(kirkwood_hardware_name)
-
-case "$hardware" in
-"Seagate FreeAgent DockStar")
+case "$board" in
+"dockstar")
        set_lan_dhcp "eth0"
        ;;
-
-"RaidSonic ICY BOX IB-NAS6210")
+"iconnect")
+       set_lan_dhcp "eth0"
+       ;;
+"ib62x0")
+       set_lan_dhcp "eth0"
+       ;;
+"pogo_e02")
+       set_lan_dhcp "eth0"
+       ;;
+"ea3500")
+       ucidef_set_interfaces_lan_wan "eth0" "eth1"
+       ;;
+"ea4500")
+       ucidef_set_interfaces_lan_wan "eth0" "eth1"
+       ucidef_add_switch "switch0" "1" "0"
+       add_port_based_vlan "switch0" "1" "0 1 2 3 5"
+       add_port_based_vlan "switch0" "2" "4 6"
+       ;;
+"guruplug-server-plus")
+       set_lan_dhcp "eth0" "eth1"
+       ;;
+"sheevaplug" | \
+"sheevaplug-esata")
        set_lan_dhcp "eth0"
        ;;
-
 *)
        ucidef_set_interface_lan "eth0"
        ;;