Browse Source

ltq-vdsl-vr9: fix upstream MINEFTR

The upstream value read from the device seems to already be in bits per
second, so there is no need to multiply by 1000 again (which for typical
values causes an overflow of the 32-bit unsigned integer).

Signed-off-by: Jan Hoffmann <[email protected]>
Jan Hoffmann 2 years ago
parent
commit
723963543a

+ 1 - 1
package/kernel/lantiq/ltq-vdsl-vr9/Makefile

@@ -9,7 +9,7 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=ltq-vdsl-vr9
 PKG_VERSION:=4.17.18.6
-PKG_RELEASE:=7
+PKG_RELEASE:=8
 
 PKG_BASE_NAME:=drv_dsl_cpe_api
 PKG_SOURCE:=$(PKG_BASE_NAME)_vrx-$(PKG_VERSION).tar.gz

+ 22 - 0
package/kernel/lantiq/ltq-vdsl-vr9/patches/210-fix-us-eftrmin.patch

@@ -0,0 +1,22 @@
+--- a/src/pm/drv_dsl_cpe_api_pm_vrx.c
++++ b/src/pm/drv_dsl_cpe_api_pm_vrx.c
+@@ -1435,9 +1435,16 @@ DSL_Error_t DSL_DRV_PM_DEV_ReTxCountersG
+       /* ignore zero value*/
+       if (nEftrMin)
+       {
+-         /* Fw Format:  kBit/s */
+-         /* API format: bit/s */
+-         pCounters->nEftrMin = nEftrMin*1000;
++         if (nDirection == DSL_NEAR_END)
++         {
++            /* Fw Format:  kBit/s */
++            /* API format: bit/s */
++            pCounters->nEftrMin = nEftrMin*1000;
++         }
++         else
++         {
++            pCounters->nEftrMin = nEftrMin;
++         }
+       }
+    }
+    else