+++ /dev/null
-#
-# Copyright (C) 2011-2012 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:=dsl_cpe_control_danube
-PKG_VERSION:=3.24.4.4
-PKG_RELEASE:=2
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_BUILD_DIR:=$(BUILD_DIR)/dsl_cpe_control-$(PKG_VERSION)
-PKG_SOURCE_URL:=http://mirror2.librecmc.org/sources/
-PKG_MD5SUM:=ee315306626b68794d3d3636dabfe161
-PKG_MAINTAINER:=John Crispin <blogic@openwrt.org>
-PKG_LICENSE:=BSD-3-Clause
-
-PKG_FIXUP:=autoreconf
-
-PKG_CONFIG_DEPENDS:=\
- CONFIG_LTQ_DSL_ENABLE_SOAP \
- CONFIG_LTQ_DSL_ENABLE_DSL_EVENT_POLLING
-
-PKG_BUILD_DEPENDS:=TARGET_lantiq_xway:kmod-ltq-adsl-danube TARGET_lantiq_ase:kmod-ltq-adsl-ase
-
-include $(INCLUDE_DIR)/package.mk
-
-define Package/ltq-adsl-app
- SECTION:=net
- CATEGORY:=Network
- TITLE:=Lantiq DSL userland tool
- URL:=http://www.lantiq.com/
- DEPENDS:=@(TARGET_lantiq_xway||TARGET_lantiq_ase) +libpthread
- MENU:=1
-endef
-
-define Package/ltq-adsl-app/description
- Infineon DSL CPE API for Amazon SE, Danube and Vinax.
-endef
-
-LTQ_DSL_MAX_DEVICE=1
-LTQ_DSL_LINES_PER_DEVICE=1
-LTQ_DSL_CHANNELS_PER_LINE=1
-
-CONFIGURE_ARGS += \
- --with-max-device="$(LTQ_DSL_MAX_DEVICE)" \
- --with-lines-per-device="$(LTQ_DSL_LINES_PER_DEVICE)" \
- --with-channels-per-line="$(LTQ_DSL_CHANNELS_PER_LINE)" \
- --enable-danube \
- --enable-driver-include="-I$(STAGING_DIR)/usr/include/adsl/" \
- --enable-debug-prints \
- --enable-add-appl-cflags="-DMAX_CLI_PIPES=2" \
- --enable-cli-support \
- --enable-cmv-scripts \
- --enable-debug-tool-interface \
- --enable-adsl-led \
- --enable-dsl-ceoc \
- --enable-script-notification \
- --enable-dsl-pm \
- --enable-dsl-pm-total \
- --enable-dsl-pm-history \
- --enable-dsl-pm-showtime \
- --enable-dsl-pm-channel-counters \
- --enable-dsl-pm-datapath-counters \
- --enable-dsl-pm-line-counters \
- --enable-dsl-pm-channel-thresholds \
- --enable-dsl-pm-datapath-thresholds \
- --enable-dsl-pm-line-thresholds \
- --enable-dsl-pm-optional-parameters
-
-TARGET_CFLAGS += -I$(LINUX_DIR)/include
-
-define Package/ltq-adsl-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
-endef
-
-$(eval $(call BuildPackage,ltq-adsl-app))
+++ /dev/null
-#!/bin/sh /etc/rc.common
-# Copyright (C) 2012 OpenWrt.org
-
-START=99
-
-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
-
-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=05_01_04_00_4C_01_04_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_0C_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
-annex_j=10_00_10_40_00_04_01_00
-
-start() {
- local annex
- local firmware
- local xtu
- config_load network
- config_get annex dsl annex
- config_get firmware dsl firmware
-
- eval "xtu=\"\${annex_$annex}\""
-
- [ -z "${firmware}" ] &&
- firmware=/lib/firmware/adsl.bin
- [ -f "${firmware}" ] || {
- echo failed to find $firmware
- return 1
- }
-
- esi $(printf '%012X' $((1+0x$(tr -d : </sys/class/net/eth0/address))))
-
- service_start /sbin/dsl_cpe_control -i${xtu} \
- -n /sbin/dsl_notify.sh \
- -f ${firmware}
-}
-
-stop() {
- DSL_NOTIFICATION_TYPE="DSL_INTERFACE_STATUS" \
- DSL_INTERFACE_STATUS="DOWN" \
- /sbin/dsl_notify.sh
-
- service_stop /sbin/dsl_cpe_control
-}
-
+++ /dev/null
---- a/configure.in
-+++ b/configure.in
-@@ -29,6 +29,8 @@ AC_C_VOLATILE
- #AC_FUNC_STRTOD
- #AC_CHECK_FUNCS([ftime gethostbyname gettimeofday localtime_r memset select socket strchr strerror strstr strtoull])
-
-+AC_SEARCH_LIBS([clock_gettime],[rt])
-+
- #
- # save the configure arguments
- #
---- a/src/dsl_cpe_linux.h
-+++ b/src/dsl_cpe_linux.h
-@@ -45,7 +45,8 @@
- #include <arpa/inet.h>
- #include <sys/socket.h> /* socket */
- #include <sys/sem.h> /* semget */
--#include <semaphore.h> /* sem_t */
-+#include <semaphore.h> /* sem_t */
-+#include <limits.h>
-
- #ifdef DSL_DEBUG_TOOL_INTERFACE
- #include <sys/socket.h>
+++ /dev/null
-# Copyright (C) 2010 OpenWrt.org
-# Copyright (C) 2015 Lantiq Beteiligungs GmbH & Co KG.
-#
-# 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.6.3
-PKG_RELEASE:=2
-PKG_BASE_NAME:=dsl_cpe_control
-PKG_SOURCE:=$(PKG_BASE_NAME)_vrx-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=http://mirror2.librecmc.org/sources
-PKG_MD5SUM:=8bedf330a456fe0864844e61b57da627
-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 +atm-esi
-endef
-
-define Package/ltq-vdsl-app/description
- Userland tool needed to control Lantiq VDSL CPE
-endef
-
-CONFIGURE_ARGS += \
- --enable-vrx \
- --enable-vrx-device=vr9 \
- --enable-driver-include="-I$(STAGING_DIR)/usr/include/drv_vdsl_cpe_api" \
- --enable-device-driver-include="-I$(STAGING_DIR)/usr/include/vdsl/" \
- --enable-ifxos \
- --enable-ifxos-include="-I$(STAGING_DIR)/usr/include/ifxos" \
- --enable-ifxos-library="-I$(STAGING_DIR)/usr/lib" \
- --enable-add-appl-cflags="-DMAX_CLI_PIPES=1" \
- --enable-debug \
- --disable-dti \
- --with-channels-per-line="1" \
-
-#CONFIGURE_ARGS += --enable-model=full
-#CONFIGURE_ARGS += --enable-model=lite
-#CONFIGURE_ARGS += --enable-model=footprint
-CONFIGURE_ARGS += \
- --enable-model=typical \
- --enable-dsl-pm-showtime \
- --disable-dsl-ceoc
-#CONFIGURE_ARGS += --enable-model=debug
-
-define Package/ltq-vdsl-app/install
- $(INSTALL_DIR) $(1)/etc/init.d $(1)/sbin
- $(INSTALL_BIN) ./files/dsl_control $(1)/etc/init.d/
- $(INSTALL_BIN) ./files/vdsl_cpe_control_wrapper $(1)/sbin/
-
- $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/dsl_cpe_control $(1)/sbin/vdsl_cpe_control
- $(INSTALL_BIN) ./files/dsl_cpe_pipe.sh $(1)/sbin/
-endef
-
-$(eval $(call BuildPackage,ltq-vdsl-app))
+++ /dev/null
-#!/bin/sh /etc/rc.common
-# Copyright (C) 2012 OpenWrt.org
-
-# needs to start before the atm layer which starts at 50
-START=48
-USE_PROCD=1
-
-EXTRA_COMMANDS="status lucistat"
-EXTRA_HELP=" status Get DSL status information
- lucistat Get status information if lua friendly format"
-
-[ -f /lib/functions/lantiq_dsl.sh ] && . /lib/functions/lantiq_dsl.sh
-
-#
-# ITU-T G.997.1 (06/2012) - Section 7.3.1.1.1 (xTU transmission system enabling (XTSE))
-# ITU-T G.997.1 Amendment 2 (04/2013) - Section 2.1 - (Vectoring mode enable (VECTORMODE_ENABLE))
-#
-# G.992.1 Annex A
-# G.992.2 Annex A
-# G.992.3 Annex A / L-US1 / L_US-2 / M
-# G.992.5 Annex A / M
-# G.993.2 Annex A/B/C
-# G.993.5 Annex A/B/C
-xtse_xdsl_a="05_01_04_00_4C_01_04_07"
-
-# G.992.1 Annex B
-# G.992.3 Annex B
-# G.992.5 Annex B
-# G.993.2 Annex A/B/C
-# G.993.5 Annex A/B/C
-xtse_xdsl_b="10_00_10_00_00_04_00_07"
-
-# 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
-# G.993.5 Annex A/B/C
-xtse_xdsl_j="10_00_10_40_00_04_01_07"
-
-# G.992.1 Annex B
-xtse_xdsl_bdmt="10_00_00_00_00_00_00_00"
-
-# G.992.3 Annex B
-xtse_xdsl_b2="00_00_10_00_00_00_00_00"
-
-# G.992.5 Annex B
-xtse_xdsl_b2p="00_00_00_00_00_04_00_00"
-
-# ANSI T1.413
-xtse_xdsl_at1="01_00_00_00_00_00_00_00"
-
-# G.992.2 Annex A
-xtse_xdsl_alite="00_01_00_00_00_00_00_00"
-
-# G.992.1 Annex A
-xtse_xdsl_admt="04_00_00_00_00_00_00_00"
-
-# G.992.3 Annex A
-xtse_xdsl_a2="00_00_04_00_00_00_00_00"
-
-# G.992.5 Annex A
-xtse_xdsl_a2p="00_00_00_00_00_01_00_00"
-
-# G.992.3 Annex L
-xtse_xdsl_l="00_00_00_00_0C_00_00_00"
-
-# G.992.3 Annex M
-# G.992.5 Annex M
-xtse_xdsl_m="00_00_00_00_40_00_04_00"
-
-# G.992.3 Annex M
-xtse_xdsl_m2="00_00_00_00_40_00_00_00"
-
-# G.992.5 Annex M
-xtse_xdsl_m2p="00_00_00_00_00_00_04_00"
-
-#
-# ITU-T G.994.1 (06/2012) - Table 2 (Mandatory carrier sets)
-#
-
-# A43
-tone_adsl_a="0x142" # A43C + J43 + A43
-tone_vdsl_a="0x142" # A43C + J43 + A43
-
-# A43 + V43
-tone_adsl_av="0x142" # A43C + J43 + A43
-tone_vdsl_av="0x146" # A43C + J43 + A43 + V43
-
-# B43
-tone_adsl_b="0x81" # B43 + B43c
-tone_vdsl_b="0x1" # B43
-
-# B43 + V43
-tone_adsl_bv="0x81" # B43 + B43c
-tone_vdsl_bv="0x5" # B43 + V43
-
-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
-}
-
-service_triggers() {
- procd_add_reload_trigger network
-}
-
-start_service() {
- local annex
- local firmware
- local tone
- local tone_adsl
- local tone_vdsl
- local xtse
- local xfer_mode
- local line_mode
- local mode
- local lowlevel
-
- config_load network
- config_get tone dsl tone
- config_get annex dsl annex
- config_get firmware dsl firmware
- config_get xfer_mode dsl xfer_mode
- config_get line_mode dsl line_mode
-
- eval "xtse=\"\${xtse_xdsl_$annex}\""
-
- [ -z "${xfer_mode}" ] && xfer_mode=ptm
-
- case "${xfer_mode}" in
- atm)
- LOAD=ltq_atm_vr9
- UNLOAD=ltq_ptm_vr9
-
- # in most cases atm is used on top of adsl
- [ -z "${line_mode}" ] && line_mode=adsl
- ;;
- *)
- LOAD=ltq_ptm_vr9
- UNLOAD=ltq_atm_vr9
-
- # in most cases ptm is used on top of vdsl
- [ -z "${line_mode}" ] && line_mode=vdsl
- ;;
- esac
-
- case "${line_mode}" in
- adsl)
- mode=1
-
- # mask out VDSL bits when ATM is requested
- xtse="${xtse%_*}_00"
- ;;
- *)
- mode=2
- ;;
- esac
-
- if [ -z "${firmware}" ]; then
- # search for the firmware provided by dsl-vrx200-firmware-xdsl-*
- if grep -qE "system type.*: (VR9|xRX200)" /proc/cpuinfo; then
- case "${annex}" in
- a*|l*|m*)
- if [ -f "/lib/firmware/lantiq-vrx200-a.bin" ]; then
- firmware="/lib/firmware/lantiq-vrx200-a.bin"
- elif [ -f "/tmp/lantiq-vrx200-a.bin" ]; then
- firmware="/tmp/lantiq-vrx200-a.bin"
- elif [ -f "/lib/firmware/lantiq-vrx200-b.bin" ] && [ -f "/lib/firmware/lantiq-vrx200-b-to-a.bspatch" ]; then
- bspatch /lib/firmware/lantiq-vrx200-b.bin \
- /tmp/lantiq-vrx200-a.bin \
- /lib/firmware/lantiq-vrx200-b-to-a.bspatch
- firmware="/tmp/lantiq-vrx200-a.bin"
- else
- echo "firmware for annex a not found"
- return 1
- fi
- ;;
- b*|j*)
- if [ -f "/lib/firmware/lantiq-vrx200-b.bin" ]; then
- firmware="/lib/firmware/lantiq-vrx200-b.bin"
- elif [ -f "/tmp/lantiq-vrx200-b.bin" ]; then
- firmware="/tmp/lantiq-vrx200-b.bin"
- elif [ -f "/lib/firmware/lantiq-vrx200-a.bin" ] && [ -f "/lib/firmware/lantiq-vrx200-a-to-b.bspatch" ]; then
- bspatch /lib/firmware/lantiq-vrx200-a.bin \
- /tmp/lantiq-vrx200-b.bin \
- /lib/firmware/lantiq-vrx200-a-to-b.bspatch
- firmware="/tmp/lantiq-vrx200-b.bin"
- else
- echo "firmware for annex b not found"
- return 1
- fi
- ;;
- *)
- echo "annex type not supported use a or b"
- return 1
- ;;
- esac
- fi
- fi
-
- [ -z "${firmware}" ] && firmware=/lib/firmware/vdsl.bin
- [ -f "${firmware}" ] || {
- echo failed to find $firmware
- return 1
- }
-
- eval "tone_adsl=\"\${tone_adsl_$tone}\""
- eval "tone_vdsl=\"\${tone_vdsl_$tone}\""
- [ -n "${tone_adsl}" ] && [ -n "${tone_vdsl}" ] && {
- lowlevel_cfg "${tone_adsl}" "${tone_vdsl}"
- lowlevel="-l /tmp/lowlevel.cfg"
- }
-
- procd_open_instance
- procd_set_param command /sbin/vdsl_cpe_control_wrapper \
- -i$xtse \
- -n /sbin/dsl_notify.sh \
- -f ${firmware} \
- $lowlevel \
- -M ${mode}
- procd_append_param env "LOAD=$LOAD" "UNLOAD=$UNLOAD"
- procd_close_instance
-}
-
-stop_service() {
- # do not use dsl_cmd to not block when this is locked up by some other proess
- echo quit > /tmp/pipe/dsl_cpe0_cmd
- DSL_NOTIFICATION_TYPE="DSL_INTERFACE_STATUS" \
- DSL_INTERFACE_STATUS="DOWN" \
- /sbin/dsl_notify.sh
-}
+++ /dev/null
-#!/bin/sh
-
-pipe_no=0
-
-# use specified pipe no
-case "$1" in
-0|1|2)
-pipe_no=$1; shift; ;;
-esac
-
-
-#echo "Call dsl_pipe with $*"
-lock /var/lock/dsl_pipe
-echo $* > /tmp/pipe/dsl_cpe${pipe_no}_cmd
-result=`cat /tmp/pipe/dsl_cpe${pipe_no}_ack`
-lock -u /var/lock/dsl_pipe
-
-echo "$result"
+++ /dev/null
-#!/bin/sh
-
-for mod in $UNLOAD; do
- grep -q "$mod " /proc/modules && rmmod "$mod"
-done
-for mod in $LOAD; do
- grep -q "$mod " /proc/modules || insmod "$mod"
-done
-
-esi $(printf '%012X' $((1+0x$(tr -d : </sys/class/net/eth0/address))))
-exec /sbin/vdsl_cpe_control "$@"
+++ /dev/null
---- a/src/dsl_cpe_os.h
-+++ b/src/dsl_cpe_os.h
-@@ -31,15 +31,15 @@
- #ifndef _lint
- #ifdef LINUX
- #include "dsl_cpe_linux.h"
--#elif WIN32
-+#elif defined(WIN32)
- #include "dsl_cpe_win32.h"
--#elif VXWORKS
-+#elif defined(VXWORKS)
- #include "dsl_cpe_vxworks.h"
--#elif ECOS
-+#elif defined(ECOS)
- #include "dsl_cpe_ecos.h"
--#elif RTEMS
-+#elif defined(RTEMS)
- #include "dsl_cpe_rtems.h"
--#elif GENERIC_OS
-+#elif defined(GENERIC_OS)
- #include "dsl_cpe_generic_os.h"
- #else
- #error please define your OS for the CPE Control adaptation
+++ /dev/null
---- 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),
- DSL_CPE_MAC_CFG_SET(DSL_EFM_SPEED_100, DSL_EFM_DUPLEX_FULL, DSL_EFM_FLOWCTRL_ON, DSL_EFM_AUTONEG_OFF, \
---- a/src/dsl_cpe_control.c
-+++ b/src/dsl_cpe_control.c
-@@ -6871,7 +6871,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)*/
+++ /dev/null
---- a/src/dsl_cpe_control.c
-+++ b/src/dsl_cpe_control.c
-@@ -11,6 +11,7 @@
- /*
- Includes
- */
-+#include <limits.h>
- #include "dsl_cpe_control.h"
- #include "dsl_cpe_cli.h"
- #include "dsl_cpe_cli_console.h"
+++ /dev/null
---- a/src/dsl_cpe_init_cfg.c
-+++ b/src/dsl_cpe_init_cfg.c
-@@ -27,7 +27,7 @@ DSL_InitData_t gInitCfgData =
- DSL_CPE_FW2_SET(DSL_NULL, 0x0),
- DSL_CPE_XTU_SET(0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x7),
- DSL_CPE_LINE_INV_NE_SET(DSL_NULL),
-- DSL_CPE_AUTOBOOT_CTRL_SET(DSL_AUTOBOOT_CTRL_STOP),
-+ DSL_CPE_AUTOBOOT_CTRL_SET(DSL_AUTOBOOT_CTRL_START),
- DSL_CPE_AUTOBOOT_CFG_SET(DSL_FALSE, DSL_FALSE, DSL_FALSE),
- DSL_CPE_TEST_MODE_CTRL_SET(DSL_TESTMODE_DISABLE),
- DSL_CPE_LINE_ACTIVATE_CTRL_SET(DSL_G997_INHIBIT_LDSF, DSL_G997_INHIBIT_ACSF, DSL_G997_NORMAL_STARTUP),
--- /dev/null
+#
+# Copyright (C) 2014 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=sqm-scripts
+PKG_SOURCE_VERSION:=39005a11405ca68bb80d42855ff7ea641a9769b9
+PKG_VERSION:=1.0.3
+PKG_RELEASE:=1
+PKG_LICENSE:=GPLv2
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE).tar.xz
+PKG_SOURCE_URL:=git://github.com/tohojo/sqm-scripts.git
+PKG_SOURCE_PROTO:=git
+PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE)
+PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE)
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/sqm-scripts
+ SECTION:=net
+ CATEGORY:=Base system
+ DEPENDS:=+tc +kmod-sched +kmod-ifb iptables +ip \
+ +iptables-mod-ipopt +iptables-mod-conntrack-extra
+ TITLE:=SQM Scripts (QoS)
+ PKGARCH:=all
+ MAINTAINER:=Toke Høiland-Jørgensen <toke@toke.dk>
+endef
+
+define Package/sqm-scripts/description
+ A set of scripts that does simple SQM configuration.
+endef
+
+define Package/sqm-scripts/conffiles
+/etc/config/sqm
+/etc/sqm/sqm.conf
+endef
+
+define Package/sqm-scripts/install
+ make -C $(PKG_BUILD_DIR) DESTDIR=$(1) PLATFORM=openwrt install
+endef
+
+define Package/luci-app-sqm
+ SECTION:=luci
+ CATEGORY:=LuCI
+ TITLE:=SQM Scripts - LuCI interface
+ MAINTAINER:=Toke Høiland-Jørgensen <toke@toke.dk>
+ PKGARCH:=all
+ DEPENDS:= lua luci-base +sqm-scripts
+ SUBMENU:=3. Applications
+endef
+
+define Package/luci-app-sqm/description
+ Control the simple_qos SQM script
+endef
+
+define Package/luci-app-sqm/install
+ make -C $(PKG_BUILD_DIR) DESTDIR=$(1) PLATFORM=openwrt install-luci
+endef
+
+define Package/luci-app-sqm/postinst
+#!/bin/sh
+which uci > /dev/null || exit 0
+uci -q get ucitrack.@sqm[0] > /dev/null || {
+ uci add ucitrack sqm > /dev/null
+ uci set ucitrack.@sqm[0].init=sqm
+ uci add_list ucitrack.@firewall[0].affects=sqm
+ uci commit
+}
+endef
+
+define Package/luci-app-sqm/postrm
+#!/bin/sh
+which uci > /dev/null || exit 0
+uci -q get ucitrack.@sqm[0] > /dev/null && {
+ uci delete ucitrack.@sqm[0]
+ uci del_list ucitrack.@firewall[0].affects=sqm
+ uci commit
+}
+endef
+
+$(eval $(call BuildPackage,sqm-scripts))
+$(eval $(call BuildPackage,luci-app-sqm))