[target/linux/lantiq] change /etc/config/network according to actual VLAN config...
[openwrt/svn-archive/archive.git] / target / linux / lantiq / base-files / etc / uci-defaults / network
index 3b7fe266217d71bca9c44d0f95ab2cc714e60f80..8ea079829542955fc344a3e7c184ee560977182f 100755 (executable)
@@ -1,58 +1,15 @@
 #!/bin/sh
 #
-# Copyright (C) 2011 OpenWrt.org
+# Copyright (C) 2011-2012 OpenWrt.org
 #
 
-set_interface_loopback() {
-       uci batch <<EOF
-set network.loopback='interface'
-set network.loopback.ifname='lo'
-set network.loopback.proto='static'
-set network.loopback.ipaddr='127.0.0.1'
-set network.loopback.netmask='255.0.0.0'
-EOF
-}
-
-set_interface_raw() {
-       local cfg=$1
-       local ifname=$2
-
-       uci batch <<EOF
-set network.$cfg='interface'
-set network.$cfg.ifname='$ifname'
-set network.$cfg.proto='none'
-EOF
-}
-
-set_interface_lan() {
-       local ifname=$1
-
-       uci batch <<EOF
-set network.lan='interface'
-set network.lan.ifname='$ifname'
-set network.lan.type='bridge'
-set network.lan.proto='static'
-set network.lan.ipaddr='192.168.1.1'
-set network.lan.netmask='255.255.255.0'
-EOF
-}
-
-set_interface_wan() {
-       local ifname=$1
-
-       uci batch <<EOF
-set network.wan='interface'
-set network.wan.ifname='$ifname'
-set network.wan.proto='dhcp'
-EOF
-}
+[ -e /etc/config/network ] && exit 0
 
 set_atm_wan() {
        local vpi=$1
        local vci=$2
        local encaps=$3
        local payload=$4
-
        uci batch <<EOF
 set network.atm='atm-bridge'
 set network.atm.unit='0'
@@ -68,66 +25,56 @@ set network.wan.password='bar'
 EOF
 }
 
-set_interfaces_lan_wan() {
-       local lan_ifname=$1
-       local wan_ifname=$2
-
-       set_interface_lan "$lan_ifname"
-       set_interface_wan "$wan_ifname"
-}
-
-add_switch() {
-       local name=$1
-       local reset=$2
-       local enable=$3
-       uci batch <<EOF
-add network switch
-set network.@switch[-1].name='$name'
-set network.@switch[-1].reset='$reset'
-set network.@switch[-1].enable_vlan='$enable'
-EOF
-}
-
-add_switch_vlan() {
-       local device=$1
-       local vlan=$2
-       local ports=$3
+set_adsl() {
+       local fwannex=$1
+       local annex=$2
        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.adsl='adsl-device'
+set network.adsl.fwannex='$fwannex'
+set network.adsl.annex='$annex'
 EOF
 }
 
-[ -e /etc/config/network ] && exit 0
-
+. /lib/functions/uci-defaults.sh
 . /lib/lantiq.sh
 
 touch /etc/config/network
 
-set_interface_loopback
-set_interface_lan 'eth0'
-
-dsl=$(lantiq_soc_has_adsl)
-[ -z "$dsl" ] || set_atm_wan '1' '32' 'llc' 'bridged'
+ucidef_set_interface_loopback
+ucidef_set_interface_lan 'eth0'
 
+vpi=1
+vci=32
+encaps="llc"
+payload="bridged"
+fwannex=$(lantiq_dsl_fwannex)
 board=$(lantiq_board_name)
+dsl=$(lantiq_soc_has_adsl)
 
 case "$board" in
-GIGASX76X)
-       set_interface_lan "eth0.1"
-       add_switch "eth0" "1" "1"
-       add_switch_vlan "eth0" "1" "1 2 3 4 5t"
-       set_atm_wan "1" "32" "llc" "bridged"
+# annex B with adm6996
+ARV4520PW|GIGASX76X)
+       ucidef_set_interface_lan "eth0.1"
+       ucidef_add_switch "eth0" "1" "1"
+       ucidef_add_switch_vlan "eth0" "1" "3 2 1 0 5t"
+       set_adsl "b" "b2p"
+       ;;
+
+# annex A with ar8316
+ARV4519PW|ARV7518PW)
+       ucidef_set_interface_lan "eth0.1"
+       ucidef_add_switch "eth0" "1" "1"
+       ucidef_add_switch_vlan "eth0" "1" "0t 2 3 4 5"
+       set_adsl "a" "a2p"
        ;;
 
-*)
-       # custom foo goes here
-       true
+ARV7525PW|ARV4525PW|*)
+       set_adsl "$fwannex" "${fwannex}2p"
        ;;
 esac
 
+[ -z "$dsl" ] || set_atm_wan "$vpi" "$vci" "$encaps" "$payload"
+
 uci commit network
 
 exit 0