Prechádzať zdrojové kódy

ltq-adsl-app: add more script notifications

Backport HANDSHAKE and TRAINING notification from ltq-vdsl-app. It
unifies the dsl led blinking pattern accross all subtargets and allows
to get the current line status from the dsl led.

Signed-off-by: Mathias Kresin <[email protected]>
Mathias Kresin 8 rokov pred
rodič
commit
dacf6db2ee

+ 1 - 1
package/network/config/ltq-adsl-app/Makefile

@@ -10,7 +10,7 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=dsl_cpe_control_danube
 PKG_VERSION:=3.24.4.4
-PKG_RELEASE:=4
+PKG_RELEASE:=5
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_BUILD_DIR:=$(BUILD_DIR)/dsl_cpe_control-$(PKG_VERSION)
 PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources/

+ 42 - 0
package/network/config/ltq-adsl-app/patches/100-add-more-script-notifications.patch

@@ -0,0 +1,42 @@
+From 9d4f86ba2cf10304303011f4f5628fa68dc77624 Mon Sep 17 00:00:00 2001
+From: Mathias Kresin <[email protected]>
+Date: Mon, 16 Oct 2017 21:08:26 +0200
+Subject: ltq-adsl-app: add more script notifications
+
+Backport HANDSHAKE and TRAINING notification from ltq-vdsl-app. It
+unifies the dsl led blinking pattern accross all subtargets and allows
+to get the current line status from the dsl led.
+
+Signed-off-by: Mathias Kresin <[email protected]>
+---
+ .../100-add-more-script-notifications.patch        | 27 ++++++++++++++++++++++
+ 1 file changed, 27 insertions(+)
+ create mode 100644 package/network/config/ltq-adsl-app/patches/100-add-more-script-notifications.patch
+
+--- a/src/dsl_cpe_control.c
++++ b/src/dsl_cpe_control.c
+@@ -3273,7 +3273,23 @@ DSL_CPE_STATIC DSL_int_t DSL_CPE_Event_S
+ #ifdef INCLUDE_SCRIPT_NOTIFICATION
+    if (g_sRcScript != DSL_NULL)
+    {
+-      if ( (nLineState == DSL_LINESTATE_SHOWTIME_TC_SYNC) &&
++      if ( (nLineState == DSL_LINESTATE_HANDSHAKE) &&
++                (g_nPrevLineState[nDevice] != DSL_LINESTATE_HANDSHAKE) )
++      {
++         if (DSL_CPE_SetEnv("DSL_INTERFACE_STATUS", "HANDSHAKE") == DSL_SUCCESS)
++         {
++            bExec = DSL_TRUE;
++         }
++      }
++      else if ( (nLineState == DSL_LINESTATE_FULL_INIT) &&
++                (g_nPrevLineState[nDevice] != DSL_LINESTATE_FULL_INIT) )
++      {
++         if (DSL_CPE_SetEnv("DSL_INTERFACE_STATUS", "TRAINING") == DSL_SUCCESS)
++         {
++            bExec = DSL_TRUE;
++         }
++      }
++      else if ( (nLineState == DSL_LINESTATE_SHOWTIME_TC_SYNC) &&
+            (g_nPrevLineState[nDevice] != DSL_LINESTATE_SHOWTIME_TC_SYNC) )
+       {
+          if (DSL_CPE_SetEnv("DSL_INTERFACE_STATUS", "UP") == DSL_SUCCESS)