diff options
| -rw-r--r-- | package/ltq-dsl-app/files/dsl_control | 32 | ||||
| -rw-r--r-- | package/ltq-dsl/Makefile | 3 | ||||
| -rwxr-xr-x | target/linux/lantiq/base-files/etc/uci-defaults/network | 28 | ||||
| -rw-r--r-- | target/linux/lantiq/base-files/lib/lantiq.sh | 4 | 
4 files changed, 60 insertions, 7 deletions
| diff --git a/package/ltq-dsl-app/files/dsl_control b/package/ltq-dsl-app/files/dsl_control index df31c39e5..67e82b6d0 100644 --- a/package/ltq-dsl-app/files/dsl_control +++ b/package/ltq-dsl-app/files/dsl_control @@ -2,6 +2,8 @@  # Copyright (C) 2008 OpenWrt.org  START=99 +. /lib/functions.sh +  EXTRA_COMMANDS="status lucistat"  EXTRA_HELP="	status  Get DSL status information  	lucistat  Get status information if lua friendly format" @@ -255,12 +257,40 @@ lucistat() {  	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  #  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 -	service_start /sbin/dsl_cpe_control -i \ +	service_start /sbin/dsl_cpe_control -i${xtu} \  			-n /sbin/dsl_notify.sh \  			-f /lib/firmware/ModemHWE.bin  } diff --git a/package/ltq-dsl/Makefile b/package/ltq-dsl/Makefile index 973967eb6..0e2a9328a 100644 --- a/package/ltq-dsl/Makefile +++ b/package/ltq-dsl/Makefile @@ -160,7 +160,8 @@ endef  define Package/kmod-ltq-dsl-firmware-$(BUILD_VARIANT)/install  	$(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  $(eval $(call BuildPackage,kmod-ltq-dsl-firmware-a-danube)) diff --git a/target/linux/lantiq/base-files/etc/uci-defaults/network b/target/linux/lantiq/base-files/etc/uci-defaults/network index 3b7fe2662..09f6bd7bf 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 3d36ed03f..e4f1471a9 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" +} | 
