#!/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.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'
set network.wan.ipv6='1'
set network.wan6='interface'
set network.wan6.ifname='@wan'
set network.wan6.proto='dhcpv6'
EOF
}

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

touch /etc/config/network

ucidef_set_interface_loopback
ucidef_set_interface_lan 'eth0'

vpi=1
vci=32
encaps="llc"
payload="bridged"

board=$(lantiq_board_id)

case "$board" in
# 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"
	;;

ACMP252|GIGASX76X)
	ucidef_set_interface_lan "eth0.1"
	ucidef_add_switch "eth0" "1" "1"
	ucidef_add_switch_vlan "eth0" "1" "4 3 2 1 5t"
	;;

# ar8316
ARV4519PW|ARV7518PW|ARV752DPW22)
	ucidef_set_interface_lan "eth0.1"
	ucidef_add_switch "switch0" "1" "1"
	ucidef_add_switch_vlan "switch0" "1" "0t 2 3 4 5"
	;;

WBMR)
	ucidef_add_switch "eth0" "1" "0"
	ucidef_add_switch_vlan "eth0" "1" "0 1 2 3 4 5"
	;;

VG3503J)
	ucidef_set_interface_lan 'eth0'
	uci set network.lan.type='none'
	;;

DGN3500*)
	ucidef_set_interface_lan "eth0.1"
	ucidef_add_switch "switch0" "1" "1"
	ucidef_add_switch_vlan "switch0" "1" "3 2 1 0 5t"
	;;

GR7000)
	ucidef_set_interface_wan "eth0"
	uci set network.lan.ifname=''
	;;

H201L)
	ucidef_set_interface_lan "eth0.1"
	ucidef_add_switch "switch0" "1" "1"
	ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 4t"
	;;

P2601HNFX)
	ucidef_set_interface_lan "eth0.1"
	ucidef_add_switch "switch0" "1" "1"
	ucidef_add_switch_vlan "switch0" "1" "1 2 3 4 5t"
	;;
esac

[ -z "$(ls /lib/modules/`uname -r`/ltq_atm*)" ] || set_atm_wan "$vpi" "$vci" "$encaps" "$payload"


uci commit network

exit 0
