Commit Graph
8927 Commits
Author SHA1 Message Date
Aleksander Morgado acca9dc9ec shared-xmm: use G_DECLARE|DEFINE_INTERFACE() macros 2024-05-06 13:45:39 +00:00
Aleksander Morgado b34d547d9c shared-telit: use G_DECLARE|DEFINE_INTERFACE() macros 2024-05-06 13:45:39 +00:00
Aleksander Morgado 1c919890c6 iface-modem-cdma: use G_DECLARE|DEFINE_INTERFACE() macros 2024-05-06 13:45:39 +00:00
Aleksander Morgado 92a89efd02 iface-modem-oma: use G_DECLARE|DEFINE_INTERFACE() macros 2024-05-06 13:45:39 +00:00
Aleksander Morgado 0f48695d54 iface-modem-voice: use G_DECLARE|DEFINE_INTERFACE() macros 2024-05-06 13:45:38 +00:00
Aleksander Morgado 074277ca1a iface-modem-time: use G_DECLARE|DEFINE_INTERFACE() macros 2024-05-06 13:45:38 +00:00
Aleksander Morgado bec62a406c iface-modem-signal: use G_DECLARE|DEFINE_INTERFACE() macros 2024-05-06 13:45:38 +00:00
Aleksander Morgado 0a91a6035b iface-modem-simple: use G_DECLARE|DEFINE_INTERFACE() macros 2024-05-06 13:45:38 +00:00
Aleksander Morgado cc2f1317b3 iface-modem-sar: use G_DECLARE|DEFINE_INTERFACE() macros 2024-05-06 13:45:38 +00:00
Aleksander Morgado 070975736f iface-modem-messaging: use G_DECLARE|DEFINE_INTERFACE() macros 2024-05-06 13:45:38 +00:00
Aleksander Morgado aa94b21e0a iface-modem-location: use G_DECLARE|DEFINE_INTERFACE() macros 2024-05-06 13:45:38 +00:00
Aleksander Morgado e535c90f5f iface-modem-firmware: use G_DECLARE|DEFINE_INTERFACE() macros 2024-05-06 13:27:05 +00:00
Aleksander Morgado 2b7e738b9b iface-modem-3gpp-ussd: use G_DECLARE|DEFINE_INTERFACE() macros 2024-05-06 13:27:04 +00:00
Aleksander Morgado f033a0a9f2 iface-modem-3gpp-profile-manager: use G_DECLARE|DEFINE_INTERFACE() macros 2024-05-06 13:27:04 +00:00
Aleksander Morgado ab6e4bf391 iface-modem-3gpp: use G_DECLARE|DEFINE_INTERFACE() macros 2024-05-06 13:27:04 +00:00
Aleksander Morgado 35c0a6905b iface-modem: use G_DECLARE|DEFINE_INTERFACE() macros 2024-05-06 13:27:04 +00:00
Aleksander Morgado 9aab129759 iface-port-at: use G_DECLARE|DEFINE_INTERFACE() macros 2024-05-06 13:27:04 +00:00
Aleksander Morgado 1e26e16168 broadband-modem-qmi-quectel: fix task completion when not enabling profile manager events
Fixes e3024ec620
2024-05-06 13:24:22 +00:00
Lukas Voegl e3024ec620 quectel: disable qmi unsolicited profile manager events
Signed-off-by: Lukas Voegl <lvoegl@tdt.de>
2024-05-02 20:38:02 +00:00
Aleksander Morgado 040adb141a device: launch modem initialization after inhibition
The mm_device_create_modem() was updated so that it would not run the
modem initialization implicitly. Due to this change, we must ensure
the modem initialization is run after a modem inhibition operation
after we recreate the modem object.

Fixes: 04d826f563
2024-04-30 00:00:34 +02:00
Aleksander Morgado 95099a3ef4 device: launch modem initialization after reprobe
The mm_device_create_modem() was updated so that it would not run the
modem initialization implicitly. Due to this change, we must ensure
the modem initialization is run after a modem reprobe operation,
e.g. when switching SIM slots.

The logic to run the modem initialization is moved to MMDevice for
simplicity and clarity.

Fixes: 04d826f563
2024-04-29 09:45:06 +00:00
Aleksander Morgado c66a6b89ec fibocom: create custom MBIM port object with potential AT support 2024-04-23 07:25:12 +00:00
Aleksander Morgado 586f98f71d fibocom: change parent class peeker method
Use the more generic MMBaseModemClass instead of MMBroadbandModemClass.
2024-04-23 07:25:12 +00:00
Aleksander Morgado 6980f2ff6a port-mbim: preload supported services and allow querying 2024-04-23 07:25:12 +00:00
Aleksander Morgado 0d11ff8566 base-modem: allow subclassing tty/usbmisc/wwan port creation
So that plugins can provide their own implementations as needed.
2024-04-23 07:25:12 +00:00
Aleksander Morgado 939be0fbf8 base-modem: support non-serial ports when peeking the best AT port
When we don't care about the type of AT port to use, prefer the QMI or
MBIM based ones if any available.
2024-04-23 07:25:12 +00:00
Aleksander Morgado 480e12c34e base-modem-at: switch to use the MMIfacePortAt by default
The whole codebase is updated to assume the MMBaseModem AT operations
require an object implementing the MMIfacePortAt interface, instead of
a MMPortSerialAt object.

In the places where we know the port is a MMPortSerialAt, e.g. when we
query explicitly for the primary or secondary serial AT port, we will
use an explicit MM_IFACE_PORT_AT() cast when calling the AT command
method.

In the places where we get_best_at_port() we're going to assume that
we don't know the port type. This method will be updated in a follow
up commit to support the MMIfacePortAt interface as well.
2024-04-23 07:25:12 +00:00
Aleksander Morgado 67a0af3575 base-modem-at: switch internals to use MMIfacePortAt 2024-04-23 07:25:12 +00:00
Aleksander Morgado fcfa917740 iface-port-at: new interface exposing AT command/response support
For now implemented in a generic way by the MMPortSerialAt object.
2024-04-23 07:25:12 +00:00
Aleksander Morgado 11c2f7c068 base-modem-at: refactor implementation
No functional changes should happen.

The purpose of this change is to align coding style with the rest of
the project and also simplify the implementation of the different AT
command handling methods, e.g. to avoid needing so many internal
helper methods.
2024-04-23 07:25:12 +00:00
Lukas Voegl 537aca802f huawei: fix guint64 string formatting
Signed-off-by: Lukas Voegl <lvoegl@tdt.de>
2024-04-22 16:22:27 +02:00
Aleksander Morgado c169b397cd build: unstable release version bump to 1.23.6 2024-04-22 08:09:52 +00:00
Aleksander Morgado 200ff43a07 dispatcher-modem-setup: update example test script with more details 2024-04-16 13:00:12 +02:00
Aleksander Morgado e2ae9946ce base-manager: launch modem initialization also in unit tests
The new modem_initialize() method is run for both real devices (after
the modem setup phase) and also for virtual devices in unit
tests (where no modem setup phase exists).
2024-04-16 12:53:49 +02:00
Nero 04d826f563 dispatcher-modem-setup: new modem setup dispatcher
There are cases where the user wants to configure some actions
to be run on a modem before ModemManager takes over full control.

The new "modem setup" dispatcher scripts allow running operations
in the modem after the port probing has happened and we know which
ports are usable in the device.

The scripts may e.g. change device configuration, enable modem
logging infrastructure, or any other process that would otherwise
conflict with MM's own modem management operations.
2024-04-16 12:14:45 +02:00
Aleksander Morgado 941461a2c5 huawei: plugin sources depend on enums types 2024-04-16 11:45:51 +02:00
Oliver Kästner 2e4dc6911f huawei: handle IPv6 connection status changes 2024-04-12 11:17:18 +00:00
Oliver Kästner 4f1864921a huawei: implement loading supported IP families
This uses the proprietary `^NDISSTATQRY` instead of the default
`+CGDCONT` command, as the latter might return diffrent results
(i.e. reporting v6 support, that can't be used via NDIS).

Also add a fallback to `+CGDCONT?` for older modems that don't
support ^NDISSTATQRY.
2024-04-12 11:17:18 +00:00
Oliver Kästner 3adbcfb789 huawei: enable support for IPv6 2024-04-12 11:17:18 +00:00
Aleksander Morgado 9cb709b87e base-modem-at: remove unused at_command_raw() method 2024-04-12 11:02:20 +00:00
Aleksander Morgado 3fe9bd183b broadband-modem-hso: don't assume GPS control port always exists 2024-04-12 01:17:14 +00:00
Aleksander Morgado 79b5b480ba broadband-modem-telit: configure +CIEV in both primary and secondary ports
And also avoid assuming that the secondary port always exists.
2024-04-12 01:17:14 +00:00
Aleksander Morgado b158c2e92a broadband-modem: don't assume an AT port always exists in explicit registration 2024-04-12 01:17:14 +00:00
Aleksander Morgado ec8bbeeafc broadband-bearer: don't assume primary port always exists 2024-04-12 01:17:14 +00:00
Aleksander Morgado f786e41635 broadband-modem-cinterion: don't assume primary port always exists 2024-04-12 01:17:14 +00:00
Aleksander Morgado c344e5a286 broadband-modem-ublox: don't assume primary port always exists 2024-04-12 01:17:14 +00:00
Aleksander Morgado 19aebae1da broadband-modem-nokia: don't assume primary port always exists 2024-04-12 01:17:14 +00:00
Aleksander Morgado f23a4b09b4 broadband-modem-option: don't assume primary port always exists 2024-04-12 01:17:14 +00:00
Aleksander Morgado 21f4147298 broadband-modem-hso: don't assume primary port always exists 2024-04-12 01:17:14 +00:00
Aleksander Morgado 588d36be91 broadband-modem-fibocom: don't assume primary port always exists 2024-04-12 01:17:14 +00:00