From 76e873a28942a1dd4182ba64483bdfc77b3911b4 Mon Sep 17 00:00:00 2001 From: John Crispin Date: Wed, 9 Apr 2014 16:31:24 +0000 Subject: [PATCH] lantiq: cleanup vdsl driver bringup config interface 'wan' # a, b, j option annex b # a, b, av, bv option tone b # vdsl.bin option firmware # atm, ptm option xfer_mode atm Signed-off-by: John Crispin SVN-Revision: 40437 --- package/kernel/lantiq/ltq-atm/Makefile | 5 +- package/kernel/lantiq/ltq-ptm/Makefile | 1 - .../config/ltq-vdsl-app/files/dsl_control | 170 ++++++++++++++++-- 3 files changed, 161 insertions(+), 15 deletions(-) diff --git a/package/kernel/lantiq/ltq-atm/Makefile b/package/kernel/lantiq/ltq-atm/Makefile index c557ee5b2585..9fe1b40620c6 100644 --- a/package/kernel/lantiq/ltq-atm/Makefile +++ b/package/kernel/lantiq/ltq-atm/Makefile @@ -29,7 +29,10 @@ endef KernelPackage/ltq-atm-danube=$(call KernelPackage/ltq-atm-template,danube,xway) KernelPackage/ltq-atm-ar9=$(call KernelPackage/ltq-atm-template,ar9,xway) KernelPackage/ltq-atm-ase=$(call KernelPackage/ltq-atm-template,ase,ase) -KernelPackage/ltq-atm-vr9=$(call KernelPackage/ltq-atm-template,vr9,xrx200) +define KernelPackage/ltq-atm-vr9 + $(call KernelPackage/ltq-atm-template,vr9,xrx200) + AUTOLOAD:= +endef define Build/Prepare $(INSTALL_DIR) $(PKG_BUILD_DIR) diff --git a/package/kernel/lantiq/ltq-ptm/Makefile b/package/kernel/lantiq/ltq-ptm/Makefile index 22f09cce677e..2792de6fd262 100644 --- a/package/kernel/lantiq/ltq-ptm/Makefile +++ b/package/kernel/lantiq/ltq-ptm/Makefile @@ -24,7 +24,6 @@ define KernelPackage/ltq-ptm-template VARIANT:=$(1) DEPENDS:=@TARGET_lantiq_$(2) FILES:=$(PKG_BUILD_DIR)/ltq_ptm_$(1).ko - AUTOLOAD:=$(call AutoProbe,ltq_ptm_$(1)) endef KernelPackage/ltq-ptm-danube=$(call KernelPackage/ltq-ptm-template,danube,xway) diff --git a/package/network/config/ltq-vdsl-app/files/dsl_control b/package/network/config/ltq-vdsl-app/files/dsl_control index 8f2482385174..2c4c4ffa6937 100644 --- a/package/network/config/ltq-vdsl-app/files/dsl_control +++ b/package/network/config/ltq-vdsl-app/files/dsl_control @@ -1,7 +1,7 @@ #!/bin/sh /etc/rc.common # Copyright (C) 2012 OpenWrt.org -START=99 +#START=99 EXTRA_COMMANDS="status lucistat" EXTRA_HELP=" status Get DSL status information @@ -13,24 +13,168 @@ SERVICE_WRITE_PID=1 . /lib/functions/lantiq_dsl.sh XDSL_CTRL=vdsl_cpe_control +# G.992.1 Annex A +# G.992.2 Annex A +# G.992.3 Annex A +# G.992.4 Annex A +# G.992.5 Annex A +# G.993.2 Annex A/B/C +xtse_adsl_a="04 01 04 01 00 01 00 00" + +# G.992.1 Annex B +# G.992.3 Annex B +# G.992.5 Annex B +# G.993.2 Annex A/B/C +xtse_adsl_b="10 00 10 00 00 04 00 00" + +# G.992.1 Annex B +# G.992.3 Annex B +# G.992.3 Annex J +# G.992.5 Annex B +# G.992.5 Annex J +# G.993.2 Annex A/B/C +xtse_adsl_j="10 00 10 40 00 04 01 00" + +xtse_vdsl="00 00 00 00 00 00 00 07" + +xdsl_scr() { + val=`echo $2 | sed "s/ / 0x/g"` + echo "[WaitForConfiguration]={ +#G997XTUSEC_g997xtusecs 0x$val +} + +[WaitForLinkActivate]={ +} + +[WaitForRestart]={ +} + +[Common]={ +}" > /tmp/$1.scr +} + +# A43 +tone_adsl_a="0x142" +tone_vdsl_a="0x142" + +# A43 + V43 +tone_adsl_av="0x142" +tone_vdsl_av="0x146" + +# B43 +tone_adsl_b="0x1" +tone_vdsl_b="0x1" + +# B43 + V43 +tone_adsl_bv="0x1" +tone_vdsl_bv="0x5" + +lowlevel_cfg() { + echo "# VRX Low Level Configuration File +# +# Parameters must be separated by tabs or spaces. +# Empty lines and comments will be ignored. +# + +# nFilter +# +# NA = -1 +# OFF = 0 +# ISDN = 1 +# POTS = 2 +# POTS_2 = 3 +# POTS_3 = 4 +# +# (dec) + -1 + +# nHsToneGroupMode nHsToneGroup_A nHsToneGroup_V nHsToneGroup_AV +# +# NA = -1 NA = -1 see see +# AUTO = 0 VDSL2_B43 = 0x0001 nHsToneGroup_A nHsToneGroup_A +# MANUAL = 1 VDSL2_A43 = 0x0002 +# VDSL2_V43 = 0x0004 +# VDSL1_V43P = 0x0008 +# VDSL1_V43I = 0x0010 +# ADSL1_C43 = 0x0020 +# ADSL2_J43 = 0x0040 +# ADSL2_B43C = 0x0080 +# ADSL2_A43C = 0x0100 +# +# (dec) (hex) (hex) (hex) + 1 $1 $2 0x0 + +# nBaseAddr nIrqNum +# +# (hex) (dec) + 0x1e116000 63 + +# nUtopiaPhyAdr nUtopiaBusWidth nPosPhyParity +# default(16b) = 0 NA = -1 +# 8-bit = 1 ODD = 0 +# 16-bit = 2 +# +# +# (hex) (dec) (dec) + 0xFF 0 0 + +# bNtrEnable +# +# (dec) + 0" > /tmp/lowlevel.cfg +} + start() { - local firmware xtu - + local annex + local firmware + local tone + local tone_adsl + local tone_vdsl + local xtse_adsl + local mode + config_load network - + config_get tone wan tone + config_get annex wan annex config_get firmware wan firmware - [ -z "${firmware}" ] && - firmware=vdsl.bin + config_get xfer_mode wan xfer_mode + + [ -z "${xfer_mode}" ] && xfer_mode=ptm + + case "${xfer_mode}" in + atm) + insmod ltq_atm_vr9 + mode=1 + ;; + *) + insmod ltq_ptm_vr9 + mode=2 + ;; + esac + + eval "xtse_adsl=\"\${xtse_adsl_$annex}\"" + [ -z "${xtse_adsl}" ] && xtse_adsl=$xtse_adsl_b + + eval "tone_adsl=\"\${tone_adsl_$tone}\"" + [ -z "${tone_adsl}" ] && tone_adsl=$tone_adsl_av + + eval "tone_vdsl=\"\${tone_vdsl_$tone}\"" + [ -z "${tone_vdsl}" ] && tone_vdsl=$tone_vdsl_av + + [ -z "${firmware}" ] && firmware=vdsl.bin - config_get xtu wan xtu - [ -z "${xtu}" ] && - xtu=10_00_10_00_00_04_01_07 + xdsl_scr adsl "${xtse_adsl}" + xdsl_scr vdsl "${xtse_vdsl}" + lowlevel_cfg "${tone_adsl}" "${tone_vdsl}" service_start /sbin/vdsl_cpe_control \ - -i${xtu} \ - -T4_0_1 - -n /sbin/dsl_notify.sh \ - -f /lib/firmware/${firmware} + -i `echo $xtse_adsl | sed "s/ /_/g"` \ + -n /sbin/dsl_notify.sh \ + -f /lib/firmware/${firmware} \ + -a /tmp/adsl.scr \ + -A /tmp/vdsl.scr \ + -l /tmp/lowlevel.cfg \ + -M ${mode} } stop() { -- 2.30.2