#!/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"
;;