Commit Graph
9167 Commits
Author SHA1 Message Date
Dan Williams 89466b583b port-probe: ensure port is open for all plugin AT probes
If multiple plugins are selected for probing a modem with AT probes,
earlier plugins may only request some probes but not all.  When
those probes complete successfully, subsequent plugins won't re-do
the probes that were already completed, but jump to ones that
haven't yet been done.

For example, plugin A may request only AT probes but plugin B
may request AT, AT_PRODUCT, and AT_VENDOR. Plugin B will start
with AT_PRODUCT probes because plugin A already completed the AT
probe.

The code in probe_step() only opened the serial port for the
AT probe, I guess assuming that all AT-type probes would be
done in sequence. But in the above scenario they are not.

Instead, make sure the port is opened for all AT style probes
that have not yet been executed.

Fixes: 7937a89a37 port-probe: rework and consolidate port probe flow for AT/QCDM/QMI/MBIM

Signed-off-by: Dan Williams <dan@ioncontrol.co>
2025-03-09 14:44:23 +00:00
Dan Williams e6a7be2e4c Merge request !1312 from 'fcc-unlock-grep-qi'
fcc-unlock: Case-insensitive grep for for 105b (MBIM) and 14c3 (AT)

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1312
2025-03-09 02:57:05 +00:00
Jongmin Kim e1ab6e6c37 fcc-unlock: Case-insensitive grep for identifying MBIM or AT port
Signed-off-by: Jongmin Kim <jmkim@debian.org>
2025-03-09 09:55:45 +09:00
Jongmin Kim 9bd7bb0392 fcc-unlock: Reduce the port assignment cases
Signed-off-by: Jongmin Kim <jmkim@debian.org>
2025-03-09 09:50:48 +09:00
Dan Williams 0ce457ba71 Merge request !1308 from 'fcc-unlock-quectel'
fcc-unlock: combine Quectel FCC unlock scripts and add support for RM520N

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1308
2025-03-08 16:10:22 +00:00
Jongmin Kim 3d1c16fe81 fcc-unlock: Case-insensitive grep for identifying MBIM port
Signed-off-by: Jongmin Kim <jmkim@debian.org>
2025-03-08 22:02:00 +09:00
Jongmin Kim fbeaffe2fd fcc-unlock: add FCC unlock specs for Quectel RM520N
Add symlinks for new supported Quectel RM520N:

- RM520N (standard)       2c7c:0801
- RM520N (HP shipped)     1eac:1004
- RM520N (Lenovo shipped) 1eac:1007

Signed-off-by: Jongmin Kim <jmkim@debian.org>
2025-03-08 22:01:51 +09:00
Jongmin Kim 13fce479b3 fcc-unlock: combine Quectel FCC unlock scripts for 1eac and 2c7c
Both scripts control MBIM ports and can be merged into a single script.

Signed-off-by: Jongmin Kim <jmkim@debian.org>
2025-03-08 22:01:38 +09:00
Dan Williams 9ab4b7de58 Merge request !1307 from 'scan-cli-timeouts'
broadband-modem,cli: slightly bump 3GPP scan timeout; add some cli dbus timeout slack

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1307
2025-03-06 15:11:00 +00:00
Dan Williams f014f3843e broadband-modem,cli: slightly bump 3GPP scan timeout; add some cli dbus timeout slack
Add some mmcli D-Bus timeout slack, making them slightly higher than the
ModemManager internal timeout, to ensure the cli doesn't time out the
D-Bus call when MM succeeds.

For 3GPP scan, some modems appear to have internal 5 minute timeouts,
so ensure MM doesn't time out right before the modem returns results:

ModemManager[282578]: <dbg> [1741054422.321400] [ttyUSB2/at] --> 'AT+COPS=?<CR>'
ModemManager[282578]: <wrn> [1741054722.247806] [modem1] failed scanning networks: Serial command timed out
ModemManager[282578]: <dbg> [1741054724.119770] [ttyUSB2/at] <-- '<CR><LF>+COPS: (1,"T-Mobile","T-Mobile","310260",0),,(0,1,2,3,4),(0,1,2)<CR><LF><CR><LF>OK<CR><LF>'

Signed-off-by: Dan Williams <dan@ioncontrol.co>
2025-03-06 04:52:50 +00:00
Dan Williams c393a917c1 Merge request !1309 from 'codespell'
Fix some typos on the source code

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1309
2025-03-05 17:00:59 +00:00
Guido Günther 54dcc25d8b treewide: Fix some spelling errors
All in debug messages or code comments so not user / client visible.

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-05 16:53:26 +00:00
Guido Günther db37e063f8 mbim: Fix typo in error message
Signed-off-by: Guido Günther <agx@sigxcpu.org>
2025-03-05 16:53:26 +00:00
Dan Williams ead9951ea6 Merge request !1279 from 'my-branch'
cli: Added bearer path print after successful modem connect

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1279
2025-03-05 16:52:47 +00:00
Anagh G c6c4be9d69 cli: Added bearer path print after successful modem connect
For a ModemManager simple connect using mmcli, added the bearer
path on which call is connected. This helps in determining the
bearer path to directly retrieve bearer information easily
of this particular call.

Signed-off-by: Anagh G <quic_anaghg@quicinc.com>
2025-03-05 16:15:53 +00:00
Dan Williams a9122abec6 Merge request !1306 from 'dco4'
ci: ensure DCO check exits with correct error code on failure

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1306
2025-03-03 17:19:28 +00:00
Dan Williams ad841cc92b ci: ensure DCO check exits with correct error code on failure
Signed-off-by: Dan Williams <dan@ioncontrol.co>
2025-03-03 11:15:54 -06:00
Dan Williams c6fb16a0f5 Merge request !1302 from 'qmi-uemode'
broadband-modem-qmi: implement UE mode get/set

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1302
2025-03-03 17:10:01 +00:00
Robert Marko f72dd493e8 broadband-modem-qmi: implement UE mode get/set
Instead of relying on getting/setting the UE mode via AT +CEMODE command
which on Quectel RM520N (And I assume other QMI based modems) only allows
getting the value and not setting one it has special AT commands for CS/PS
and voice/data centric values.

So lets instead use the QMI Get/Set System Selection Preference TLV which
offers service domain and usage domain preference info so we can use those
to get/set the 3GPP TS 24.301 UE mode values.

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
2025-03-03 10:46:13 +01:00
Dan Williams 2c1c3f72a1 Merge request !1291 from 'main'
api,enums: added NGRAN-67 band

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1291
2025-03-01 15:38:46 +00:00
Slark Xiao 1fb6a53595 api,enums: added NGRAN-67 band
According to 3GPP Rel17.2, TS 38104, band NGRAN-67 is supported.
Currently Qualcomm SDX72 chip support this band and MM would show
a '(null)' info in the "Bands" area.
Band info as below:
n67, 738MHz-758MHz, SDL

Signed-off-by: Slark Xiao <slark_xiao@163.com>
2025-03-01 09:31:54 -06:00
Dan Williams b5ad830fc7 Merge request !1253 from 'persist_current_storage'
messaging: load default storage from modem during initialization

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1253
2025-02-27 15:18:46 +00:00
Akula Susmitha bf5245bb27 messaging: load default storage from modem during initialization
Signed-off-by: Akula Susmitha <quic_asusmith@quicinc.com>
2025-02-27 15:04:59 +00:00
Dan Williams 21da676eed Merge request !1299 from 'dco3'
ci: fix a couple DCO check issues

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1299
2025-02-27 15:04:25 +00:00
Dan Williams 0bf02c88cb ci: fix job image ordering
With the FDO CI templates, the first container used must
be .fdo.container-build@ubuntu which builds the actual
container the rest of the pipeline can use with
.fdo.distribution-image@ubuntu.

.fdo.container-build@ubuntu uses a static 'image:' tag for
its job base image and then pushes to the project registry.
If the first job incorrectly uses .fdo.distribution-image@ubuntu
instead, it appears to fail for MR branches because that target
uses CI_REGISTRY_USER as part of the 'image:' tag which gitlab
sets to the username of the submitter. Which of course fails
because that user has never built the image before...

Using Docker executor with image registry.freedesktop.org/<username>/modemmanager/ubuntu/20.04:2023-01-03.1 ...
Authenticating with credentials from job payload (GitLab Registry)
Pulling docker image registry.freedesktop.org/<username>/modemmanager/ubuntu/20.04:2023-01-03.1 ...

Signed-off-by: Dan Williams <dan@ioncontrol.co>
2025-02-27 08:06:10 -06:00
Dan Williams 2a65ca978d ci: de-verbosify DCO check
Only print out the specific commits that fail DCO.

Signed-off-by: Dan Williams <dan@ioncontrol.co>
2025-02-27 08:06:01 -06:00
Dan Williams 703eee1610 Merge request !1297 from 'sushrut-branch'
iface-modem-firmware: report new ID's based on PCI SSVID/SSPID

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1297
2025-02-25 18:54:23 +00:00
Sushrut Shree Trivedi 9c63f0acb0 iface-modem-firmware: report new ID's based on PCI SSVID/SSPID
Add new device ID based on PCI SSVID/SSPID to enable
FW download based on the same.

Signed-off-by: Sushrut Shree Trivedi <quic_sushruts@quicinc.com>
2025-02-25 18:43:47 +00:00
Dan Williams 1603c512dd Merge request !1296 from 'cli-fix-call-cbm-opts'
cli: fix Cell Broadcast Message short-path conflict with Call

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1296

Closes #962
2025-02-25 18:38:29 +00:00
Dan Williams 654c59edc0 cli: fix Cell Broadcast Message short-path conflict with Call
They both used 'o', but Call had it first. Change CBM to 'c'.

Fixes: https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/962

Signed-off-by: Dan Williams <dan@ioncontrol.co>
2025-02-25 18:29:49 +00:00
Dan Williams 61f1000d82 Merge request !1298 from 'dco2'
ci: only run DCO check on merge requests

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1298
2025-02-25 17:02:23 +00:00
Dan Williams 41b1923d71 ci: only run DCO check on merge requests
Signed-off-by: Dan Williams <dan@ioncontrol.co>
2025-02-25 10:56:36 -06:00
Dan Williams cd1ba1c0a7 Merge request !1292 from 'dco'
ci: add DCO check action

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1292
2025-02-25 16:30:36 +00:00
Dan Williams ca6a68a280 ci: add DCO check action
Check each commit in an MR for Signed-off-by: Name <email>

Signed-off-by: Dan Williams <dan@ioncontrol.co>
2025-02-25 10:19:21 -06:00
Dan Williams 3ea5c84872 Merge request !1293 from 'main'
SIM7600 audio bug fix and sample rate change

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1293
2025-02-24 23:17:07 +00:00
Michał Sułek 3966e1c019 Fixed code formatting 2025-02-24 17:35:47 +01:00
Michał Sułek 602808c0eb Setup variable declared after function call, fixed. 2025-02-24 16:18:55 +00:00
Michał Sułek 60bc733004 Was not compiling due to setup being undefined in call_audio_channel_set 2025-02-24 16:18:55 +00:00
Michał Sułek 9477469db4 Dan Williams changed g_usleep to g_timeout_add 2025-02-24 16:18:55 +00:00
Michał Sułek 31e486d672 Fixed the bug regarding SIM7600 modem family that made USB audio to not turn on.
Added the support for 16kHz sample rate for simtech modems and set it as default if available.
2025-02-24 16:18:55 +00:00
Dan Williams 46d126f505 Merge request !1242 from 'supported_storage_changes_check'
iface-modem-messaging: Validate supported storages

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1242
2025-02-24 14:57:28 +00:00
Akula Susmitha 0d6c9279d3 iface-modem-messaging: Validate supported storages
Check for supported storages before setting default storage.

Signed-off-by: Akula Susmitha <quic_asusmith@quicinc.com>
2025-02-24 14:02:02 +00:00
Dan Williams 7055b94eee Merge request !1295 from 'fix_since_annotation'
cell-broadcast: Fix "Since" annotations

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1295
2025-02-24 14:00:44 +00:00
Evangelos Ribeiro Tzaras dc17a771d7 docs: add missing reference to MMCbmState
Fixes: eda130f3bf

Closes: https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/963
2025-02-24 08:06:31 +01:00
Evangelos Ribeiro Tzaras 50759c744c cell-broadcast: Fix "Since" annotations 2025-02-24 08:06:28 +01:00
Dan Williams 93b6e42893 Merge request !1271 from 'generic-sahara-firehose'
broadband-modem: generic Firehose and Sahara support

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1271
2025-02-21 14:12:08 +00:00
Aleksander Morgado 781428ddcd iface-modem-firmware: common logic to check for sahara/firehose tags
The logic will exclusively look for the udev tags reporting
sahara/firehose support in the primary control port of each modem
type.
2025-02-21 14:08:50 +00:00
Aleksander Morgado 93da5e0b93 fibocom: add Sahara/Firehose support for NL668-EAU
Signed-off-by: default avatarLukas Voegl <lvoegl@tdt.de>
2025-02-21 14:08:50 +00:00
Lukas Voegl 155893ea38 broadband-modem: generic Firehose and Sahara support
Allows setting the renamed `ID_MM_QUALCOMM_FIREHOSE` and
`ID_MM_QUALCOMM_SAHARA` environment variables for all devices.

Signed-off-by: Lukas Voegl <lvoegl@tdt.de>
2025-02-21 14:08:50 +00:00
Dan Williams 6e981b61b3 Merge request !1287 from 'sushrut-branch'
kernel-device, generic: add subsystem device ID support

https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1287
2025-02-21 14:01:51 +00:00