From d63663601de4feb2b7a049c9b0901f10e79496cb Mon Sep 17 00:00:00 2001 From: =?utf8?q?Antti=20Sepp=C3=A4l=C3=A4?= Date: Sat, 10 May 2025 13:54:56 +0300 Subject: [PATCH] qmi: increase SIM power-cycle timeouts MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Some modems and SIM cards take a bit longer to initialize after UIM has been powered off. Waiting too little time can cause the qmi protocol to end up in a loop repeatedly power-cycling the SIM card. Avoid that by a) increasing the time we unconditionally sleep after --uim-power-on b) increasing the time we allow uqmi to wait for response for --uim-get-sim-state Signed-off-by: Antti Seppälä Link: https://github.com/openwrt/openwrt/pull/18772 Signed-off-by: Hauke Mehrtens --- package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh index b08b2251048..a6a3fdaa693 100755 --- a/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh +++ b/package/network/utils/uqmi/files/lib/netifd/proto/qmi.sh @@ -107,7 +107,7 @@ proto_qmi_setup() { # Check if UIM application is stuck in illegal state local uim_state_timeout=0 while true; do - json_load "$(uqmi -s -d "$device" -t 1000 --uim-get-sim-state)" + json_load "$(uqmi -s -d "$device" -t 2000 --uim-get-sim-state)" json_get_var card_application_state card_application_state # SIM card is either completely absent or state is labeled as illegal @@ -122,7 +122,7 @@ proto_qmi_setup() { if [ "$uim_state_timeout" -lt "$timeout" ] || [ "$timeout" = "0" ]; then let uim_state_timeout++ - sleep 1 + sleep 5 continue fi -- 2.47.2