add annex selection support to ltq_dsl package
SVN-Revision: 30518
This commit is contained in:
parent
9a0e17857e
commit
976d3eb854
4 changed files with 60 additions and 7 deletions
|
@ -2,6 +2,8 @@
|
||||||
# Copyright (C) 2008 OpenWrt.org
|
# Copyright (C) 2008 OpenWrt.org
|
||||||
START=99
|
START=99
|
||||||
|
|
||||||
|
. /lib/functions.sh
|
||||||
|
|
||||||
EXTRA_COMMANDS="status lucistat"
|
EXTRA_COMMANDS="status lucistat"
|
||||||
EXTRA_HELP=" status Get DSL status information
|
EXTRA_HELP=" status Get DSL status information
|
||||||
lucistat Get status information if lua friendly format"
|
lucistat Get status information if lua friendly format"
|
||||||
|
@ -255,12 +257,40 @@ lucistat() {
|
||||||
echo "return dsl"
|
echo "return dsl"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
annex_b=10_00_10_00_00_04_00_00
|
||||||
|
annex_bdmt=10_00_00_00_00_00_00_00
|
||||||
|
annex_b2=00_00_10_00_00_00_00_00
|
||||||
|
annex_b2p=00_00_00_00_00_04_00_00
|
||||||
|
annex_a=04_01_04_00_00_01_00_00
|
||||||
|
annex_at1=01_00_00_00_00_00_00_00
|
||||||
|
annex_alite=00_01_00_00_00_00_00_00
|
||||||
|
annex_admt=04_00_00_00_00_00_00_00
|
||||||
|
annex_a2=00_00_04_00_00_00_00_00
|
||||||
|
annex_a2p=00_00_00_00_00_01_00_00
|
||||||
|
annex_l=00_00_00_00_04_00_00_00
|
||||||
|
annex_m=00_00_00_00_40_00_04_00
|
||||||
|
annex_m2=00_00_00_00_40_00_00_00
|
||||||
|
annex_m2p=00_00_00_00_00_00_04_00
|
||||||
|
|
||||||
#
|
#
|
||||||
# Simple start routine
|
# Simple start routine
|
||||||
#
|
#
|
||||||
start() {
|
start() {
|
||||||
|
local annex
|
||||||
|
local xtu
|
||||||
|
config_load network
|
||||||
|
config_get annex atm annex
|
||||||
|
|
||||||
|
# get xtu
|
||||||
|
eval "xtu=\"\${annex_$annex}\""
|
||||||
|
|
||||||
|
# check for invalid annex mode
|
||||||
|
[ -n "${annex}" -a -z "${xtu}" ] &&
|
||||||
|
echo "unknown annex mode $annex"
|
||||||
|
|
||||||
# start CPE dsl daemon in the background
|
# start CPE dsl daemon in the background
|
||||||
service_start /sbin/dsl_cpe_control -i \
|
service_start /sbin/dsl_cpe_control -i${xtu} \
|
||||||
-n /sbin/dsl_notify.sh \
|
-n /sbin/dsl_notify.sh \
|
||||||
-f /lib/firmware/ModemHWE.bin
|
-f /lib/firmware/ModemHWE.bin
|
||||||
}
|
}
|
||||||
|
|
|
@ -160,7 +160,8 @@ endef
|
||||||
|
|
||||||
define Package/kmod-ltq-dsl-firmware-$(BUILD_VARIANT)/install
|
define Package/kmod-ltq-dsl-firmware-$(BUILD_VARIANT)/install
|
||||||
$(INSTALL_DIR) $(1)/lib/firmware/
|
$(INSTALL_DIR) $(1)/lib/firmware/
|
||||||
$(CP) $(PKG_BUILD_DIR)/$(FW_NAME)/ltq-dsl-fw-$(BUILD_VARIANT).bin $(1)/lib/firmware/ModemHWE.bin
|
$(CP) $(PKG_BUILD_DIR)/$(FW_NAME)/ltq-dsl-fw-$(BUILD_VARIANT).bin $(1)/lib/firmware/dsl-fw-$(word 1, $(subst -, ,$(BUILD_VARIANT))).bin
|
||||||
|
ln -s /lib/firmware/dsl-fw-$(word 1, $(subst -, ,$(BUILD_VARIANT))).bin $(1)/lib/firmware/ModemHWE.bin
|
||||||
endef
|
endef
|
||||||
|
|
||||||
$(eval $(call BuildPackage,kmod-ltq-dsl-firmware-a-danube))
|
$(eval $(call BuildPackage,kmod-ltq-dsl-firmware-a-danube))
|
||||||
|
|
|
@ -52,7 +52,6 @@ set_atm_wan() {
|
||||||
local vci=$2
|
local vci=$2
|
||||||
local encaps=$3
|
local encaps=$3
|
||||||
local payload=$4
|
local payload=$4
|
||||||
|
|
||||||
uci batch <<EOF
|
uci batch <<EOF
|
||||||
set network.atm='atm-bridge'
|
set network.atm='atm-bridge'
|
||||||
set network.atm.unit='0'
|
set network.atm.unit='0'
|
||||||
|
@ -60,6 +59,8 @@ set network.atm.vpi='$vpi'
|
||||||
set network.atm.vci='$vci'
|
set network.atm.vci='$vci'
|
||||||
set network.atm.encaps='$encaps'
|
set network.atm.encaps='$encaps'
|
||||||
set network.atm.payload='$payload'
|
set network.atm.payload='$payload'
|
||||||
|
set network.atm.fwannex='$annex'
|
||||||
|
set network.atm.annex='$annex'
|
||||||
set network.wan='interface'
|
set network.wan='interface'
|
||||||
set network.wan.ifname='nas0'
|
set network.wan.ifname='nas0'
|
||||||
set network.wan.proto='pppoe'
|
set network.wan.proto='pppoe'
|
||||||
|
@ -68,6 +69,16 @@ set network.wan.password='bar'
|
||||||
EOF
|
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() {
|
set_interfaces_lan_wan() {
|
||||||
local lan_ifname=$1
|
local lan_ifname=$1
|
||||||
local wan_ifname=$2
|
local wan_ifname=$2
|
||||||
|
@ -109,17 +120,20 @@ touch /etc/config/network
|
||||||
set_interface_loopback
|
set_interface_loopback
|
||||||
set_interface_lan 'eth0'
|
set_interface_lan 'eth0'
|
||||||
|
|
||||||
dsl=$(lantiq_soc_has_adsl)
|
|
||||||
[ -z "$dsl" ] || set_atm_wan '1' '32' 'llc' 'bridged'
|
vpi=1
|
||||||
|
vci=32
|
||||||
|
encaps="llc"
|
||||||
|
payload="bridged"
|
||||||
|
fwannex=$(lantiq_dsl_fwannex)
|
||||||
|
annex="$fwannex"
|
||||||
|
|
||||||
board=$(lantiq_board_name)
|
board=$(lantiq_board_name)
|
||||||
|
|
||||||
case "$board" in
|
case "$board" in
|
||||||
GIGASX76X)
|
GIGASX76X)
|
||||||
set_interface_lan "eth0.1"
|
set_interface_lan "eth0.1"
|
||||||
add_switch "eth0" "1" "1"
|
add_switch "eth0" "1" "1"
|
||||||
add_switch_vlan "eth0" "1" "1 2 3 4 5t"
|
add_switch_vlan "eth0" "1" "1 2 3 4 5t"
|
||||||
set_atm_wan "1" "32" "llc" "bridged"
|
|
||||||
;;
|
;;
|
||||||
|
|
||||||
*)
|
*)
|
||||||
|
@ -128,6 +142,10 @@ GIGASX76X)
|
||||||
;;
|
;;
|
||||||
esac
|
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
|
uci commit network
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
|
|
|
@ -11,3 +11,7 @@ lantiq_soc_name() {
|
||||||
lantiq_board_name() {
|
lantiq_board_name() {
|
||||||
grep ^machine /proc/cpuinfo | sed "s/machine.*: \(.*\)/\1/g" | sed "s/\(.*\) - .*/\1/g"
|
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"
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue