From 8cf25a97a13278c7cfaa60726ed35eee45c1073e Mon Sep 17 00:00:00 2001 From: Dan Williams Date: Wed, 23 Apr 2025 10:10:57 -0500 Subject: [PATCH] broadband-modem: detect old Mediatek 62xx chipsets as GSM-capable They don't necessarily reply to +WS46 but like old Motorola ESX devices they reply to +CGMM with a known string. Fixes: https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/980 Signed-off-by: Dan Williams --- src/mm-broadband-modem.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/mm-broadband-modem.c b/src/mm-broadband-modem.c index 5e026449..70562774 100644 --- a/src/mm-broadband-modem.c +++ b/src/mm-broadband-modem.c @@ -761,11 +761,14 @@ parse_caps_cgmm (MMBaseModem *self, if (!response) return MM_BASE_MODEM_AT_RESPONSE_PROCESSOR_RESULT_CONTINUE; - /* This check detects some really old Motorola GPRS dongles and phones */ + /* This check detects some really old Motorola and Mediatek GPRS dongles + * and phones. + */ if (strstr (response, "GSM900") || strstr (response, "GSM1800") || strstr (response, "GSM1900") || - strstr (response, "GSM850")) { + strstr (response, "GSM850") || + strstr (response, "MTK2")) { /* At least, it's a GSM modem */ *result = g_variant_new_uint32 (MM_MODEM_CAPABILITY_GSM_UMTS); return MM_BASE_MODEM_AT_RESPONSE_PROCESSOR_RESULT_SUCCESS;