summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* foxconn: updating the T77W968 carrier mapping tableFanice Luo2022-07-141-0/+20
| | | | | | | | add new MCCMNC of EE UK(23430,23431,23432,23433,23434,23476,23501,23502,23577) add new MCCMNC of ATT(310650,310980,90118) add new MCCMNC of Verizon(312770) add new MCCMNC of Vodafone(46601,46603) add new MCCMNC of Orange(21409,23105,26005)
* dell: Add DW5829e(T77W968) modulesFanice Luo2022-07-122-5/+5
| | | | add new device(0x413c:0x81e4 0x413c:0x81e6)
* fibocom: Ignore +SIM READY URCSven Schwermer2022-07-111-1/+47
| | | | | | | | This URC is emitted when the SIM phonebook is initialized. We don't care about that but don't want this URC to mess with the initialization sequence either. Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
* fibocom: Add alternative MA510 USB configSven Schwermer2022-07-081-0/+6
| | | | Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
* fibocom: Add alternative L610 USB configSven Schwermer2022-07-082-2/+18
| | | | | | | | | This is the factory-default setting. Make sure to support it as well as the ECM/RNDIS settings. The L610 in GTUSBMODE=31 only enumerates with serial USB interfaces using the option driver, so we need to allow that driver too. Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
* mm-bearer-mbim: ignore mbim status error 'SIM not inserted' while disconnectingJack Song2022-07-061-0/+8
| | | | | | Ignore the error SIM_NOT_INSERTED when ModemManager disable modem after SIM card removed Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/578
* port-mbim: monitor consecutive timeoutsAleksander Morgado2022-06-303-2/+44
|
* port-qmi: monitor consecutive timeoutsAleksander Morgado2022-06-303-2/+44
|
* base-modem: setup timeout monitoring in all control portsAleksander Morgado2022-06-301-15/+36
| | | | | | | | | If any of the control ports ends up timing out 10 consecutive times, the modem will be flagged as invalid and it will be reprobed from scratch. This allows us to detect modems that end up irresponsive in QMI or MBIM while they're still exposed in e.g. the USB bus.
* port: make 'timed-out' a signal for all port types, not just serialAleksander Morgado2022-06-305-16/+26
|
* fibocom: Fix GTRNDIS parsing functionSven Schwermer2022-06-281-1/+1
| | | | | | | | This fixes a bug introduced in a2a0e2d754. Since the state pointer is always non-NULL, the function will always fail if GTRNDIS is inactive, i.e. the modem will return state=0 and no cid field. Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
* fibocom: ensure RNDIS disconnected before a new connection attemptSven Schwermer2022-06-271-0/+199
| | | | | | | | | | | The ECM dialling guide requires to check whether RNDIS is already active before attempting to establish an ECM/RNDIS connection. If it is active (regardless of its settings), we will disconnect it first, before attempting the new connection with the user-provided settings. Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
* mm-sms-part-3gpp: sms_decode_text: avoid decoding an empty text messageDmitry Skorykh2022-06-271-0/+8
| | | | | Fix segfault that can occur during message text decoding if there are no elements in SMS text
* build,meson: require libqmi 1.31.7, in sync with autotoolsAleksander Morgado2022-06-241-1/+1
| | | | | | The required libqmi version was updated in configure.ac to 1.31.7 in commit ac06052b97cc02e60ae1ed7a551727b3c14d6a22, but we forgot to do the same in the meson setup.
* telit:broadband-mbim: save MBIM originated revision into ↵Carlo Lobrano2022-06-221-0/+47
| | | | | | | | | | | | software_package_version Currently, MBIM broadband Telit modem does not store firmware revision into 'software_package_version', so it won't be possible to specialize behavior based on modem model (using mm_telit_model_from_revision). This change overloads load-revision in MBIM broadband Telit in order to call parent's loading and store the returned 'caps_firmware_info' into 'software_package_version' via mm_shared_telit_store_revision.
* telit: add function to store revisionCarlo Lobrano2022-06-222-3/+15
|
* telit: add support for QCDM portsDaniele Palmas2022-06-192-16/+15
| | | | | | The new QCDM probing mechanism does not probe and grab QCDM ports if the plugin is not allowed, so QCDM ports currently ignored in compositions can be safely marked as ID_MM_PORT_TYPE_QCDM.
* plugins: add MM_PLUGIN_REQUIRED_QCDM to plugins requiring QCDMDaniele Palmas2022-06-197-6/+7
| | | | | | | | The new QCDM port probing and grabbing mechanism implements a new property for detecting the plugins which require the QCDM port to be probed and grabbed. Add the property to the affected plugins.
* port-probe: avoid QCDM port probing if not for specific pluginsDaniele Palmas2022-06-194-70/+107
| | | | | | | | | The QCDM/DIAG port is usually nowadays exclusively used by applications gathering traces from the modem, so avoid port probing and grabbing when plugins set the property MM_PLUGIN_ALLOWED_QCDM. A new property MM_PLUGIN_REQUIRED_QCDM is created for those plugins requiring the QCDM port for properly using a modem.
* broadband-bearer: Save profile ID upon successful connectionSven Schwermer2022-06-191-0/+5
| | | | Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
* mm-broadband-modem-qmi: set endc_available as false by defaultPrakash Pabba2022-06-091-1/+1
|
* plugins,telit: do not crash if revision is not setCarlo Lobrano2022-06-091-1/+2
| | | | | | | | | In mm_telit_model_from_revision there is nothing that prevents to use the input revision string if it is NULL, which currently happens if the modem is pure MBIM (i.e. LE910-V2 pid:0x0032). Fix the above error returning a default safe value and not using the NULL variable.
* suspend: add suspend/resume support with powerd on ChromeOSRukun Mao2022-06-0938-49/+253
| | | | | | ModemManager handles suspend and resume signals sent from powerd Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/547
* fcc-unlock: add support for new Lenovo T99W175 SDX55 FCC unlock methodThilo-Alexander Ginkel2022-05-302-5/+70
| | | | | Tested w/ Lenovo firmware T99W175.F0.1.0.0.9.DT.003.055 (old unlock method) and T99W175.F0.1.0.0.9.DT.003.079 (new unlock method)
* cli: don't print signal quality unless modem is enabledAleksander Morgado2022-05-253-6/+11
| | | | | | We don't have a clear way to report "unknown" signal quality, so for now just skip printing it altogether in the mmcli human output if the modem is not yet enabled.
* iface-modem: allow state updates without bearer listAleksander Morgado2022-05-251-26/+13
| | | | E.g. if we reach the failed state before the bearer list is created.
* iface-modem: report failed modems with unknown capabilitiesAleksander Morgado2022-05-253-7/+15
| | | | | Instead of not creating a modem object, create it in failed state with the "unknown capabilities" failed state reason.
* iface-modem: minor coding style fixAleksander Morgado2022-05-251-4/+3
|
* iface-modem: fail initialization if eSIM without profilesAleksander Morgado2022-05-254-18/+45
| | | | | | A modem using an eSIM without profiles should not be allowed to get enabled, it should be really treated as a modem without a physical SIM.
* iface-modem: skip setting up carrier config on esim without profilesAleksander Morgado2022-05-253-8/+15
|
* iface-modem: load current modes and current bands even without SIMAleksander Morgado2022-05-251-142/+142
| | | | | These are current settings in the modem, they don't really depend on whether there is a SIM or not.
* iface-modem: move helper method out of the initialization logicAleksander Morgado2022-05-251-15/+17
|
* base-sim: skip loading SIM identifier in eSIM without profilesAleksander Morgado2022-05-251-0/+7
|
* broadband-modem: rework checking for SIM swapAleksander Morgado2022-05-251-61/+52
| | | | | | | | Avoid calling the MMBaseSim class method directly, and use the helper mm_base_sim_load_sim_identifier() instead. Also, rework a bit the logic to have a single completion method once we know the current ICCID.
* base-sim: disallow SIM user operations in eSIM without profilesAleksander Morgado2022-05-251-0/+50
|
* base-sim: skip loading SIM properties based on SIM typeAleksander Morgado2022-05-251-55/+107
| | | | | | | | If the reported eSIM doesn't have profiles, there is no point in trying to load properties like ICCID, IMSI or operator name/id. If the reported SIM is a physical SIM, there is no point in trying to load properties like EID or eSIM status.
* broadband-modem-mbim: improve logging of found SIM slotsAleksander Morgado2022-05-251-0/+6
|
* iface-modem: minor coding style fixAleksander Morgado2022-05-251-5/+2
|
* base-sim: don't reload properties that may have been already initializedAleksander Morgado2022-05-251-4/+8
| | | | | | | If we created the SIM objects during the SIM slots processing, we should not attempt to reload the settings that were already set during the re-initialization, as that may end up clearing the initial properties.
* base-sim: remove bogus comments in initializationAleksander Morgado2022-05-251-18/+0
| | | | | All properties loaded during initialization are meant to be loaded only once, no point in saying that for each property.
* broadband-modem-mbim: assume no lock is required in eSIM without profilesAleksander Morgado2022-05-251-3/+7
|
* bearer-mbim: plug user cancellable to all MBIM operationsAleksander Morgado2022-05-241-5/+5
|
* bearer-mbim: if connection attempt fails, trigger an explicit disconnectionAleksander Morgado2022-05-241-1/+21
| | | | | | E.g. if the error reported by the MbimDevice is a timeout error, it means the connection attempt is still ongoing in the device, we need to ask it to stop.
* bearer-mbim: use common helper to build disconnection messageAleksander Morgado2022-05-241-61/+38
|
* telit: add LE910Cx MBIM composition port hintsDaniele Palmas2022-05-241-0/+7
|
* telit: add wwan supportDaniele Palmas2022-05-243-17/+26
|
* filter: add vendor id/subsystem vendor id filterDaniele Palmas2022-05-245-48/+160
| | | | | | | Some PCI modems prefer customizing the subsytem vendor ID, instead of the vendor ID. Add a filter for the couple vendor/subsystem vendor IDs.
* base-modem: add subsystem vendor ID propertyDaniele Palmas2022-05-2446-13/+96
| | | | | Subsystem vendor ID can be used for identifying PCI modems, so expose the property.
* kernel-device, generic: add subsystem vendor ID supportDaniele Palmas2022-05-244-17/+56
| | | | | Add subsystem vendor ID support, that can be used in pci devices instead of vendor ID customization.
* base-modem: if ABORTED during initialization, modem not exportedAleksander Morgado2022-05-202-42/+20
| | | | | | | | | | | | | | | Commit b497de325 introduced a change by which some common errors (e.g. SIM missing) would be reported as MM_CORE_ERROR_ABORTED. This had the undesired effect of making the MMBaseModem object not flag as valid the modem, because the returned error wasn't MM_CORE_ERROR_WRONG_STATE. We now change this logic so that only ABORTED makes the modem object not flagged as valid, and we'll do that only if the Modem interface isn't exposed in DBus. Fixes b497de325