aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-11-03base-bearer: allow reporting uplink/downlink speeds via indicationsAleksander Morgado
2021-11-03bearer-mbim: implement support for 'uplink-speed' and 'downlink-speed'Aleksander Morgado
During the packet service attach operation we'll get notified of which is the agreed uplink/downlink bitrates, so include them in the stats.
2021-11-03base-bearer: implement support for 'uplink-speed' and 'downlink-speed'Aleksander Morgado
We let protocol implementations provide the uplink and downlink speeds agreed with the network as part of the connect result, and we then move them to the bearer stats in DBus.
2021-11-03api,bearer: add 'uplink-speed' and 'downlink-speed' statsSom_SP
These values show the rates that have been negotiated with the network during the PS domain attach. These are not the current ongoing data rates associated to the network usage at some given moment. Includes updates by Aleksander Morgado to fix coding style issues and add missing documentation items.
2021-11-03api,bearer: add reference to 5G DNN in the "apn" propertySom_SP
It's just a new name for the same thing really.
2021-11-03modem-helpers-mbim: sync MbimContexType with MMBearerApnTypeAleksander Morgado
2021-11-03build: require libmbim 1.27.3Aleksander Morgado
In order to be able to use the new MS defined context types.
2021-11-03api,enums: new APN type definitionsAleksander Morgado
Mostly based on the Microsoft extensions for MBIM. They'll need to be mapped to other protocols (e.g. QMI) somehow.
2021-11-02broadband-modem: implement support for 'SetPacketServiceState()'Aleksander Morgado
2021-11-02broadband-modem-mbim: implement support for 'SetPacketServiceState()'Aleksander Morgado
2021-11-02iface-modem-3gpp: implement handling of 'SetPacketServiceState()'Som_SP
Includes updates by Aleksander Morgado to fix coding style issues and to place this logic in the correct interface.
2021-11-02api,3gpp: new 'SetPacketServiceState()' methodAleksander Morgado
2021-11-02broadband-modem-mbim: fix reporting CS/PS/EPS/5GS reg statusAleksander Morgado
Until now we just reported any registration status change as PS, and that was fine because we wouldn't need to have any logic on top to build a consolidated registration state. But now we need to know whether the reported registration status is for a packet domain (e.g. PS/EPS/5GS) in order to correctly update the PacketServiceStatus property in DBus. So, monitor the packet service status reported by the modem, and decide which domain registration we're updating every time.
2021-11-02iface-modem-3gpp: implicitly update packet service state based on reg domainsAleksander Morgado
If we're registered in either PS, EPS or 5GS, we can assume packet domain service is attached. If we're only registered in CS, packet domain is detached. This change relies on protocol implementations to properly report separate CS/PS/EPS/5GS domain registration states.
2021-11-02api,3gpp: new 'PacketServiceState' propertyAleksander Morgado
This property allows the user to know whether the device is attached or detached from the packet domain service.
2021-11-02helpers-mbim: detect 5G access tech using Microsoft extensionsAleksander Morgado
2021-11-02helpers-mbim: detect 5G capabilities using Microsoft extensionsAleksander Morgado
2021-10-28foxconn: delete the carrier mapping table of T99W175Freedom Liu
For T99W175, Qualcomm realized mcfg switching mechanism in FW side. It can work indepently without MM's help. Therefore, delete mcfg switching mechanism in MM.
2021-10-25telit: allow unlock retries loading for unknown error csim replyDaniele Palmas
When trying to lock the modem LE910S1 replies: 'AT+CSIM=1<CR>' '<CR><LF>ERROR<CR><LF>' but the modem actually supports CSIM unlock retries reporting.
2021-10-25telit: avoid sim hot swap procedure if #QSS is not supportedDaniele Palmas
2021-10-25telit: add port type hints for LE910S1 0x7010, 0x7011 compositionsDaniele Palmas
2021-10-23iface-modem-firmware: Initialize context to nullFrederic Martinsons
Without setting memory to NULL it is possible that ctx->list point to an unitialized pointer and trig a segfault when we free it (for example when the firmware list is not supported) Signed-off-by: Frederic Martinsons <frederic.martinsons@sigfox.com>
2021-10-22libmm-glib: add documentation for disable_facility_lockMichal Mazur
2021-10-22cli, plugins: factorize usage of iso8601 datetime formatFrederic Martinsons
Signed-off-by: Frederic Martinsons <frederic.martinsons@sigfox.com> Includes updates by Aleksander Morgado to fix coding style issues.
2021-10-22api,bearer: new 'start-date' field in bearer statisticsFrederic Martinsons
It stores the epoch timestamp of the current bearer session start. If there is no connected bearer, it is set to 0 and not displayed in mmcli output. Signed-off-by: Frederic Martinsons <frederic.martinsons@sigfox.com> Includes updates by Aleksander Morgado to fix coding style issues.
2021-10-21broadband-modem-mbim: update extended signal info on MBIM notificationsAleksander Morgado
We process the MBIM signal state notification and use it to update the extended signal quality information in the Signal interface.
2021-10-20broadband-modem-mbim: support for setting up signal thresholdsSom_SP
Includes updates by Aleksander Morgado to fix coding style issues and rework the coded point transformations.
2021-10-20libmm-glib: new 'MMSignalThresholdProperties' helper objectAleksander Morgado
To avoid needing to work with GVariants directly.
2021-10-20iface-modem-signal: bind together polling and threshold based setupsAleksander Morgado
The values exposed in the Signal interface must not be cleared every time polling is disabled, because the user may have also enabled threshold based loading. And viceversa; if the user disables threshold based polling, we should not unconditionally clear the values as polling may still be enabled. We setup a common Private context associated to the interface, and we keep the current state there, which is also in sync with the DBus interface. We will only clear the signal values if both polling-based and threshold-based setups are disabled. Following the same reasoning, the mm_iface_modem_signal_update() method used by implementations to report new signal quality details is updated so that it's a no-op if no polling-based or threshold-based setup has been enabled.
2021-10-20iface-modem-signal: implement support for SetupThresholds()Som_SP
Also allow updating the per-access technology signal quality information via indications. Includes updates by Aleksander Morgado to fix coding style issues and some other GTask related problems.
2021-10-20libmm-glib,mmcli: add support for the new signal 'SetupThresholds()' APISom_SP
Includes updates by Aleksander Morgado to fix mostly coding style issues.
2021-10-20libmm-glib,mmcli: add support for 'error-rate' measurements in signal infoSom_SP
Includes updates by Aleksander Morgado to fix mostly coding style issues.
2021-10-20api,signal: new signal threshold based setupSom_SP
A new SetupThreshold() method is added to configure and control the device signal notifications sent to the host. RSSI and error rate based thresholds are initially assumed, but the interface allows growing the method with additional threshold types. Includes updates by Aleksander Morgado to improve documentation of the new methods and properties.
2021-10-20api,signal: new 'error-rate' reporting per access technologySom_SP
Includes updates by Aleksander Morgado to improve documentation.
2021-10-19broadband-modem-mbim: early complete successful mode changesAleksander Morgado
When changing the allowed modes using the "Register State Set" request, the response would arrive once we have been registered in the network. This is obviously not ideal, as we just want to know if the mode preference was changed, we don't care if we're registered or not. Instead of waiting for the response to arrive or to timeout, we now also process incoming indications that arrive during the wait time, and if any of them shows the preferred modes to be the same ones as we just requested, we complete the operation right away.
2021-10-19broadband-modem-mbim: sync current modes and registration requestsAleksander Morgado
In MBIM we use the same "Register State Set Request" for 2 different things: configuring the allowed modes, and selecting the operator to use (manual/automatic). We need to keep track of which were the last things requested by the user so that we don't overwrite previous user actions when we process newer ones.
2021-10-19broadband-modem-mbim: fix MM_MODEM_MODE_ANY handling in set current modesAleksander Morgado
2021-10-19broadband-modem-mbim: add 5G support to supported modes loadingAleksander Morgado
2021-10-19helpers-mbim: add support for 3GPP2 data classesAleksander Morgado
Just for completeness.
2021-10-19broadband-modem-mbim: flag 5G as supported based on data capabilitiesAleksander Morgado
2021-10-19broadband-modem-mbim: implement current mode switching using 'Register State v2'Aleksander Morgado
Use the new Preferred Data Classes field in the Register State v2 message in order to know if the modes requested in the Set message are the expected ones or not. Based on an initial implementation by Som_SP <somashekhar.puttagangaiah@intel.com>
2021-10-18build,meson: Allow plugins to depend on build optionsIñigo Martínez
At the moment plugins might depend only on shared plugins. However, plugins may depend also in different build options. For example, `qcom-soc` plugin needs `qmi` option to be enabled. Plugins build check has been changed to allow to depend on different build options. Fixes #447
2021-10-18broadband-modem-mbim: fix signal quality reporting with MBIMEx v2.0Aleksander Morgado
When we enable MBIMEx v2.0, the "Signal State" responses and indications no longer report a valid RSSI value; and instead, they report per access technology RSRP/RSRQ values. >>>>>> Header: >>>>>> length = 116 >>>>>> type = indicate-status (0x80000007) >>>>>> transaction = 0 >>>>>> Fragment header: >>>>>> total = 1 >>>>>> current = 0 >>>>>> Contents: >>>>>> service = 'basic-connect' (a289cc33-bcbb-8b4f-b6b0-133ec2aae6df) >>>>>> cid = 'signal-state' (0x0000000b) >>>>>> Fields: >>>>>> Rssi = '99' >>>>>> ErrorRate = '99' >>>>>> SignalStrengthInterval = '5' >>>>>> RssiThreshold = '2' >>>>>> ErrorRateThreshold = '4294967295' >>>>>> RsrpSnr = '{ >>>>>> [0] = { >>>>>> Rsrp = '0' >>>>>> Snr = '0' >>>>>> RsrpThreshold = '4294967295' >>>>>> SnrThreshold = '4294967295' >>>>>> SystemType = '5g-nsa' >>>>>> }, >>>>>> [1] = { >>>>>> Rsrp = '49' >>>>>> Snr = '45' >>>>>> RsrpThreshold = '4294967295' >>>>>> SnrThreshold = '4294967295' >>>>>> SystemType = 'lte' >>>>>> }, >>>>>> }'
2021-10-18modem-helpers: setup common RSSI to signal quality converterAleksander Morgado
2021-10-18modem-helpers: remove unexistent method headerAleksander Morgado
2021-10-17bearer-properties: Add profile-name to the bearer propertiesAndrew Lassalle
2021-10-17broadband-modem-qmi: Add the profile name to profilesAndrew Lassalle
2021-10-173gpp-profile: Add profile nameAndrew Lassalle
QMI modems also report a profile name, and that value can be used to select and update a specific profile.
2021-10-16port-mbim: request MBIMEx v2.0Aleksander Morgado
The ModemManager codebase has been ported to support Basic Connect v2 messages as defined in MBIMEx v2.0, so at this point we can now switch to use it by default whenever possible.
2021-10-16broadband-modem-mbim: support 'Signal State' from MBIMEx v2.0Aleksander Morgado