Ivan Mikhanchuk
789ff2d822
quectel: add Sahara udev tag to EM05 modems
2022-01-26 10:58:24 -08:00
Aleksander Morgado
bb256b0cec
quectel: new ID_MM_QUECTEL_FIREHOSE udev tag
...
To identify which devices support the firehose update protocol.
2022-01-18 11:15:14 +01:00
Ivan Mikhanchuk
22e38199a9
quectel: combine firmware functions in mm-shared-quectel
2022-01-18 10:36:15 +01:00
Aleksander Morgado
c9ffa2c9e5
quectel: fix reference cycle
...
The 'update_settings' object must be referenced before the task is completed.
2022-01-18 10:29:45 +01:00
Dylan Van Assche
07d7f596d3
plugins/quectel/mm-shared-quectel: use QGMR to set version
...
Quectel modems report only their major firmware version through
AT+GMR, use AT+QGMR instead to report the full firmware version.
2022-01-11 08:42:53 +00:00
Aleksander Morgado
8852cef817
quectel: fix non-initialized GError
...
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/442
2021-10-13 22:06:31 +02:00
Dylan Van Assche
c00eff43ac
quectel: ignore QLWURC
...
QLWURCs are not ignored and causes calls to be rejected in some cases
2021-06-01 12:52:05 +02:00
Dylan Van Assche
1beea40270
quectel: set QGPSXTRA to enable assistance support
...
Quectel modems require to enable XTRA GNSS assistance first with QGPSXTRA=1, before it can be used.
2021-04-20 15:29:29 +00:00
Dylan Van Assche
192e067f97
quectel: ignore QGPSURC
...
QGPSURCs are not ignored and causes calls to be rejected in some cases
2021-03-21 10:01:52 +00:00
Aleksander Morgado
e4308a529e
quectel: setup parent SIM hot swap in addition to +QUSIM
...
So that e.g. in QMI-based devices we have both things, not just one.
2020-09-28 12:00:08 +02:00
Aleksander Morgado
0880bf3f9a
Revert "shared-qmi: implement SIM/profile change detection"
...
This reverts commit e91f2ef315 .
This was wrongly merged squashing multiple commits together. Reverting
to merge separate commits.
2020-09-28 11:57:55 +02:00
Teijo Kinnunen
e91f2ef315
shared-qmi: implement SIM/profile change detection
...
Implement eUICC change detection for QMI based modems using one of the
following mechanisms (in order of preference):
1. If the modem supports "get slot status" operation, we monitor
physical slot status indications from the modem for the active
slot to detect when ICCID changes.
2. Use "refresh register all" to subscribe refresh indications when
the eUICC triggers REFRESH operation following the enablement of
a new profile.
3. Use "refresh register" to subscribe refresh indications (file
path of EF_ICCID is used) in a similar way. This is used with
older modems that do not support "refresh register all".
If ICCID change is detected, the already existing SIM hot swap
mechanism in MM is triggered.
2020-09-28 09:29:09 +00:00
Aleksander Morgado
ab4160afa6
quectel: minor refactor in the sim hot swap setup logic
2020-09-11 10:16:53 +02:00
Teijo Kinnunen
e52ad1cc88
iface-modem: add an optional iccid parameter to check_for_sim_swap
...
If the new iccid is already available, reading the iccid from the
card can be skipped.
2020-09-07 15:18:52 +03:00
Aleksander Morgado
49b4e6a6ff
quectel: prefer +CTZU=3 to +CTZU=1 if supported
...
Some quectel modems, like the EC25, require +CTZU=3 in order to have
CCLK? report localtime instead of UTC time.
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/233
2020-09-04 08:32:30 +00:00
Aleksander Morgado
23f8b580c3
quectel,shared: implement custom time support check
...
We require CTZU=3 during the time support check, instead of CTZU=1, so
that the Quectel modem reports localtime instead of UTC time in +CCLK.
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/233
2020-06-30 13:12:25 +02:00
Aleksander Morgado
ffca45d9cc
quectel,shared: add GPS trace handler
2020-06-29 08:53:00 +00:00
Aleksander Morgado
af8afcc6c9
quectel,shared: only flag GPS source as enabled if it was successful
2020-06-29 08:53:00 +00:00
Aleksander Morgado
60211b51b1
quectel,shared: use QGPS=? test to check capabilities
2020-06-29 08:53:00 +00:00
Aleksander Morgado
78d19c10ba
quectel,shared: port GPS enabling to use AT sequence
2020-06-29 08:53:00 +00:00
Aleksander Morgado
bbca65d682
quectel,shared: skip QGPS? check after enabling/disabling failures
...
If any enabling/disabling command fails, we consider the operation
failed, regardless of the QGPS status. This is because e.g. enabling
involves more operations than just QGPS=1, and so we should treat a
failure in the command sequence as a failure in the whole operation.
2020-06-29 08:53:00 +00:00
Aleksander Morgado
538ed3f24e
quectel,shared: don't report GPS capabilities if no GPS port found
...
The QGPS based implementation needs the existence of a port flagged as
GPS data; if there is no such port, we cannot provide GPS support.
2020-06-29 08:53:00 +00:00
Aleksander Morgado
77f6637750
quectel,shared: fix reporting supported location capabilities
...
The method that reports what location capabilities are supported must
report the capabilities provided by the parent interface plus the
additional capabilities supported by the shared implementation.
Also, simplify the logic a bit reducing the amount of implemented
methods.
2020-06-29 08:53:00 +00:00
Aleksander Morgado
0f9d69fd35
quectel,shared: private context at beginning of source file
2020-06-29 08:53:00 +00:00
Aleksander Morgado
234ba4544b
quectel: coding style fixes in the QGPS logic
2020-06-29 08:53:00 +00:00
Aleksander Morgado
5a9d321346
quectel,shared: fix parent location disabling
...
The GTask must be passed as user_data.
2020-06-29 08:53:00 +00:00
ArenM
df393df147
quectel: implement GPS support with +QGPS
...
Quectel modems allow provide location information via AT commands.
Add this as a location source.
2020-06-29 08:53:00 +00:00
Teijo Kinnunen
d98597e430
quectel: Check SIM swap after "+QUSIM: 1" URC
...
Quectel emits "+QUSIM: 1" after eUICC reinitialization. Detect it
and perform SIM swap check if one is encountered.
The motivation here is that M2M eUICC profile switch causes eUICC
reset and this is one way to detect and handle profile switches
properly on Quectel modems. The existing SIM hot swap mechanism is
used as it appears to be suitable for handling profile switches as
well as physical swapping of SIM cards.
2020-04-17 07:45:47 +00:00
Aleksander Morgado
87712c27f5
api,firmware: MMModemFirmwareUpdateMethod as flags, not enum
...
Devices may require/support more than one update method, so instead of
reporting the method as a single enum value, use a set of flags
instead.
2019-01-03 18:53:52 +00:00
Aleksander Morgado
fc02b1320c
quectel: report fastboot-based firmware update method and settings
...
We'll check for AT+QFASTBOOT support during runtime.
2019-01-03 18:53:52 +00:00