Age | Commit message (Collapse) | Author |
|
Thread 0(id: 4915) CRASHED [ SIGABRT@0x0000000000000000 ]
0x00007b0f6732fa3f (libc.so.6 - pthread_kill.c: 44) __pthread_kill_implementation
0x00007b0f672e4c6c (libc.so.6 - raise.c: 26) raise
0x00007b0f672d0462 (libc.so.6 - abort.c: 79) abort
0x00007b0f67323347 (libc.so.6 - libc_fatal.c: 155) __libc_message
0x00007b0f67339929 (libc.so.6 - malloc.c: 5664) malloc_printerr
0x00007b0f6733b5cb (libc.so.6 - malloc.c: 4439) _int_free
0x00007b0f6733e279 (libc.so.6 - malloc.c: 3391) __libc_free
0x00007b0f67abcabe (libglib-2.0.so.0 - gerror.c: 856) g_error_free
0x000059fc4262623e (ModemManager - glib-autocleanups.h: 54) glib_autoptr_clear_GError
0x000059fc4262623e (ModemManager - glib-autocleanups.h: 54) glib_autoptr_cleanup_GError
0x000059fc4262623e (ModemManager - mm-port-qmi.c: 1501) set_data_format_ready
0x00007b0f67985e57 (libgio-2.0.so.0 - gtask.c: 1309) g_task_return_now
0x00007b0f67984e21 (libgio-2.0.so.0 - gtask.c: 1378) g_task_return
0x00007b0f677f7107 (libqmi-glib.so.5 - qmi-wda.c: 4761) set_data_format_ready
0x00007b0f67972329 (libgio-2.0.so.0 - gsimpleasyncresult.c: 804) g_simple_async_result_complete
0x00007b0f6797240a (libgio-2.0.so.0 - gsimpleasyncresult.c: 816) complete_in_idle_cb
0x00007b0f67ad17a4 (libglib-2.0.so.0 - gmain.c: 3460) g_main_dispatch
0x00007b0f67ad17a4 (libglib-2.0.so.0 - gmain.c: 4200) g_main_context_dispatch
0x00007b0f67ad1ac3 (libglib-2.0.so.0 - gmain.c: 4276) g_main_context_iterate
0x00007b0f67ad1d41 (libglib-2.0.so.0 - gmain.c: 4479) g_main_loop_run
0x000059fc425657df (ModemManager - main.c: 236) main
0x00007b0f672d06c5 (libc.so.6 - libc_start_call_main.h: 58) __libc_start_call_main
0x00007b0f672d0781 (libc.so.6 - libc-start.c: 389) __libc_start_main_impl
0x000059fc42565130 (ModemManager) _start
0x00007fffdea098c7
|
|
Signed-off-by: Lukas Voegl <lvoegl@tdt.de>
|
|
This change is an attempt to behave a bit better with modems when
multiple consecutive enable/full-power/disable/low-power operations
are scheduled in a modem.
MM will automatically throttle these requests so that the power state
updates are spaced in time, with at least 2 full seconds between
them.
|
|
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/802
|
|
When the modem is unlocked, the value of PIN type changes but the
PIN state is still LOCKED because PIN2 lock is always active.
(fixes commit 6359cc93fe84fbb6084285498b007fe2e652e9e1)
|
|
Detection of carrier lock change is required to notify upper layers when
the modem gets locked to specific network or unlocked. Previous
implementation was removed because it caused modem reprobe every time
the SIM card was unlocked (19fd9c634b8f2876694d18a77a3b686a0c08bf34).
|
|
irrespective of success or failure of the operation
|
|
This reverts commit cc78a6439f71e3f58b97972d171b966a42476a98.
Ignoring profile updates for 100ms after our own updates is now
implemented in a generic way for all protocols, not just for QMI.
|
|
own updates"
This reverts commit f96664a159ebcff922e7d9fad170deefe65d1762.
Ignoring profile updates for 100ms after our own updates is now
implemented in a generic way for all protocols, not just for QMI.
|
|
our own operations
|
|
|
|
Kind of defeats the purpose of the quick suspend/resume, but I can see
how this could be useful.
E.g. in ChromeOS the modems are put in low power mode during suspend
(triggered by the connection manager) and the quick suspend/resume is
also enabled by default for a quicker resume process that doesn't
involve full modem reprobe.
|
|
Will request to put the modems in low power mode upon system suspend.
Based on an earlier approach from Jack Song and Nero Zhang, see
https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1050
|
|
When the modem is in a failed state because of a SIM-related error,
like a missing SIM, or if the modem is SIM-locked, allow the
Location interface to initialize and be enabled anyway.
This allows someone without a SIM to use the GPS, which does not
particularly require a phone subscription. It also allows
someone with a SIM to use the GPS even if the SIM is still
locked.
This patch was reworked, while keeping the original idea, by:
Aleksander Morgado <aleksander@aleksander.es>
Fixes #183
|
|
This reverts commit 23033217de26fb91734fed3b999173f151195040.
This was mixed up in the wrong branch.
|
|
Based on an earlier approach from Jack Song and Nero Zhang, see
https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1050
|
|
A7600E-H prints read sms response very slow. Having a lot of SMS can lead to timeout expiration and errors during next requests
|
|
|
|
A7600E-H sends +CPIN: URC on startup.
The URC can be treated by ModemManager as a response to other command, what leads to errors during ModemManager initialization
|
|
|
|
|
|
SIMCOM A760xE-H modems can answer to AT+CRSM=176,28589,0,0,4 request in 10s or more, so use rather big timeout (20s)
|
|
SIM A7600E-H sends only 3 parameters in CGDCONT read response (+CGDCONT: 1,"IP","nate.sktelecom.com").
The parsing regex requeres 4 parameters, so the response is not matched.
In addition fourth parameter is not used by parsing code.
|
|
|
|
The process doing the unlock required checks may need a lot of retries
e.g. to decide whether a SIM card is available or not. If we do a
quick SIM eject, so the unlock required check starts looping, and then
insert the SIM again, we expect the loop to be cancelled right away,
so that the new modem object can be reprobed without any interference
from the old modem object.
We now take the modem-wide cancellable and bind it to the GTask in
mm_iface_modem_update_lock_info(), and we pass it down to every
sub-step of the async logic in the operation. We also plug the
cancellable to the delayed retries in the interface logic, to allow
aborting the checks right away
|
|
Previous patch for hotswap detection caused the modem to be reprobed
after unlocking or changing PIN for SIM card lock (commit 7b878765c6c8).
This change allows to differentiate between hotswap and PIN lock events.
|
|
Seems to happen with e.g. the Fibocom FM350:
# mmcli -b 2
------------------------------------
IPv6 configuration | method: static
| address: 2607:fb90:dd16:d38a:ac39:89f1:67a7:5a9d
| prefix: 128
| gateway: 2607:fb90:dd16:d38a:ac39:89f1:67a7:5a01
| dns: fd00:976a::9, fd00:976a::10
| mtu: 1436
|
|
|
|
|
|
Removed code was introduced as a part of carrier lock support but it
affects also unlocking SIM card locks which is incorrect.
(carrier lock support commit: e3a1206c57db685065dfd0eb4efae5083dd5cef5)
|
|
Including logic to set low power mode during an EPS initial bearer
settings update.
|
|
Basically to flag that we don't support QMI explicitly, so that it's
not even attempted.
|
|
There is no released firmware version with proper support for
multiplexing yet.
|
|
|
|
|
|
There are no udev rules in the new mtk plugin for now.
|
|
These rules apply to modems managed by the mtk-legacy plugin.
|
|
Add MTK plugin for mtk_t7xx platform which support MBIM interface.
|
|
Output fields like ICCID or IMSI are optional in MBIM Subscriber Ready
Status v3 operations. We should not assume they are set to a valid
value when the operation succeeds.
2023-10-27T10:24:16.512461Z <inf> [modem0] started checking for basic SIM details...
2023-10-27T10:24:16.516104Z <err> mm_3gpp_parse_iccid: assertion 'raw_iccid != NULL' failed
|
|
Ensure that the cdc-wdm port probing task is canceled if the
modem drops off the bus before the task completes.
This prevents the task from preventing other port probing tasks from starting.
|
|
Based on the WDS client being connected, we'll convert this error into
"IPv4 only allowed" or "IPv6 only allowed".
|
|
Just a few key translations for now.
|
|
We want to ensure that all errors reported via DBus operations are
normalized to MM-specific errors.
We don't want to return QMI or MBIM specific errors, as those are
protocol specific and we don't want DBus clients to need to rely on
knowing which is the protocol in use by the device.
|
|
The connection error exposed in the DBus interface should be an error
defined in the ModemManager API, and therefore it should be normalized
before being exposed.
This was already being done by limiting the exposure to MM specific
errors, but now we also try to normalize QMI or MBIM errors into MM
specific ones.
|
|
This new error type will be used to report errors in the carrier lock
operations performed through ModemManager.
They have a one to one mapping to the MBIM status specific errors.
|
|
We register translations for QMI core and QMI protocol errors. These
translations are a best-effort, and they are not meant to be
exhaustive.
The original error description is included in the translated GError,
so that the details of the issue are not lost.
|
|
|
|
|
|
We register translations for MBIM core, MBIM protocol and MBIM status
errors. These translations are a best-effort, and they are not meant
to be exhaustive.
The original error description is included in the translated GError,
so that the details of the issue are not lost.
|
|
Moved to the end of the file, we'll add all new error translations
together.
|