Age | Commit message (Collapse) | Author |
|
Remove unused imports and fix import sorting using isort utility.
|
|
|
|
|
|
|
|
|
|
During disabling of gps sources the bitmask that keeps track of them is
updated incorrectly. Instead of removing the current source, all other
sources are removed from the mask.
One problem that arises from this is, that when you enable GPS after it
has been disabled completely (e.g. by disabling all GPS sources), the
code will not send a "+CGPS=1,1" command because it incorrectly assumes
that GPS is still enabled on the device.
|
|
|
|
We can leave the relative paths to other books (e.g. '../glib' or
'../ModemManager') because running gtkdoc-rebase seems to be broken
since the 1.29 release, see:
https://gitlab.gnome.org/GNOME/gtk-doc/-/issues/138
|
|
So that the gtkdoc-rebase step fixes the URLs to contain the correct
links; e.g.:
$ make dist V=s
make[8]: Entering directory '/home/aleksander/Development/foss/ModemManager/docs/reference/libmm-glib'
make \
top_distdir="../../../ModemManager-1.15.0" distdir="../../../ModemManager-1.15.0/docs/reference/libmm-glib" \
dist-hook
../ModemManager/ -> https://www.freedesktop.org/software/ModemManager/doc/latest/ModemManager/ (914)
../gio/ -> https://developer.gnome.org/gio/unstable/ (2564)
../glib/ -> https://developer.gnome.org/glib/unstable/ (5534)
../gobject/ -> https://developer.gnome.org/gobject/unstable/ (499)
make[8]: Leaving directory '/home/aleksander/Development/foss/ModemManager/docs/reference/libmm-glib'
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/298
|
|
|
|
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/306
Signed-off-by: Louis-Alexis Eyraud <louis-alexis.eyraud@sigfox.com>
|
|
The tests spawn the service via GTestDBus framework and make
some test API call while checking libmm interface to verify
that informations are well propagated.
To be able to use the fresh built libmm typelib, I used a
wrapper script to set GI_TYPELIB_PATH (because DBus activation
process clean the environment so it is not possible to set
it directly in the file).
This requires also the install of libgirepository-dev and python3-gi
in the CI docker.
Signed-off-by: Frederic Martinsons <frederic.martinsons@sigfox.com>
|
|
|
|
See See https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/302
|
|
The _get_port_gps() returns a full reference, use _peek_port_gps()
instead.
See https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/302
|
|
Translation by JRfi:
https://l10n.gnome.org/vertimus/ModemManager/master/po/fi/
|
|
|
|
non null
This very peculiar case can happen when an intermediate initiliazition step
of a modem fails.
The ModemManager daemon should always expose the modem interface but let not
assume that in mmcli and protect these calls.
Signed-off-by: Frederic Martinsons <frederic.martinsons@sigfox.com>
|
|
On some modem (for example SORACOM SC-QGLC4-C1) , the character set setup
step fails with "Unknown error" when the SIM card is missing or locked.
This leads to not expose Modem interface and not being able to unlocked
the SIM.
We should not consider this step as fatal but just issue a warning to let
other steps continue (which will let modem in failed state anyway).
Closes #289
Signed-off-by: Frederic Martinsons <frederic.martinsons@sigfox.com>
|
|
We can rely on QMI indications when the signal quality and access tech
changes happen, instead of doing explicit polling.
The modem will run the signal quality retrieval once, and then just
rely on indications, with polling disabled:
ModemManager[278759]: <debug> [1606862198.230492] [modem1] signal strength (lte): -79 dBm
ModemManager[278759]: <debug> [1606862198.230520] [modem1] signal strength: -79 dBm --> 55%
ModemManager[278759]: <debug> [1606862198.230583] [modem1] access technology changed (unknown -> lte)
ModemManager[278759]: <debug> [1606862198.230654] [modem1] signal quality updated (55)
ModemManager[278759]: <debug> [1606862198.230675] [modem1] periodic signal quality and access technology checks not rescheduled: unneeded or unsupported
ModemManager[278759]: <debug> [1606862198.230692] [modem1] periodic signal checks disabled
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/231
|
|
Attempting to disable the signal strength events was failing because
the protocol handler expects a valid set of thresholds also during the
disabling. So, just pass always the thresholds.
ModemManager[274522]: [/dev/cdc-wdm1] sent generic request (translated)...
<<<<<< QMUX:
<<<<<< length = 17
<<<<<< flags = 0x00
<<<<<< service = "nas"
<<<<<< client = 3
<<<<<< QMI:
<<<<<< flags = "none"
<<<<<< transaction = 7
<<<<<< tlv_length = 5
<<<<<< message = "Set Event Report" (0x0002)
<<<<<< TLV:
<<<<<< type = "Signal Strength Indicator" (0x10)
<<<<<< length = 2
<<<<<< value = 00:00
<<<<<< translated = [ report = 'no' thresholds = '{}' ]
ModemManager[274522]: [/dev/cdc-wdm1] received generic response (translated)...
<<<<<< QMUX:
<<<<<< length = 19
<<<<<< flags = 0x80
<<<<<< service = "nas"
<<<<<< client = 3
<<<<<< QMI:
<<<<<< flags = "response"
<<<<<< transaction = 7
<<<<<< tlv_length = 7
<<<<<< message = "Set Event Report" (0x0002)
<<<<<< TLV:
<<<<<< type = "Result" (0x02)
<<<<<< length = 4
<<<<<< value = 01:00:08:00
<<<<<< translated = FAILURE: NoThresholdsProvided
|
|
|
|
|
|
When comparing bearer properties provided by the user versus loaded
from the modem, we shouldn't be very strict, e.g.:
* Password or other fields may not be readable from the device.
* Some fields may not apply at all (e.g. RM protocol for EPS bearers)
* NULL strings could be assumed equal to empty strings.
* If no explicit IP type specified, an IPv4 default may be assumed.
* If no explicit allowed auth specified, 'none' default may be
assumed.
These loose comparisons are applied when managing the initial EPS
bearer settings and status, and we keep the strict comparison only
during the connection attempt lookup of a bearer with certain
settings, as those bearer objects are all created in the same place
with the same rules.
|
|
|
|
|
|
|
|
For generic WDS operations not tied to any connection attempt.
|
|
|
|
|
|
The parse_vendor_pco_info() method was returning NULL without error if
the pco info string was empty.
Under this situation, the code would have tried to add a NULL MMPco
into the pco_list list, which is not desired.
Avoid this, by making sure a NULL return always sets an error.
|
|
|
|
|
|
|
|
SAR service will be introduced in the stable libmbim 1.26.0, but it's
been flagged in the dev 1.25.1 version already.
|
|
This property (initially set to FALSE) controls whether QMI over MBIM
should never be considered. This property is set to TRUE for XMM-based
MBIM devices as they don't support QMI.
This fixes a probing delay of 15s on a Fibocom L850-GL device
(2cb7:0007) found in the Lenovo T14 Gen 1.
The establishing of a QMI connection was refused multiple time with
MBIM error OperationNotAllowed. Only the timeout of 15s for this
connection resumed the probing.
The properties in the MMBroadbandModemMbim are only installed when
WITH_QMI and QMI_MBIM_QMUX_SUPPORTED are set. Actually, this should only
disable the PROP_QMI_UNSUPPORTED but as this is the only property this
avoids the "unused variable 'self'" warnings/errors when trying to
compile set_property and get_property without QMI support. This can be
changed once other properties are needed.
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/284
|
|
We had all the logic in place... but we were never actually enabling
the signal strength indications because the `enable` flag in the
context was never set.
The bug was introduced back in May 2018, and released with 1.10.0.
Fixes baefe53ab9c0ea0612d2bf7da64b6f6cf9753bcd
|
|
|
|
Do not fail to detect an error response with a call or text incoming. This happens during port probing when there's no URC parsers installed in the serial port. This probably will not happen when the serial port was managed by the modem object.w
|
|
|
|
Do not fail to detect a valid response with a call or text incoming.
This happens also during port probing when there's no URC parsers
installed in the serial port. This probably will not happen when the
serial port was managed by the modem object.
|
|
If e.g. a bearer with IPv6 configuration has DNS servers but exports
its link-local address, MM will avoid giving it the "static" method
type, and instead fall back to the "dhcp" type. However, it may
still have DNS information. Therefore, the comment that "method" is
the only property on configuration with type DHCP is misleading.
|
|
|
|
Enabling/Disabling/Changing/Sending the PIN1 lock is usually limited to
3 retries. If these attempts are exhausted, the modem is puk_locked.
We reprobe the modem to get rid of any unwanted interfaces and move
to a locked state.
|
|
If the lock status cannot be read during a puk unblock attempt, reprobe
the modem. It is likely that the SIM was permanently blocked if the lock
status cannot be read.
|
|
|
|
We need to quote arguments with [] so that lists are not expanded as
different arguments.
Fixes 65560dd8854f01eec1b28587c37d544bfff360d3
|
|
When there are multiple ports with the same purpose (e.g. multiple net
data ports, or multiple QMI control ports), sort them by name by
default.
The port order does not make any difference for ports that have
flagged with a specific purpose (e.g. AT primary).
The sorting is done both in the internal lists and when looking up
ports with find_ports().
|
|
It will not be automatically enabled by the implicit
--enable-all-plugins; instead, it must be explicitly enabled with
--enable-plugin-qcom-soc.
This plugin only makes sense under very specific SoC builds, so there
is no point in always building it by default. It should be explicitly
requested only in those SoC builds that are really going to make use
of it (e.g. postmarketOS).
|
|
|