lantiq: use ActualNetDataRate for speed reporting
authorJeroen Peelaerts <jeroen.peelaerts@gmail.com>
Tue, 9 Feb 2021 22:33:51 +0000 (23:33 +0100)
committerHauke Mehrtens <hauke@hauke-m.de>
Mon, 19 Apr 2021 21:24:57 +0000 (23:24 +0200)
Switch to Actual Net Data Rate (ACTNDR) for speed reporting on lantiq VDSL modems

Refer to ITU-T G.997.1 chapter 7.5.2.8

Independent whether retransmission is used or not in a given transmit direction:
-   In L0 state, this parameter reports the Net Data Rate (as specified in G.992.3, G.992.5 or G.993.2) at which the bearer channel is operating.
-   In  L2 state, the parameter contains the Net Data Rate (as specified in G.992.3, G.992.5 or G.993.2) in the previous L0 state.

Signed-off-by: Jeroen Peelaerts <jeroen.peelaerts@gmail.com>
Reviewed-by: Andre Heider <a.heider@gmail.com>
(cherry picked from commit 4f27ea7c33447f4b0c8e577509726927916b9625)

package/network/config/ltq-vdsl-app/Makefile
package/network/config/ltq-vdsl-app/src/src/dsl_cpe_ubus.c

index 8b8ffdc7a2e3376dc5437fa7271ee2865f9d050d..88385b9aa589834167ee1ae43478a86a3ae7aeb2 100644 (file)
@@ -9,7 +9,7 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=ltq-vdsl-app
 PKG_VERSION:=4.17.18.6
 
 PKG_NAME:=ltq-vdsl-app
 PKG_VERSION:=4.17.18.6
-PKG_RELEASE:=7
+PKG_RELEASE:=8
 PKG_BASE_NAME:=dsl_cpe_control
 PKG_SOURCE:=$(PKG_BASE_NAME)_vrx-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=@OPENWRT
 PKG_BASE_NAME:=dsl_cpe_control
 PKG_SOURCE:=$(PKG_BASE_NAME)_vrx-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=@OPENWRT
index 52b2be20e16c23969fd048643d3b7d02696bd89d..8eefdfe4d506fc9c5d8da67e065515b8501d3133 100644 (file)
@@ -532,7 +532,12 @@ static void g997_channel_status(int fd, DSL_AccessDir_t direction) {
        IOCTL_DIR(DSL_G997_ChannelStatus_t, DSL_FIO_G997_CHANNEL_STATUS_GET, direction);
 
        m_u32("interleave_delay", out.data.ActualInterleaveDelay * 10);
        IOCTL_DIR(DSL_G997_ChannelStatus_t, DSL_FIO_G997_CHANNEL_STATUS_GET, direction);
 
        m_u32("interleave_delay", out.data.ActualInterleaveDelay * 10);
+#ifndef INCLUDE_DSL_CPE_API_DANUBE
+       // prefer ACTNDR, see comments in drv_dsl_cpe_api_g997.h
+       m_u32("data_rate", out.data.ActualNetDataRate);
+#else
        m_u32("data_rate", out.data.ActualDataRate);
        m_u32("data_rate", out.data.ActualDataRate);
+#endif
 }
 
 static void g997_line_status(int fd, DSL_AccessDir_t direction) {
 }
 
 static void g997_line_status(int fd, DSL_AccessDir_t direction) {