Commit Graph

7847 Commits

Author SHA1 Message Date
Aleksander Morgado
03fce4775e kerneldevice,generic: input pattern to string match is not regex
The input pattern given to the string_match() method is not a regex
pattern and we cannot use it as that, because all the special
characters (e.g. '.') would not be treated correctly.

Also, the prefix matching with the wildcard at the end of the string
needs to be converted to a proper regex wildcard, i.e. '.*'.

This logic also adds support for suffix matching, with a wildcard at
the beginning of the string, e.g. as the ones used for the wwan kernel
device name matching rules (i.e. '*MBIM').

Unit tests are added to cover all cases, most of these tests were
failing without the fixes implemented here.
2021-11-09 10:50:26 +01:00
Aleksander Morgado
73b44ea51b kerneldevice,generic: move string match method to helpers
So that we can propertly unit-test it.
2021-11-09 10:50:26 +01:00
Daniele Palmas
e5f08b7766 broadband-modem-qmi: prefer system info indication if available
Prefer system info indication if available and fall back to
serving system indication if the former is not supported.
2021-11-09 08:34:01 +00:00
Daniele Palmas
ba84f97855 broadband-modem-qmi: prefer signal info indication if available
Prefer signal info indication if available and fall back to
signal strength indication if the former is not supported.
2021-11-09 08:34:01 +00:00
Daniele Palmas
a1fdba508d broadband-modem-qmi: replace get serving system 3gpp with get system info
Set get system info as default and fall back to get serving system 3gpp
for those modems not supporting the former.
2021-11-09 08:34:01 +00:00
Daniele Palmas
639d0c62a9 broadband-modem-qmi: replace get signal strength with get signal info
Set get signal info as default and fall back to get signal strength
for those modems not supporting the former.
2021-11-09 08:34:01 +00:00
Iñigo Martínez
ec2e5403f1 build,meson: Make feature options boolean
Different options are set as `feature`, also every possible plugin,
but this may cause confusion.

All options set as `feature` but plugins have been made `boolean` to
avoid further confusions.

`help2man` is also installed in the CI image because is required to
build different libraries.
2021-11-08 09:28:55 +00:00
Aleksander Morgado
7a7bc2e444 RELEASING: update default branch name to 'main' 2021-11-04 23:33:20 +01:00
Aleksander Morgado
8680afffe0 ci: switch to trigger pipelines on the 'main' branch 2021-11-04 23:33:02 +01:00
Aleksander Morgado
15db736024 po: switch 'master' to 'main' in Project-Id-Version 2021-11-04 23:32:18 +01:00
Aleksander Morgado
93bff5a061 broadband-bearer: minor fix in code comment 2021-11-04 22:53:27 +01:00
Aleksander Morgado
0012c63bf4 core: replace 'greylist' with 'allowlist'
There's a single replacement, and it made sense to have 'allowlist' there.
2021-11-04 22:51:42 +01:00
Aleksander Morgado
a37ce05a02 core: replace 'slave' with 'secondary' 2021-11-04 22:50:23 +01:00
Aleksander Morgado
e8ebd3af7e core: replace 'master' with 'main' 2021-11-04 22:50:00 +01:00
Aleksander Morgado
9f679d4cac core: replace 'dummy' with 'placeholder' 2021-11-04 22:44:20 +01:00
Aleksander Morgado
3444b02932 core: replace 'whitelist' with 'allowlist' and 'blacklist' with 'blocklist'
We keep the 'WHITELIST-ONLY' filter type name still as an option in
--filter-policy=[POLICY], but deprecated and with the better
'ALLOWLIST-ONLY' replacement suggested from now on.
2021-11-04 22:40:28 +01:00
Aleksander Morgado
eae2e28577 api,bearer: specify that 'profile-name' is part of profile management
The setting does not make much sense in an explicit connection attempt.
2021-11-04 21:21:57 +01:00
Aleksander Morgado
797cc6828a api,bearer: minor indentation fixes 2021-11-04 21:21:57 +01:00
Aleksander Morgado
88de20689c docs,libmm-glib: add SAR interface to main page 2021-11-03 14:09:28 +01:00
Aleksander Morgado
2750d8fa67 docs,libmm-glib: rework main page, pco is not an interface 2021-11-03 14:08:54 +01:00
Aleksander Morgado
2762c3ef84 docs,libmm-glib: add missing references to object_{peek|get}_modem_ssr() 2021-11-03 14:03:13 +01:00
Aleksander Morgado
7d816e2e90 docs,libmm-glib: add missing referecens to get_error_rate_threshold() and get_rssi_threshold() 2021-11-03 14:03:13 +01:00
Aleksander Morgado
452adeaf64 docs,ilbmm-glib: add missing references to mm_gdbus_modem_signal_call_setup_thresholds() 2021-11-03 14:03:13 +01:00
Aleksander Morgado
6343491aa5 docs,libmm-glib: add missing reference to mm_bearer_stats_get_start_date() 2021-11-03 14:03:13 +01:00
Aleksander Morgado
f8cba1cbdb api,enums: fix Since tag in MMModem3gppPacketServiceState 2021-11-03 14:03:13 +01:00
Aleksander Morgado
d114ee8703 docs,libmm-glib: add index for 1.20 2021-11-03 14:03:13 +01:00
Aleksander Morgado
6316a3bc43 docs,api: add index for 1.20 2021-11-03 14:03:13 +01:00
Aleksander Morgado
cf376204e8 base-bearer: allow reporting uplink/downlink speeds via indications 2021-11-03 12:43:39 +01:00
Aleksander Morgado
21c8cadb41 bearer-mbim: implement support for 'uplink-speed' and 'downlink-speed'
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-03 12:41:51 +01:00
Aleksander Morgado
16acff930b base-bearer: implement support for 'uplink-speed' and 'downlink-speed'
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-03 12:41:51 +01:00
Som_SP
511859ef0a api,bearer: add 'uplink-speed' and 'downlink-speed' stats
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-03 12:41:51 +01:00
Som_SP
d71a0bcf8e api,bearer: add reference to 5G DNN in the "apn" property
It's just a new name for the same thing really.
2021-11-03 10:38:40 +00:00
Aleksander Morgado
447adafebc modem-helpers-mbim: sync MbimContexType with MMBearerApnType 2021-11-03 10:39:35 +01:00
Aleksander Morgado
4157926a92 build: require libmbim 1.27.3
In order to be able to use the new MS defined context types.
2021-11-03 10:39:35 +01:00
Aleksander Morgado
dc000ec5b4 api,enums: new APN type definitions
Mostly based on the Microsoft extensions for MBIM. They'll need to be
mapped to other protocols (e.g. QMI) somehow.
2021-11-03 10:36:27 +01:00
Aleksander Morgado
f9343692e3 broadband-modem: implement support for 'SetPacketServiceState()' 2021-11-02 09:50:17 +00:00
Aleksander Morgado
c3f61547d2 broadband-modem-mbim: implement support for 'SetPacketServiceState()' 2021-11-02 09:50:17 +00:00
Som_SP
0316afee06 iface-modem-3gpp: implement handling of 'SetPacketServiceState()'
Includes updates by Aleksander Morgado to fix coding style issues and
to place this logic in the correct interface.
2021-11-02 09:50:17 +00:00
Aleksander Morgado
3ab765f11c api,3gpp: new 'SetPacketServiceState()' method 2021-11-02 09:50:17 +00:00
Aleksander Morgado
49a2954749 broadband-modem-mbim: fix reporting CS/PS/EPS/5GS reg status
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-02 09:50:17 +00:00
Aleksander Morgado
d6b5e76d1f iface-modem-3gpp: implicitly update packet service state based on reg domains
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-02 09:50:17 +00:00
Aleksander Morgado
f55ea211a9 api,3gpp: new 'PacketServiceState' property
This property allows the user to know whether the device is attached
or detached from the packet domain service.
2021-11-02 09:50:17 +00:00
Aleksander Morgado
98738521ef helpers-mbim: detect 5G access tech using Microsoft extensions 2021-11-02 09:50:17 +00:00
Aleksander Morgado
115e7debb2 helpers-mbim: detect 5G capabilities using Microsoft extensions 2021-11-02 09:50:17 +00:00
Freedom Liu
039ac40aab foxconn: delete the carrier mapping table of T99W175
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-28 08:40:18 +08:00
Daniele Palmas
2b196d897b telit: allow unlock retries loading for unknown error csim reply
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-25 16:51:35 +02:00
Daniele Palmas
1058c1c69d telit: avoid sim hot swap procedure if #QSS is not supported 2021-10-25 16:51:23 +02:00
Daniele Palmas
3a02c3187b telit: add port type hints for LE910S1 0x7010, 0x7011 compositions 2021-10-25 16:50:27 +02:00
Frederic Martinsons
2ae5f3cc27 iface-modem-firmware: Initialize context to null
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-23 10:58:15 +02:00
Michal Mazur
c487ca1b36 libmm-glib: add documentation for disable_facility_lock 2021-10-22 16:23:40 +02:00