#!/bin/sh
#
# Copyright (C) 2011-2012 OpenWrt.org
#

[ -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'
set network.atm.vpi='$vpi'
set network.atm.vci='$vci'
set network.atm.encaps='$encaps'
set network.atm.payload='$payload'
set network.wan='interface'
set network.wan.ifname='nas0'
set network.wan.proto='pppoe'
set network.wan.username='foo'
set network.wan.password='bar'
EOF
}

set_adsl() {
	local fwannex=$1
	local annex=$2
	uci batch <<EOF
set network.adsl='adsl-device'
set network.adsl.fwannex='$fwannex'
set network.adsl.annex='$annex'
EOF
}

. /lib/functions/uci-defaults.sh
. /lib/lantiq.sh

touch /etc/config/network

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
# annex B with adm6996
ARV4520PW)
	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"
	;;

GIGASX76X)
	ucidef_set_interface_lan "eth0.1"
	ucidef_add_switch "eth0" "1" "1"
	ucidef_add_switch_vlan "eth0" "1" "4 3 2 1 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"
	;;

ARV7525PW|ARV4525PW|*)
	set_adsl "$fwannex" "${fwannex}2p"
	;;
esac

[ -z "$dsl" ] || set_atm_wan "$vpi" "$vci" "$encaps" "$payload"

uci commit network

exit 0
