summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* ci: new test to build without suspend-resume supportAleksander Morgado2022-08-091-0/+33
|
* ci: remove check for WITH_NEWEST_QMI_COMMANDSAleksander Morgado2022-08-091-23/+0
| | | | | The newest QMI commands are already builtin the default compilation of ModemManager.
* ci: move no-tests check before the default onesAleksander Morgado2022-08-091-17/+17
|
* mm-sim-mbim: Fix compile failure if WITH_SUSPEND_RESUME is not setPavan Holla2022-08-091-0/+5
| | | | Fixes 86f6d3351351f7143a7f1c5fb90ddb465089ac69
* core, log: make libraries logging use the MM level and formatAleksander Morgado2022-08-051-11/+16
| | | | | | | | | | | | | | The log level of the libraries was not honoring the log level configured in MM, so we would see debug messages reported even if the default log level configured was INFO or MSG. The format of the logs emitted by the libraries was also not following the format of the rest of MM logs, e.g. they would not include timing info in the logs which would make it hard to follow certain event transitions. Make the libraries logging use the ModemManager logging method, to fix all those issues.
* core,log: minor coding style changesAleksander Morgado2022-08-052-62/+63
|
* broadband-modem-mbim: SIM slots ptr array should have GDestroyNotifyAleksander Morgado2022-08-041-1/+8
| | | | | | | | | The SIM slots ptr array should have a proper GDestroyNotify, so that whenever the array is unref-ed as part of the modem disposal logic, the SIM objects (and the modem object references they keep) are also unref-ed. Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/571
* shared-qmi: minor rework SetPacketServiceState()Aleksander Morgado2022-08-041-75/+33
| | | | Port to using g_autoptr() so that we avoid the gotos.
* iface-modem-3gpp: update packet service state in the interfaceAleksander Morgado2022-08-041-24/+5
| | | | The skeleton property will be update automatically as they're bound.
* iface-modem-simple: wait for packet service state is 3GPP specificAleksander Morgado2022-08-041-8/+13
|
* broadband-modem-qmi: force IDLE state if PS registered but DSD RAT unavailableAleksander Morgado2022-08-041-30/+38
| | | | | | | | | | | We provide a consolidated method to update the PS/EPS/5GS registration states, based on the actual state reported via NAS and the availabiity or not of the DSD data RAT. On this consolidated method, we now force the IDLE state for every case where it would have been HOME/ROAMING if the data RAT reported via the DSD service is unknown. This includes not only transitions into the HOME/ROAMING state, but also transitions to unknown data RAT.
* iface-modem-simple: wait for packet service 'attach' state in ConnectionStepAkash Aggarwal2022-08-044-0/+200
|
* broadband-modem-qmi,mm-shared-qmi: implement support for ↵Akash Aggarwal2022-08-043-8/+206
| | | | 'SetPacketServiceState()'
* broadband-modem-qmi: Move to "registered" state based on DSD System Status ↵Akash Aggarwal2022-08-041-17/+281
| | | | | | | | | | for PS domain "registered" state should not wholly depend on the PS/EPS/5GS domain state reported by NAS. It should listen to DSD system status for availabilty of data network at modem before moving to 'registered' state".
* broadband-modem: SIM swap check should consider errors loading as no SIMAleksander Morgado2022-08-041-5/+2
| | | | | | | | | A failure loading IMSI or ICCID (unless for the UNSUPPORTED case) could be an indication that there is no SIM. Ideally, the logic checking if a SIM swap happened should have checked first if there is a SIM card in the slot, and only if there is one go on to try to load IMSI or ICCID.
* sim-mbim: clear cached subscriber info on modem sync requestAleksander Morgado2022-08-011-7/+78
|
* broadband-modem: notify when a sync is needed after a suspend/resumeAleksander Morgado2022-08-012-3/+39
| | | | | | | Modem/SIM implementations that keep cached info that is not supposed to change during runtime of a modem may need to be notified about when a suspend/resume has happened, so that they can clear and reload the internally cached data.
* iface-modem: reordering of ready methods in sync()Aleksander Morgado2022-07-291-37/+38
|
* broadband-modem: quick sync the Modem interface also if disabledAleksander Morgado2022-07-291-18/+6
| | | | | | | | If the modem was in disabled state, we still want to sync the Modem interface, among other things to make sure no SIM event happened during the system suspension. Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/605
* po: add Georgian translationNorwayFun2022-07-271-0/+111
|
* mm-enums: Added E-UTRAN Band 85 to MMModemBand.Alexey Orishko2022-07-271-0/+2
| | | | LTE Band 85 is supported by modems based on Qualcomm 9205 chipset.
* helpers-mbim: report correct network availability from mbim bitmaskAleksander Morgado2022-07-251-12/+15
| | | | | | | MbimProviderState is a bitset, so don't try to match exact values in a switch statement when converting to MMModem3gppNetworkAvailability. Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/524
* ci: build without testcasesDylan Van Assche2022-07-251-0/+17
| | | | Verify if ModemManager builds with everything disabled
* build: make tests optionalDylan Van Assche2022-07-259-10/+57
| | | | | | | | | | Add a meson option -Dtests and --without-tests automake option to disable the compilation of all available testcases. This is useful for compiling projects with Flatpak such as GNOME Control Center which disables all possible integrations since they only need the DBus part of ModemManager. Contributes to https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/1392
* base-sms: don't clear parts on send/store errorAleksander Morgado2022-07-241-27/+24
| | | | | | | The part generation logic is independent to whether the SMS send or store operation failed, so just avoid doing the parts cleanup. E.g. if we created the parts for store() but storing failed, the same parts could still be used for send() successfully.
* base-sms: fix segfault when storing already sent messagesAleksander Morgado2022-07-241-19/+28
| | | | | | | | | | | The internal list of parts in the base SMS object is created either when the message is sent or when the message is stored. The daemon should not expect the list of SMS parts to be empty upon a store() operation requested via DBus, as the list of parts may have already been created during send(). Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/598
* sierra: disable CPOL in the GL7600Dan Carpenter2022-07-201-2/+10
| | | | | | | Similar to the EM7345 (also from Sierra Wireless), the GL7600 becomes unresponsive after using "AT+CPOL?". Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/595
* broadband-modem: don't make fatal SIM swap check of IMSI or ICCIDAleksander Morgado2022-07-161-39/+37
| | | | | | | If the SIM swap check using ICCID or IMSI fail, don't completely fail the operation, as the other one may still succeed. Fail the operation only if both checks failed.
* broadband-modem: plug leaks in sim_swap_context_free()Aleksander Morgado2022-07-161-0/+2
|
* shared-qmi: improve logging of steps in SIM hot swap setupAleksander Morgado2022-07-161-5/+31
|
* shared-qmi: only transfer state to priv info if SIM hotswap setup succeedsAleksander Morgado2022-07-161-23/+36
| | | | | Don't transfer state to the private info until we know the operation has fully succeeded.
* shared-qmi: move indication callbacks out of the SIM hot swap setupAleksander Morgado2022-07-161-37/+43
|
* shared-qmi: return error if none of the methods succeeded in SIM hot swap setupAleksander Morgado2022-07-161-1/+9
|
* shared-qmi: avoid jumps in the SIM hot swap setup state machineAleksander Morgado2022-07-161-58/+69
| | | | | Always transition to the next step, and decide what to do based on the state tracked by the previously run steps.
* shared-qmi: make refresh all non-fatal during SIM hot swap setupAleksander Morgado2022-07-161-19/+7
| | | | | If for any reason "Refresh all" fails, don't return an error, as we may have already configured SIM slot status correctly.
* shared-qmi: add slot status indication in its own step during SIM hot swap setupAleksander Morgado2022-07-161-12/+18
|
* shared-qmi: add slot status check in its own step during SIM hot swap setupAleksander Morgado2022-07-161-42/+27
| | | | | Also, don't make the "Get Slot Status" operation fatal; just go on assuming that the slot status indications are unsupported.
* shared-qmi: new step in SIM hot swap setup to connect to refresh signalAleksander Morgado2022-07-161-23/+25
| | | | | Instead of connecting to the signal in multiple places, do it in one single place in the logic.
* mm-iface-modem,mm-broadband-modem,mm-shared-qmi: support SIM IMSI switchPrakash Pabba2022-07-165-128/+336
| | | | | | It is possible that SIM IMSI might change in roaming conditions for a sim. Register for UIM refresh indication always and reprobe if ICCID or IMSI changes for QMI modem.
* api,tags: fix typo in ID_MM_PORT_TYPE_AT_GPS_CONTROL docAleksander Morgado2022-07-161-1/+1
|
* docs: add missing reference to ID_MM_PORT_TYPE_AT_GPS_CONTROLAleksander Morgado2022-07-161-0/+1
|
* po: update after source file renameAleksander Morgado2022-07-1621-58/+55
|
* mm-call-qmi: implement DTMF supportDylan Van Assche2022-07-163-2/+158
| | | | | | Overwrite the base class with a QMI implementation to send DTMF characters during a call. Uses the continuous DTMF QMI messages to support both CDMA and 3GPP networks.
* mm-call-qmi: drop unnecessary white spaceDylan Van Assche2022-07-161-4/+4
|
* mm-call-qmi: fix comment consistencyDylan Van Assche2022-07-161-1/+1
| | | | Do not use caps for 'call'
* iface-modem-3gpp-profile-manager: add default index_fieldDaniele Palmas2022-07-151-1/+4
| | | | | | If check_support functions are not defined when implementing iface-modem-3gpp-profile-manager, set "profile-id" as default index_field.
* mm-iface-modem-3gpp-profile-manager: do not override Bearer 3gpp profile ↵Carlo Lobrano2022-07-151-4/+18
| | | | | | | | | | | | | | | | | | properties during connection When connecting via AT commands requiring a 3gpp profile with undefined profile-id, the corresponding bearer 3gpp profile is later modified adding the selected PDP context. For this reason when a next connection is requested with the same properties (that is no profile-id) the already existing bearers is not selected because of the different profile-id value and a new one is created. This change lets the connection logic use a copy of the user-requested bearer's 3gpp profile which can be modified for the logic needs, but it is not stored and then does not compromise a bearer comparison in a next connection request.
* mm-iface-modem-3gpp-profile-manager: do not try to deactivate unused profileCarlo Lobrano2022-07-151-4/+8
| | | | | | | | | | | | 'mm_3gpp_profile_list_find_best' can return an unused profile ID, which is later tested for being already activated in 'profile_manager_check_activated_profile_ready' with +GCACT?. Since the profile does not exist, this check always fails, but the profile manager still tries to deactivate it, which is unnecessary. This change checks the return error from 'check_activated_profile' and skips SET_PROFILE_STEP_DEACTIVATE_PROFILE step if error is MM_CORE_ERROR_NOT_FOUND.
* mbim: Make use of uim qmi service if availableUlrich Mohr2022-07-141-0/+1
|
* mm-sim-qmi: use shared qmi interface instead of using qmi modem class directlyUlrich Mohr2022-07-141-17/+9
|