[openwrt/openwrt] lantiq: ltq-tapi: add customer pulse digit time

LEDE Commits lede-commits at lists.infradead.org
Fri Nov 18 12:09:42 PST 2022


hauke pushed a commit to openwrt/openwrt.git, branch master:
https://git.openwrt.org/74a5718223b15fb8b51fe96794747d2e53d3a9ae

commit 74a5718223b15fb8b51fe96794747d2e53d3a9ae
Author: Jonas Albrecht <plonkbong100 at protonmail.com>
AuthorDate: Fri May 28 12:28:35 2021 +0200

    lantiq: ltq-tapi: add customer pulse digit time
    
    With this patch you can change the pulse digit time by loading the Lantiq
    FXS driver kernel module called ltq-tapi. This is relevant for old
    rotaryphones that uses pulsedialing.
    
    The default values are:
    30-80ms for the low pulse
    30-80ms for the high pulse
    300ms for minimum Interdigit time
    
    this is OK but on some Phones it can be usefull to customize the values
    If you want to change the values to high and low pulse to 40-90ms and
    minimum interdigit time to 400ms
    
    than change /etc/modules.d/20-ltq-tapi to (without linebrakes):
    drv_tapi min_digit_low=40  min_digit_high=90 max_digit_low=40 \
    max_digit_high=90 min_interdigit=400
    
    Signed-off-by: Jonas Albrecht <plonkbong100 at protonmail.com>
---
 package/kernel/lantiq/ltq-tapi/Makefile            |  2 +-
 .../patches/410-custom_pulsedigit_time.patch       | 52 ++++++++++++++++++++++
 2 files changed, 53 insertions(+), 1 deletion(-)

diff --git a/package/kernel/lantiq/ltq-tapi/Makefile b/package/kernel/lantiq/ltq-tapi/Makefile
index 77728644f6..d44eeae565 100644
--- a/package/kernel/lantiq/ltq-tapi/Makefile
+++ b/package/kernel/lantiq/ltq-tapi/Makefile
@@ -10,7 +10,7 @@ include $(INCLUDE_DIR)/kernel.mk
 
 PKG_NAME:=drv_tapi
 PKG_VERSION:=3.13.0
-PKG_RELEASE:=4
+PKG_RELEASE:=5
 
 PKG_SOURCE:=drv_tapi-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=@OPENWRT
diff --git a/package/kernel/lantiq/ltq-tapi/patches/410-custom_pulsedigit_time.patch b/package/kernel/lantiq/ltq-tapi/patches/410-custom_pulsedigit_time.patch
new file mode 100644
index 0000000000..965b8be960
--- /dev/null
+++ b/package/kernel/lantiq/ltq-tapi/patches/410-custom_pulsedigit_time.patch
@@ -0,0 +1,52 @@
+--- a/src/drv_tapi.h
++++ b/src/drv_tapi.h
+@@ -25,6 +25,7 @@
+ #include <lib_bufferpool.h>
+ #include "drv_tapi_io.h"
+ #include "drv_tapi_event.h"
++#include <linux/module.h>
+ 
+ 
+ /* ============================= */
+--- a/src/drv_tapi_dial.c
++++ b/src/drv_tapi_dial.c
+@@ -20,6 +20,19 @@
+ #include "drv_tapi.h"
+ #include "drv_tapi_errno.h"
+ 
++
++
++static unsigned int min_digit_low = TAPI_MIN_DIGIT_LOW;
++static unsigned int max_digit_low = TAPI_MAX_DIGIT_LOW;
++static unsigned int min_digit_high = TAPI_MIN_DIGIT_HIGH;
++static unsigned int max_digit_high = TAPI_MAX_DIGIT_HIGH;
++static unsigned int min_interdigit = TAPI_MIN_INTERDIGIT;
++module_param(min_digit_low, uint, 0);
++module_param(max_digit_low, uint, 0);
++module_param(min_digit_high, uint, 0);
++module_param(max_digit_high, uint, 0);
++module_param(min_interdigit, uint, 0);
++
+ /*lint -save -esym(749, TAPI_HOOK_STATE_PULSE_H_FLASH_VAL) */
+ /* ============================= */
+ /* Local macros and definitions  */
+@@ -408,14 +421,14 @@ IFX_int32_t IFX_TAPI_Dial_Initialise(TAP
+       }
+    }
+    /* set default values for the validation timers */
+-   pTapiDialData->TapiDigitLowTime.nMinTime      = TAPI_MIN_DIGIT_LOW;
+-   pTapiDialData->TapiDigitLowTime.nMaxTime      = TAPI_MAX_DIGIT_LOW;
+-   pTapiDialData->TapiDigitHighTime.nMinTime     = TAPI_MIN_DIGIT_HIGH;
+-   pTapiDialData->TapiDigitHighTime.nMaxTime     = TAPI_MAX_DIGIT_HIGH;
++   pTapiDialData->TapiDigitLowTime.nMinTime      = min_digit_low;
++   pTapiDialData->TapiDigitLowTime.nMaxTime      = max_digit_low;
++   pTapiDialData->TapiDigitHighTime.nMinTime     = min_digit_high;
++   pTapiDialData->TapiDigitHighTime.nMaxTime     = max_digit_high;
+    pTapiDialData->TapiHookFlashTime.nMinTime     = TAPI_MIN_FLASH;
+    pTapiDialData->TapiHookFlashTime.nMaxTime     = TAPI_MAX_FLASH;
+    pTapiDialData->TapiHookFlashMakeTime.nMinTime = TAPI_MIN_FLASH_MAKE;
+-   pTapiDialData->TapiInterDigitTime.nMinTime    = TAPI_MIN_INTERDIGIT;
++   pTapiDialData->TapiInterDigitTime.nMinTime    = min_interdigit;
+    pTapiDialData->TapiHookOffTime.nMinTime       = TAPI_MIN_OFF_HOOK;
+    pTapiDialData->TapiHookOnTime.nMinTime        = TAPI_MIN_ON_HOOK;
+    /* start hook state FSM in onhook state */




More information about the lede-commits mailing list