summaryrefslogtreecommitdiff
path: root/target/linux/lantiq
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/lantiq')
-rwxr-xr-xtarget/linux/lantiq/base-files/etc/uci-defaults/network28
-rw-r--r--target/linux/lantiq/base-files/lib/lantiq.sh4
2 files changed, 27 insertions, 5 deletions
diff --git a/target/linux/lantiq/base-files/etc/uci-defaults/network b/target/linux/lantiq/base-files/etc/uci-defaults/network
index 3b7fe26..09f6bd7 100755
--- a/target/linux/lantiq/base-files/etc/uci-defaults/network
+++ b/target/linux/lantiq/base-files/etc/uci-defaults/network
@@ -52,7 +52,6 @@ set_atm_wan() {
local vci=$2
local encaps=$3
local payload=$4
-
uci batch <<EOF
set network.atm='atm-bridge'
set network.atm.unit='0'
@@ -60,6 +59,8 @@ set network.atm.vpi='$vpi'
set network.atm.vci='$vci'
set network.atm.encaps='$encaps'
set network.atm.payload='$payload'
+set network.atm.fwannex='$annex'
+set network.atm.annex='$annex'
set network.wan='interface'
set network.wan.ifname='nas0'
set network.wan.proto='pppoe'
@@ -68,6 +69,16 @@ 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
+}
+
set_interfaces_lan_wan() {
local lan_ifname=$1
local wan_ifname=$2
@@ -109,17 +120,20 @@ 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'
-board=$(lantiq_board_name)
+vpi=1
+vci=32
+encaps="llc"
+payload="bridged"
+fwannex=$(lantiq_dsl_fwannex)
+annex="$fwannex"
+board=$(lantiq_board_name)
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"
;;
*)
@@ -128,6 +142,10 @@ GIGASX76X)
;;
esac
+dsl=$(lantiq_soc_has_adsl)
+[ -z "$dsl" ] || set_atm_wan "$vpi" "vci" "$encaps" "$payload" "$annex"
+[ -z "$fwannex" ] || set_adsl "$fwannex" "$annex"
+
uci commit network
exit 0
diff --git a/target/linux/lantiq/base-files/lib/lantiq.sh b/target/linux/lantiq/base-files/lib/lantiq.sh
index 3d36ed0..e4f1471 100644
--- a/target/linux/lantiq/base-files/lib/lantiq.sh
+++ b/target/linux/lantiq/base-files/lib/lantiq.sh
@@ -11,3 +11,7 @@ lantiq_soc_name() {
lantiq_board_name() {
grep ^machine /proc/cpuinfo | sed "s/machine.*: \(.*\)/\1/g" | sed "s/\(.*\) - .*/\1/g"
}
+
+lantiq_dsl_fwannex() {
+ ls /lib/firmware/dsl-fw-*.bin 2> /dev/null | sed "s/.*\([ab]\)\.bin/\1/g"
+}