Aleksander Morgado
d6aa727366
broadband-modem-mbim: fix signal quality reporting with MBIMEx v2.0
...
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-18 00:04:59 +02:00
Aleksander Morgado
c01f22804e
modem-helpers: setup common RSSI to signal quality converter
2021-10-18 00:04:09 +02:00
Aleksander Morgado
e1bc4b0999
modem-helpers: remove unexistent method header
2021-10-18 00:04:01 +02:00
Andrew Lassalle
b2a7591bcf
broadband-modem-qmi: Add the profile name to profiles
2021-10-17 17:56:44 +02:00
Aleksander Morgado
c3fe738e7d
port-mbim: request MBIMEx v2.0
...
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-16 22:28:29 +02:00
Aleksander Morgado
d8137789ed
broadband-modem-mbim: support 'Signal State' from MBIMEx v2.0
2021-10-16 22:03:39 +02:00
Aleksander Morgado
b32d85b1bf
bearer-mbim: support 'Packet Service' from MBIMEx v2.0
2021-10-16 22:03:39 +02:00
Aleksander Morgado
aca14b92c6
broadband-modem-mbim: support 'Packet Service' from MBIMEx v2.0
2021-10-16 22:03:39 +02:00
Aleksander Morgado
6b4a79f8ae
broadband-modem-mbim: support 'Register State' from MBIMEx v2.0
2021-10-16 22:03:39 +02:00
Aleksander Morgado
f7b595d066
broadband-modem-mbim: pass MbimDevice to notification parsers
...
We're going to enable the Microsoft extensions by default, and in
order to properly parse the notification messages, we'll need to know
which is the currently agreed MBIMEx version.
So, pass down the MbimDevice to every notification parser. Not all of
them will need it, so just for completeness.
2021-10-16 22:03:39 +02:00
Aleksander Morgado
c06ca6df3f
qcom-soc: require udev tag for ports
...
Since the 'wwan' subsystem addition to the qcom-soc plugin, the rules
to say a modem is handled by this plugin are too broad, and the plugin
attempts to support any kind of device exposed by the WWAN subsystem,
not just those from Qualcomm SoCs.
Update the plugin to require a new ID_MM_QCOM_SOC udev tag that is set
in the plugin udev rules, given that these rules already check for the
expected SoC drivers (bam-dmux, ipa, qcom-q6v5-mss).
2021-10-14 12:54:21 +00:00
Iñigo Martínez
803ce03d6a
build,meson: Remove unnecessary empty line
2021-10-14 07:57:55 +00:00
Aleksander Morgado
85a99ae028
broadband-modem-qmi: fix non-initialized GError
2021-10-13 22:06:31 +02:00
Aleksander Morgado
2b742d99d5
broadband-modem-mbim: coding style fixes in the SAR implementation
2021-10-13 13:14:10 +02:00
Aleksander Morgado
708bde6b9c
broadband-modem-mbim: use a dynamically allocated MbimSarConfigState
...
It makes reading the code a bit easier.
2021-10-13 13:14:10 +02:00
Aleksander Morgado
58e617e03c
iface-modem-sar: fix initialization sequence completion
...
We cannot just return without completing the GTask. If we see the
support check method failed, just keep on with the state machine so
that the GTask is completed in the FAIL_IF_UNSUPPORTED step.
Also, don't assume GError is set if FALSE is returned. This is the
only kind of async method where we allow this right now.
2021-10-13 13:14:10 +02:00
Jack Song
f45bc200a9
broadband-modem-mbim: implement the sar interface
2021-10-13 13:14:10 +02:00
lvmaorui
1da847c407
broadband-modem: add the sar interface
2021-10-13 13:14:10 +02:00
Aleksander Morgado
19a6ba5562
build,meson: add SAR interface support in the daemon
2021-10-13 13:14:10 +02:00
lvmaorui
534ffc5ca6
iface-modem-sar: new MMIfaceModemSar interface
2021-10-13 13:14:10 +02:00
Aleksander Morgado
dbd95e30c4
mm-broadband-modem-mbim: treat NO_ESIM_PROFILE as failure
2021-10-13 11:20:32 +02:00
Andrew Lassalle
43e76bf1bb
iface-modem: Allow SetPowerState(Low|On) on failed state
...
In some modems, the modem's radio can be ON when no SIM card is present.
In this case, the modem is in failed state, and the host cannot set the
power state to LOW. Since we we will allow the host to set the power to
LOW, we should allow it to set it back to ON.
2021-10-11 10:18:47 -07:00
Daniele Palmas
176b3f53c2
api: new TDS capability
2021-10-11 16:02:40 +00:00
Daniele Palmas
ecb5c3dbef
modem-helpers: change deprecated MBIM_NW_ERROR_UNKNOWN to MBIM_NW_ERROR_NONE
2021-10-11 16:02:40 +00:00
Amol Lad
11b83e4cb8
mm-bearer-mbim: unref not needed and it is causing crash
2021-10-04 14:48:05 +05:30
Frederic Martinsons
ea7517f0e5
Update signal strength indicator thresholds
...
These are thresholds for RSSI so nothing is expected to be
greater than 0.
This will allow to have a better granularity (even if with some
modem, we are limited in the number of thresholds configured)
These new thresholds will give the following signal quality range:
- 11% for -110 dBm
- 30% for -94 dBm
- 50% for -82 dBm
- 70% for -69 dBm
- 90% for -57 dBm
We are expecting to receive indication sreport every time the
signal strength crosses one of the configured thresholds.
Signed-off-by: Frederic Martinsons <frederic.martinsons@sigfox.com >
2021-10-03 17:44:52 +02:00
Lubomir Rintel
90ea3ef5db
iface-modem-3gpp-profile-manager: correct a GError instance ownership
...
The call to g_task_return_error() takes ownership of the GError passed
to it; we must not free it ourselves upon automatic pointer cleanup.
Otherwise a crash can be triggered in the error handling path:
ModemManager[259816]: <debug> [1633088468.157848] [modem0/modemu/at] <-- '<CR><LF>OK<CR><LF>'
ModemManager[259816]: <debug> [1633088468.159832] [modem0] stored profile with id '1'
ModemManager[259816]: <debug> [1633088468.160501] [modem0] set profile state (7/8): list after
ModemManager[259816]: <debug> [1633088468.161686] [modem0/modemu/at] device open count is 3 (open)
ModemManager[259816]: <debug> [1633088468.162320] [modem0/modemu/at] device open count is 2 (close)
ModemManager[259816]: <debug> [1633088468.162746] [modem0/modemu/at] --> 'AT+CGDCONT?<CR>'
ModemManager[259816]: <debug> [1633088468.177437] [modem0/modemu/at] <-- '<CR><LF>ERROR<CR><LF>'
ModemManager[259816]: <debug> [1633088468.178011] [modem0/modemu/at] operation failure: 100 (Unknown error)
ModemManager[259816]: <warn> [1633088468.182420] [modem0/bearer0] connection attempt #1 failed: Couldn't validate update of profile '1': Unknown error
ModemManager[259816]: <info> [1633088468.193156] [modem0/bearer0] connection #1 finished: duration 0s, tx: 0 bytes, rx: 0 bytes
ModemManager[259816]: <debug> [1633088468.194280] [modem0] couldn't connect bearer: Couldn't validate update of profile '1': Unknown error
==259816== Invalid read of size 4
==259816== at 0x4FF66CF: UnknownInlinedFun (gerror.c:535)
==259816== by 0x4FF66CF: g_error_free (gerror.c:832)
==259816== by 0x1A7F49: UnknownInlinedFun (glib-autocleanups.h:52)
==259816== by 0x1A7F49: UnknownInlinedFun (glib-autocleanups.h:52)
==259816== by 0x1A7F49: profile_manager_get_profile_after_ready (mm-iface-modem-3gpp-profile-manager.c:140)
==259816== by 0x4E342C9: g_task_return_now (gtask.c:1219)
==259816== by 0x4E344CA: UnknownInlinedFun (gtask.c:1289)
==259816== by 0x4E344CA: g_task_return (gtask.c:1245)
==259816== by 0x1A867C: get_profile_list_ready (mm-iface-modem-3gpp-profile-manager.c:680)
==259816== by 0x4E342C9: g_task_return_now (gtask.c:1219)
==259816== by 0x4E344CA: UnknownInlinedFun (gtask.c:1289)
==259816== by 0x4E344CA: g_task_return (gtask.c:1245)
==259816== by 0x1A3DB5: internal_list_profiles_ready (mm-iface-modem-3gpp-profile-manager.c:774)
==259816== by 0x4E342C9: g_task_return_now (gtask.c:1219)
==259816== by 0x4E344CA: UnknownInlinedFun (gtask.c:1289)
==259816== by 0x4E344CA: g_task_return (gtask.c:1245)
==259816== by 0x1D7B8B: profile_manager_cgdcont_query_ready (mm-broadband-modem.c:10240)
==259816== by 0x4E1DB61: g_simple_async_result_complete (gsimpleasyncresult.c:802)
==259816== Address 0x9286da0 is 0 bytes inside a block of size 16 free'd
==259816== at 0x48440E4: free (vg_replace_malloc.c:755)
==259816== by 0x500FD1C: g_free (gmem.c:199)
==259816== by 0x502A22F: g_slice_free1 (gslice.c:1180)
==259816== by 0x4FF6780: g_error_free (gerror.c:864)
==259816== by 0x1B22D2: connect_bearer_ready (mm-iface-modem-simple.c:286)
==259816== by 0x4E342C9: g_task_return_now (gtask.c:1219)
==259816== by 0x4E344CA: UnknownInlinedFun (gtask.c:1289)
==259816== by 0x4E344CA: g_task_return (gtask.c:1245)
==259816== by 0x18031A: connect_ready (mm-base-bearer.c:917)
==259816== by 0x4E342C9: g_task_return_now (gtask.c:1219)
==259816== by 0x4E344CA: UnknownInlinedFun (gtask.c:1289)
==259816== by 0x4E344CA: g_task_return (gtask.c:1245)
==259816== by 0x18329B: connect_3gpp_ready (mm-broadband-bearer.c:918)
==259816== by 0x4E342C9: g_task_return_now (gtask.c:1219)
==259816== Block was alloc'd at
==259816== at 0x484186F: malloc (vg_replace_malloc.c:380)
==259816== by 0x5013408: g_malloc (gmem.c:106)
==259816== by 0x502ACB4: g_slice_alloc (gslice.c:1069)
==259816== by 0x502B33D: g_slice_alloc0 (gslice.c:1095)
==259816== by 0x4FF64E6: g_error_allocate (gerror.c:702)
==259816== by 0x4FF6F03: UnknownInlinedFun (gerror.c:716)
==259816== by 0x4FF6F03: g_error_copy (gerror.c:886)
==259816== by 0x4E1D0A0: g_simple_async_result_set_from_error (gsimpleasyncresult.c:676)
==259816== by 0x236AAB: port_serial_got_response (mm-port-serial.c:744)
==259816== by 0x23B0F1: UnknownInlinedFun (mm-port-serial.c:934)
==259816== by 0x23B0F1: common_input_available (mm-port-serial.c:1035)
==259816== by 0x500AF9E: UnknownInlinedFun (gmain.c:3337)
==259816== by 0x500AF9E: g_main_context_dispatch (gmain.c:4055)
==259816== by 0x505F607: g_main_context_iterate.constprop.0 (gmain.c:4131)
==259816== by 0x500A562: g_main_loop_run (gmain.c:4329)
2021-10-03 13:36:54 +00:00
Lubomir Rintel
e3d108de0f
broadband-modem: ensure mm_broadband_modem_create_device_identifier() sets an error on all bad returns
...
modem_load_device_identifier_finish() expect it to do so and trips an
assertion failure in g_propagate_error():
ModemManager[256038]: <warn> [1633083601.491190] [modem0] couldn't load equipment identifier: Unknown error
ModemManager[256038]: <debug> [1633083601.491204] [modem0] loading device identifier...
ModemManager[256038]: <debug> [1633083601.491215] [modem0/modemu/at] device open count is 3 (open)
ModemManager[256038]: <debug> [1633083601.491231] [modem0/modemu/at] device open count is 2 (close)
ModemManager[256038]: <debug> [1633083601.491254] [modem0/modemu/at] --> 'ATI<CR>'
ModemManager[256038]: <debug> [1633083601.494616] [modem0/modemu/at] <-- '<CR><LF>ERROR<CR><LF>'
ModemManager[256038]: <debug> [1633083601.494643] [modem0/modemu/at] operation failure: 100 (Unknown error)
(ModemManager:256038): GLib-CRITICAL **: 06:20:01.494: g_propagate_error: assertion 'src != NULL' failed
Thread 1 "ModemManager" received signal SIGTRAP, Trace/breakpoint trap.
g_logv (log_domain=0x7ffff77d1071 "GLib", log_level=G_LOG_LEVEL_CRITICAL, format=<optimized out>, args=<optimized out>) at ../glib/gmessages.c:1413
1413 g_private_set (&g_log_depth, GUINT_TO_POINTER (depth));
Missing separate debuginfos, use: dnf debuginfo-install libmbim-1.26.0-2.el9.x86_64 libqmi-1.30.2-1.el9.x86_64
(gdb) bt
#0 g_logv (log_domain=0x7ffff77d1071 "GLib", log_level=G_LOG_LEVEL_CRITICAL, format=<optimized out>, args=<optimized out>) at ../glib/gmessages.c:1413
#1 0x00007ffff77813d3 in g_log (log_domain=<optimized out>, log_level=<optimized out>, format=<optimized out>) at ../glib/gmessages.c:1451
#2 0x000055555561122d in modem_load_device_identifier_finish (self=0x5555557e62d0, res=<optimized out>, error=0x7fffffffd320)
at /usr/src/debug/ModemManager-1.18.2-1.el9.x86_64/src/mm-broadband-modem.c:1168
#3 0x00005555555ea69a in load_device_identifier_ready (self=0x5555557e62d0, res=0x5555557ea6b0, task=task@entry=0x7fffe8011e20 [GTask])
at /usr/src/debug/ModemManager-1.18.2-1.el9.x86_64/src/mm-iface-modem.c:4727
#4 0x00007ffff7951b62 in g_simple_async_result_complete (simple=0x5555557ea6b0 [GSimpleAsyncResult]) at ../gio/gsimpleasyncresult.c:802
#5 0x00005555555d1b0a in at_sequence_parse_response (port=<optimized out>, res=<optimized out>, ctx=ctx@entry=0x5555557ed7f0)
at /usr/src/debug/ModemManager-1.18.2-1.el9.x86_64/src/mm-base-modem-at.c:250
#6 0x00007ffff7951b62 in g_simple_async_result_complete (simple=0x5555557e5440 [GSimpleAsyncResult]) at ../gio/gsimpleasyncresult.c:802
#7 0x00005555556805dc in serial_command_ready (port=<optimized out>, res=<optimized out>, simple=simple@entry=0x5555557e5440 [GSimpleAsyncResult])
at /usr/src/debug/ModemManager-1.18.2-1.el9.x86_64/src/mm-port-serial-at.c:378
#8 0x00007ffff7951b62 in g_simple_async_result_complete (simple=0x5555557d6730 [GSimpleAsyncResult]) at ../gio/gsimpleasyncresult.c:802
#9 0x000055555567fb35 in command_context_complete_and_free (ctx=ctx@entry=0x7fffe800c200, idle=idle@entry=0) at /usr/src/debug/ModemManager-1.18.2-1.el9.x86_64/src/mm-port-serial.c:141
#10 0x0000555555682a96 in port_serial_got_response (self=0x5555557dd4e0 [MMPortSerialAt], parsed_response=0x0, error=0x5555557d5040)
at /usr/src/debug/ModemManager-1.18.2-1.el9.x86_64/src/mm-port-serial.c:755
#11 0x00005555556870d2 in parse_response_buffer (self=<optimized out>) at /usr/src/debug/ModemManager-1.18.2-1.el9.x86_64/src/mm-port-serial.c:934
#12 common_input_available (self=0x5555557dd4e0 [MMPortSerialAt], condition=(G_IO_NVAL | unknown: 0xf762a5c0)) at /usr/src/debug/ModemManager-1.18.2-1.el9.x86_64/src/mm-port-serial.c:1035
#13 0x00007ffff7778f9f in g_main_dispatch (context=0x5555557527c0) at ../glib/gmain.c:3337
#14 g_main_context_dispatch (context=0x5555557527c0) at ../glib/gmain.c:4055
#15 0x00007ffff77cd608 in g_main_context_iterate.constprop.0 (context=0x5555557527c0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4131
#16 0x00007ffff7778563 in g_main_loop_run (loop=0x55555576da60) at ../glib/gmain.c:4329
#17 0x00005555555b7b60 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/ModemManager-1.18.2-1.el9.x86_64/src/main.c:216
2021-10-03 13:13:21 +00:00
Benoît Monin
8755e85d13
sms: increase send timeout to 5 minutes
...
The timeout for sms send operation can exceed the current value, so
increase it to 5 minutes. Timeouts up to 4 minutes have been observed
in the following test scenario:
* Power up the modem and wait for registration.
* Right when the modem is registered, attenuate the rf signal
or remove the antenna.
* Immediately try to send an sms.
Increasing the timeout cover this corner case.
2021-09-23 11:57:59 +02:00
Michal Mazur
5c6b4851c5
modem-qmi,sim-qmi: read personalization retries from Card Status
2021-09-21 14:28:01 +02:00
Michal Mazur
5828af115c
modem-mbim: enter LOCKED state when SIM is incompatible
...
According to MBIM specification, the subscriber state is INITIALIZED
when SIM card is incompatible with enabled modem personalization lock.
This patch introduce additional check for enabled PIN lock in such case
and fixes depersonalization of one lock if several are enabled.
2021-09-21 14:28:01 +02:00
Yegor Yefremov
8b80da152b
Fix -Wmaybe-uninitialized warning
...
Initialize the scheme variable to QMI_VOICE_USS_DATA_CODING_SCHEME_UNKNOWN
to avoid the warning.
2021-09-19 13:07:10 +00:00
Aleksander Morgado
a046c13ad2
sim-mbim: always close UICC channel, even on error
...
Don't close the UICC channel only when the EID was successfully
load. If for any reason it failed, also close the channel.
2021-09-19 09:09:35 +00:00
Aleksander Morgado
27010ea955
sim-mbim: coding style fixes in the EID loading
2021-09-19 09:09:35 +00:00
Som_SP
19a11396dd
sim-mbim: add support for loading eid via mbim protocol
...
Support is added to set eid dbus interface property using
MBIM protocol when the inserted sim is esim.
2021-09-19 09:09:35 +00:00
Aleksander Morgado
aee12967ee
build,meson: simplify build of daemon enums sources
2021-09-16 09:31:25 +02:00
Aleksander Morgado
986fbd5093
build,meson: make PLUGINDIR an absolute path
...
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/433
2021-09-15 05:26:27 +02:00
Iñigo Martínez
ab805e0914
build,meson: Fix suspend/resume option
...
The suspend/resume option does not build properly if journal option
is disabled. This is beacause the journal option is check to add
suspend/resume code.
It has been fixed by replacing journal option check by the
suspend/resume option.
2021-09-10 08:39:37 +00:00
Aleksander Morgado
15671dc137
core: remove execution bit from file modes in source files
2021-09-10 10:36:19 +02:00
Aleksander Morgado
34e671f41c
broadband-modem-qmi: don't error out on empty call list
...
Only error out if the required TLVs are missing.
2021-09-08 10:26:04 +02:00
Aleksander Morgado
f2901446e0
iface-modem-voice: avoid warning with -Wincompatible-pointer-types
...
../src/mm-iface-modem-voice.c: In function ‘mm_iface_modem_voice_reload_all_calls’:
../src/mm-iface-modem-voice.c:2549:64: warning: passing argument 2 of ‘((MMIfaceModemVoice *)g_type_interface_peek((void *)((GTypeInstance *)self)->g_class, mm_iface_modem_voice_get_type()))->load_call_list’ from incompatible pointer type [-Wincompatible-pointer-types]
2549 | reload_all_calls_ready,
| ^~~~~~~~~~~~~~~~~~~~~~
| |
| void (*)(MMIfaceModemVoice *, GAsyncResult *, GTask *) {aka void (*)(struct _MMIfaceModemVoice *, struct _GAsyncResult *, struct _GTask *)}
../src/mm-iface-modem-voice.c:2549:64: note: expected ‘GAsyncReadyCallback’ {aka ‘void (*)(struct _GObject *, struct _GAsyncResult *, void *)’} but argument is of type ‘void (*)(MMIfaceModemVoice *, GAsyncResult *, GTask *)’ {aka ‘void (*)(struct _MMIfaceModemVoice *, struct _GAsyncResult *, struct _GTask *)’}
2021-09-08 10:14:26 +02:00
Aleksander Morgado
03b75c85d0
broadband-modem-qmi: refactor process_get_all_call_info() to avoid handling the GTask
...
The process_get_all_call_info() was not completing the input GTask on
every possible code path (e.g. when remote party number or call info
wasn't available).
The method is now updated to avoid processing the GTask itself,
instead it will attempt to build the call list and return a GError on
any kind of failure.
2021-09-08 10:12:20 +02:00
Dylan Van Assche
15d66197b3
mm-broadband-modem-qmi: add AT URCs fall back for calls
...
Enable AT URCs for calls on top of QMI Voice indications
for AT+QMI devices only. Some AT+QMI devices send unreliable
QMI indications when the host is resuming. In such cases,
AT URCs can be used as a fall back to make calls reliable.
While AT+QMI devices relied before on AT commands to load
call list information and handle AT URCs for async updates,
this is now handled through QMI by forcefully reloading the
call list instead of processing the AT URCs.
This approach is disabled by default through the
MM_IFACE_MODEM_VOICE_INDICATION_CALL_LIST_RELOAD_ENABLED property.
This property is set to true in case of QMI modems.
2021-09-08 10:02:51 +02:00
Dylan Van Assche
92ad38432c
mm-modem-helpers: only parse calls in voice mode
...
Calls in a CLCC response in data-only or fax-only mode
do not count as actuall calls.
2021-09-08 07:59:16 +00:00
Iñigo Martínez
77d1c24361
build: Port to meson
...
meson is a build system focused on speed an ease of use, which
helps speeding up the software development. This patch adds meson
support along autotools.
2021-09-07 10:55:43 +00:00
Aleksander Morgado
7177eeea99
build: use WITH_QRTR exclusively to check for QRTR support
...
The user may request to disable QRTR support using `--without-qrtr`
even if libqmi has QRTR support.
2021-08-31 15:33:15 +02:00
Andrew Lassalle
5af93dbfee
broadband-modem-mbim: Fix password on initial EPS bearer settings
...
Currently, we are sending the username twice instead of username and
password. Fix the password value.
2021-08-27 09:42:15 -07:00
Aleksander Morgado
965c43fec7
port-qmi: limit MTU to max RMNET packet size
...
The maximum MTU that the master interface can support should be less
or equal than RMNET_MAX_PACKET_SIZE, as defined in the
`rmnet_private.h` file in the linux sources (not a public header).
Only applicable to RMNET link management (i.e. not to qmi_wwan
add_mux/del_mux).
Fixes https://gitlab.freedesktop.org/mobile-broadband/libqmi/-/issues/71
2021-08-09 12:22:26 +00:00
Aleksander Morgado
5adc469701
port-qmi: only consider port setup not needed if data modes match
...
When not requesting multiplexing support, only assume we don't need
any additional setup if multiplexing is disabled AND if the data modes
match between kernel and device.
This fixes the connection setup in MSM8916 (rpmsg+bam/dmux).
2021-08-09 12:22:26 +00:00
Aleksander Morgado
185e492c0a
core: new '--test-multiplex-requested' option
...
The new option will change the default setting in MBIM and QMI bearers
to "request" when no explicit "multiplex" configuration is given by
the user.
This option will help test the multiplexing support in the modems
before it's made a default in a future release.
2021-08-09 12:22:26 +00:00