From 08ba3ba8e258d2a6bb0b624fcf0b71bf3c188c5b Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Thu, 20 Jun 2024 12:11:56 +0100 Subject: [PATCH] asterisk-chan-lantiq: apply hook state timing in right order Apply hook state timing parameters starting from the biggest time interval down to the shortest, so the required conditions are always true while applying. Signed-off-by: Daniel Golle (cherry picked from commit a21103a4de55f3835f04c55c8fa0899c26183cc9) --- net/asterisk-chan-lantiq/Makefile | 2 +- ...-configure-hook-state-machine-timing.patch | 34 +++++++++---------- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/net/asterisk-chan-lantiq/Makefile b/net/asterisk-chan-lantiq/Makefile index 20e8378..b742ed5 100644 --- a/net/asterisk-chan-lantiq/Makefile +++ b/net/asterisk-chan-lantiq/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=asterisk-chan-lantiq -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE_URL:=https://github.com/kochstefan/asterisk_channel_lantiq.git PKG_SOURCE_VERSION:=2f029ec8778420538c8151c6aceba0f7b44b07c9 diff --git a/net/asterisk-chan-lantiq/patches/0002-configure-hook-state-machine-timing.patch b/net/asterisk-chan-lantiq/patches/0002-configure-hook-state-machine-timing.patch index 015ab7a..8d4ed3a 100644 --- a/net/asterisk-chan-lantiq/patches/0002-configure-hook-state-machine-timing.patch +++ b/net/asterisk-chan-lantiq/patches/0002-configure-hook-state-machine-timing.patch @@ -1,4 +1,4 @@ -From 90c67696fa6676487bb40f391d6cae037175f418 Mon Sep 17 00:00:00 2001 +From 2a379aa2490218d3f15585a8d77b13a17d9eed6b Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Tue, 18 Jun 2024 19:41:38 +0100 Subject: [PATCH 2/2] configure hook state machine timing @@ -131,20 +131,20 @@ Signed-off-by: Daniel Golle + /* Configure hook state machine timing */ + memset(&line_hook_vt, 0, sizeof(line_hook_vt)); -+ line_hook_vt.nType = IFX_TAPI_LINE_HOOK_VT_DIGITLOW_TIME; -+ line_hook_vt.nMinTime = dev_ctx.digit_low_time_min; -+ line_hook_vt.nMaxTime = dev_ctx.digit_low_time_max; ++ line_hook_vt.nType = IFX_TAPI_LINE_HOOK_VT_HOOKON_TIME; ++ line_hook_vt.nMinTime = dev_ctx.hook_on_time; ++ line_hook_vt.nMaxTime = dev_ctx.hook_on_time; + if (ioctl(dev_ctx.ch_fd[c], IFX_TAPI_LINE_HOOK_VT_SET, &line_hook_vt)) { -+ ast_log(LOG_ERROR, "IFX_TAPI_LINE_HOOK_VT_DIGITLOW_TIME %d failed\n", c); ++ ast_log(LOG_ERROR, "IFX_TAPI_LINE_HOOK_VT_HOOKON_TIME %d failed\n", c); + goto load_error_st; + } + + memset(&line_hook_vt, 0, sizeof(line_hook_vt)); -+ line_hook_vt.nType = IFX_TAPI_LINE_HOOK_VT_DIGITHIGH_TIME; -+ line_hook_vt.nMinTime = dev_ctx.digit_high_time_min; -+ line_hook_vt.nMaxTime = dev_ctx.digit_high_time_max; ++ line_hook_vt.nType = IFX_TAPI_LINE_HOOK_VT_HOOKOFF_TIME; ++ line_hook_vt.nMinTime = dev_ctx.hook_off_time; ++ line_hook_vt.nMaxTime = dev_ctx.hook_off_time; + if (ioctl(dev_ctx.ch_fd[c], IFX_TAPI_LINE_HOOK_VT_SET, &line_hook_vt)) { -+ ast_log(LOG_ERROR, "IFX_TAPI_LINE_HOOK_VT_DIGITHIGH_TIME %d failed\n", c); ++ ast_log(LOG_ERROR, "IFX_TAPI_LINE_HOOK_VT_HOOKOFF_TIME %d failed\n", c); + goto load_error_st; + } + @@ -158,20 +158,20 @@ Signed-off-by: Daniel Golle + } + + memset(&line_hook_vt, 0, sizeof(line_hook_vt)); -+ line_hook_vt.nType = IFX_TAPI_LINE_HOOK_VT_HOOKOFF_TIME; -+ line_hook_vt.nMinTime = dev_ctx.hook_off_time; -+ line_hook_vt.nMaxTime = dev_ctx.hook_off_time; ++ line_hook_vt.nType = IFX_TAPI_LINE_HOOK_VT_DIGITLOW_TIME; ++ line_hook_vt.nMinTime = dev_ctx.digit_low_time_min; ++ line_hook_vt.nMaxTime = dev_ctx.digit_low_time_max; + if (ioctl(dev_ctx.ch_fd[c], IFX_TAPI_LINE_HOOK_VT_SET, &line_hook_vt)) { -+ ast_log(LOG_ERROR, "IFX_TAPI_LINE_HOOK_VT_HOOKOFF_TIME %d failed\n", c); ++ ast_log(LOG_ERROR, "IFX_TAPI_LINE_HOOK_VT_DIGITLOW_TIME %d failed\n", c); + goto load_error_st; + } + + memset(&line_hook_vt, 0, sizeof(line_hook_vt)); -+ line_hook_vt.nType = IFX_TAPI_LINE_HOOK_VT_HOOKON_TIME; -+ line_hook_vt.nMinTime = dev_ctx.hook_on_time; -+ line_hook_vt.nMaxTime = dev_ctx.hook_on_time; ++ line_hook_vt.nType = IFX_TAPI_LINE_HOOK_VT_DIGITHIGH_TIME; ++ line_hook_vt.nMinTime = dev_ctx.digit_high_time_min; ++ line_hook_vt.nMaxTime = dev_ctx.digit_high_time_max; + if (ioctl(dev_ctx.ch_fd[c], IFX_TAPI_LINE_HOOK_VT_SET, &line_hook_vt)) { -+ ast_log(LOG_ERROR, "IFX_TAPI_LINE_HOOK_VT_HOOKON_TIME %d failed\n", c); ++ ast_log(LOG_ERROR, "IFX_TAPI_LINE_HOOK_VT_DIGITHIGH_TIME %d failed\n", c); + goto load_error_st; + } + -- 2.30.2