From 716ca530e1c4515d8683c9d5be3d56b301758b66 Mon Sep 17 00:00:00 2001 From: James <> Date: Wed, 4 Nov 2015 11:49:21 +0000 Subject: trunk-47381 --- package/network/config/ltq-vdsl-app/Makefile | 78 +++++++++++++++++++ .../network/config/ltq-vdsl-app/files/dsl_control | 91 ++++++++++++++++++++++ .../config/ltq-vdsl-app/patches/100-compat.patch | 22 ++++++ .../config/ltq-vdsl-app/patches/101-musl.patch | 10 +++ 4 files changed, 201 insertions(+) create mode 100644 package/network/config/ltq-vdsl-app/Makefile create mode 100644 package/network/config/ltq-vdsl-app/files/dsl_control create mode 100644 package/network/config/ltq-vdsl-app/patches/100-compat.patch create mode 100644 package/network/config/ltq-vdsl-app/patches/101-musl.patch (limited to 'package/network/config/ltq-vdsl-app') diff --git a/package/network/config/ltq-vdsl-app/Makefile b/package/network/config/ltq-vdsl-app/Makefile new file mode 100644 index 0000000..061a966 --- /dev/null +++ b/package/network/config/ltq-vdsl-app/Makefile @@ -0,0 +1,78 @@ +# Copyright (C) 2010 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. + +include $(TOPDIR)/rules.mk +include $(INCLUDE_DIR)/kernel.mk + +PKG_NAME:=ltq-vdsl-app +PKG_VERSION:=4.16.2.4 +PKG_RELEASE:=1 +PKG_BASE_NAME:=dsl_cpe_control_vrx +PKG_SOURCE:=$(PKG_BASE_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://github.com/xdarklight/$(PKG_BASE_NAME)/archive/v$(PKG_VERSION) +PKG_MD5SUM:=487925ef5327ea38c544035b388de8bb +PKG_BUILD_DIR:=$(KERNEL_BUILD_DIR)/$(PKG_BASE_NAME)-$(PKG_VERSION) +PKG_LICENSE:=BSD-2-Clause + +PKG_BUILD_DEPENDS:=kmod-ltq-vdsl-vr9 + +include $(INCLUDE_DIR)/package.mk + +define Package/ltq-vdsl-app + SECTION:=net + CATEGORY:=Network + TITLE:=Lantiq VDSL userland tool + URL:=http://www.lantiq.com/ + DEPENDS:=@TARGET_lantiq_xrx200 +libpthread +librt +endef + +define Package/ltq-vdsl-app/description + Userland tool needed to control Lantiq VDSL CPE +endef + +CONFIGURE_ARGS += \ + --with-max-device="1" \ + --with-lines-per-device="1" \ + --with-channels-per-line="1" \ + --enable-vrx \ + --enable-driver-include="-I$(STAGING_DIR)/usr/include/drv_vdsl_cpe_api" \ + --enable-device-driver-include="-I$(STAGING_DIR)/usr/include/vdsl/" \ + --enable-add-appl-cflags="-DMAX_CLI_PIPES=2" \ + --enable-ifxos \ + --enable-ifxos-include="-I$(STAGING_DIR)/usr/include/ifxos" \ + --enable-ifxos-library="-I$(STAGING_DIR)/usr/lib" \ + --disable-dsl-ceoc \ + --enable-dsl-pm-total \ + --enable-dsl-pm-showtime \ + --enable-dsl-pm-line-counters \ + --enable-dsl-pm-line-failure-counters \ + --enable-dsl-pm-datapath-counters \ + --enable-dsl-pm-datapath-failure-counters \ + --enable-deprecated \ + --disable-soap-support \ + --enable-dsl-bonding=no \ + --enable-debug-prints=err \ + --disable-dti + +ifeq ($(CONFIG_IFX_CLI),y) +CONFIGURE_ARGS += \ + --enable-cli-support +endif + +CONFIGURE_ARGS += --enable-model=full +#CONFIGURE_ARGS += --enable-model=lite +#CONFIGURE_ARGS += --enable-model=footprint +#CONFIGURE_ARGS += --enable-model=typical +#CONFIGURE_ARGS += --enable-model=debug + +define Package/ltq-vdsl-app/install + $(INSTALL_DIR) $(1)/etc/init.d + $(INSTALL_BIN) ./files/dsl_control $(1)/etc/init.d/ + + $(INSTALL_DIR) $(1)/sbin + $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/dsl_cpe_control $(1)/sbin/vdsl_cpe_control +endef + +$(eval $(call BuildPackage,ltq-vdsl-app)) diff --git a/package/network/config/ltq-vdsl-app/files/dsl_control b/package/network/config/ltq-vdsl-app/files/dsl_control new file mode 100644 index 0000000..394e1c0 --- /dev/null +++ b/package/network/config/ltq-vdsl-app/files/dsl_control @@ -0,0 +1,91 @@ +#!/bin/sh /etc/rc.common +# Copyright (C) 2012 OpenWrt.org + +# needs to start before the atm layer which starts at 50 +START=48 + +EXTRA_COMMANDS="status lucistat" +EXTRA_HELP=" status Get DSL status information + lucistat Get status information if lua friendly format" + +SERVICE_DAEMONIZE=1 +SERVICE_WRITE_PID=1 + +[ -f /lib/functions/lantiq_dsl.sh ] && . /lib/functions/lantiq_dsl.sh + +# 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" + +start() { + local annex + local firmware + local xtse + local xtse_adsl + local mode + + config_load network + config_get annex dsl annex + config_get firmware dsl firmware + config_get xfer_mode dsl 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}\"" + if [ "${xtse_adsl}" ]; then + xtse=$xtse_adsl + else + xtse=$xtse_vdsl + fi + + [ -z "${firmware}" ] && firmware=/lib/firmware/vdsl.bin + [ -f "${firmware}" ] || { + echo failed to find $firmware + return 1 + } + + service_start /sbin/vdsl_cpe_control \ + -i `echo $xtse | sed "s/ /_/g"` \ + -n /sbin/dsl_notify.sh \ + -f ${firmware} \ + -M ${mode} +} + +stop() { + DSL_NOTIFICATION_TYPE="DSL_INTERFACE_STATUS" \ + DSL_INTERFACE_STATUS="DOWN" \ + /sbin/dsl_notify.sh + + service_stop /sbin/vdsl_cpe_control +} diff --git a/package/network/config/ltq-vdsl-app/patches/100-compat.patch b/package/network/config/ltq-vdsl-app/patches/100-compat.patch new file mode 100644 index 0000000..eeedc54 --- /dev/null +++ b/package/network/config/ltq-vdsl-app/patches/100-compat.patch @@ -0,0 +1,22 @@ +--- a/src/dsl_cpe_init_cfg.c ++++ b/src/dsl_cpe_init_cfg.c +@@ -38,7 +38,7 @@ DSL_InitData_t gInitCfgData = + DSL_DEV_HS_TONE_GROUP_CLEANED, \ + DSL_DEV_HS_TONE_GROUP_CLEANED, \ + DSL_DEV_HS_TONE_GROUP_CLEANED, \ +- 0x1E116000, 0x37, -1), ++ 0x1E116000, 0x3f, -1), + DSL_CPE_SIC_SET(DSL_TC_ATM, DSL_EMF_TC_CLEANED, DSL_EMF_TC_CLEANED, DSL_SYSTEMIF_MII, \ + DSL_TC_EFM, DSL_EMF_TC_CLEANED, DSL_EMF_TC_CLEANED, DSL_SYSTEMIF_MII), + } +--- a/src/dsl_cpe_control.c ++++ b/src/dsl_cpe_control.c +@@ -6856,7 +6856,7 @@ DSL_int_t dsl_cpe_daemon ( + for (nDevice = 0; nDevice < DSL_CPE_MAX_DSL_ENTITIES; nDevice++) + { + #if defined(INCLUDE_DSL_CPE_API_VRX) +- sprintf (device, "%s/%d", DSL_CPE_DEVICE_NAME, nDevice); ++ sprintf (device, "%s%d", DSL_CPE_DEVICE_NAME, nDevice); + #else + sprintf (device, "%s", DSL_CPE_DEVICE_NAME); + #endif /* defined(INCLUDE_DSL_CPE_API_VRX)*/ diff --git a/package/network/config/ltq-vdsl-app/patches/101-musl.patch b/package/network/config/ltq-vdsl-app/patches/101-musl.patch new file mode 100644 index 0000000..9982426 --- /dev/null +++ b/package/network/config/ltq-vdsl-app/patches/101-musl.patch @@ -0,0 +1,10 @@ +--- a/src/dsl_cpe_control.c ++++ b/src/dsl_cpe_control.c +@@ -12,6 +12,7 @@ + /* + Includes + */ ++#include + #include "dsl_cpe_control.h" + #include "dsl_cpe_cli.h" + #include "dsl_cpe_cli_console.h" -- cgit v1.2.3