diff options
author | Aleksander Morgado <aleksander@aleksander.es> | 2020-08-01 09:59:54 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@aleksander.es> | 2020-08-28 14:59:06 +0000 |
commit | 7c76450c15555204d14a8ce0550dc2c639d288b3 (patch) | |
tree | 7f68b0afa45b0c32d793c2cd114e263d84ae9b19 /src/mm-shared-qmi.h | |
parent | 48ca1aea3c12262307c2ce13fbdedb1d91c640c6 (diff) |
shared-qmi: implement SIM slots loading during initialization
This commit introduces Multi-SIM Single-Standby support in all QMI
capable devices that support multiple SIM slots.
The 'UIM Get Slot Status' method is used to list all available
physical slots as well as the availability of SIM cards in the
different slots. This method also provides UICC already, so the SIM
objects are created early and exposed early in DBus.
Once all slots are listed, the logic will briefly make each of the
available SIM cards active in order to read additional settings like
IMSI, MCCMNC or the Operator name. This brief switching is required
because in a Single-Standby setup only one SIM can be active at any
given time.
The last slot to probe is always the one that was active originally,
making sure that the modem initialization logic can go on with the
correct SIM slot.
Diffstat (limited to 'src/mm-shared-qmi.h')
-rw-r--r-- | src/mm-shared-qmi.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/mm-shared-qmi.h b/src/mm-shared-qmi.h index 093896e0..4a9567b8 100644 --- a/src/mm-shared-qmi.h +++ b/src/mm-shared-qmi.h @@ -163,7 +163,14 @@ void mm_shared_qmi_setup_carrier_config (MMIfaceMode gboolean mm_shared_qmi_setup_carrier_config_finish (MMIfaceModem *self, GAsyncResult *res, GError **error); - +void mm_shared_qmi_load_sim_slots (MMIfaceModem *self, + GAsyncReadyCallback callback, + gpointer user_data); +gboolean mm_shared_qmi_load_sim_slots_finish (MMIfaceModem *self, + GAsyncResult *res, + GPtrArray **sim_slots, + guint *primary_sim_slot, + GError **error); /* Shared QMI location support */ void mm_shared_qmi_location_load_capabilities (MMIfaceModemLocation *self, |