aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/mm-modem-helpers-mbim.c28
-rw-r--r--src/mm-modem-helpers-mbim.h2
-rw-r--r--src/mm-modem-helpers-qmi.c25
-rw-r--r--src/mm-modem-helpers-qmi.h2
4 files changed, 57 insertions, 0 deletions
diff --git a/src/mm-modem-helpers-mbim.c b/src/mm-modem-helpers-mbim.c
index c907b22e..be9cd886 100644
--- a/src/mm-modem-helpers-mbim.c
+++ b/src/mm-modem-helpers-mbim.c
@@ -207,6 +207,34 @@ mm_3gpp_network_info_list_from_mbim_providers (const MbimProvider *const *provid
/*****************************************************************************/
+MbimPinType
+mbim_pin_type_from_mm_modem_3gpp_facility (MMModem3gppFacility facility)
+{
+ switch (facility) {
+ case MM_MODEM_3GPP_FACILITY_NET_PERS:
+ return MBIM_PIN_TYPE_NETWORK_PIN;
+ case MM_MODEM_3GPP_FACILITY_NET_SUB_PERS:
+ return MBIM_PIN_TYPE_NETWORK_SUBSET_PIN;
+ case MM_MODEM_3GPP_FACILITY_PROVIDER_PERS:
+ return MBIM_PIN_TYPE_SERVICE_PROVIDER_PIN;
+ case MM_MODEM_3GPP_FACILITY_CORP_PERS:
+ return MBIM_PIN_TYPE_CORPORATE_PIN;
+ case MM_MODEM_3GPP_FACILITY_SIM:
+ return MBIM_PIN_TYPE_PIN1;
+ case MM_MODEM_3GPP_FACILITY_FIXED_DIALING:
+ return MBIM_PIN_TYPE_PIN2;
+ case MM_MODEM_3GPP_FACILITY_PH_SIM:
+ return MBIM_PIN_TYPE_DEVICE_SIM_PIN;
+ case MM_MODEM_3GPP_FACILITY_PH_FSIM:
+ return MBIM_PIN_TYPE_DEVICE_FIRST_SIM_PIN;
+ case MM_MODEM_3GPP_FACILITY_NONE:
+ default:
+ return MBIM_PIN_TYPE_UNKNOWN;
+ }
+}
+
+/*****************************************************************************/
+
GError *
mm_mobile_equipment_error_from_mbim_nw_error (MbimNwError nw_error)
{
diff --git a/src/mm-modem-helpers-mbim.h b/src/mm-modem-helpers-mbim.h
index c01c7532..bb8c8648 100644
--- a/src/mm-modem-helpers-mbim.h
+++ b/src/mm-modem-helpers-mbim.h
@@ -38,6 +38,8 @@ MMModem3gppNetworkAvailability mm_modem_3gpp_network_availability_from_mbim_prov
GList *mm_3gpp_network_info_list_from_mbim_providers (const MbimProvider *const *providers, guint n_providers);
+MbimPinType mbim_pin_type_from_mm_modem_3gpp_facility (MMModem3gppFacility facility);
+
GError *mm_mobile_equipment_error_from_mbim_nw_error (MbimNwError nw_error);
MMBearerAllowedAuth mm_bearer_allowed_auth_from_mbim_auth_protocol (MbimAuthProtocol auth_protocol);
diff --git a/src/mm-modem-helpers-qmi.c b/src/mm-modem-helpers-qmi.c
index ef1368d5..4705bd15 100644
--- a/src/mm-modem-helpers-qmi.c
+++ b/src/mm-modem-helpers-qmi.c
@@ -2262,3 +2262,28 @@ mm_qmi_uim_get_configuration_output_parse (gpointer
}
return TRUE;
}
+
+/*****************************************************************************/
+
+QmiUimCardApplicationPersonalizationFeature
+qmi_personalization_feature_from_mm_modem_3gpp_facility (MMModem3gppFacility facility)
+{
+ switch (facility) {
+ case MM_MODEM_3GPP_FACILITY_NET_PERS:
+ return QMI_UIM_CARD_APPLICATION_PERSONALIZATION_FEATURE_GW_NETWORK;
+ case MM_MODEM_3GPP_FACILITY_NET_SUB_PERS:
+ return QMI_UIM_CARD_APPLICATION_PERSONALIZATION_FEATURE_GW_NETWORK_SUBSET;
+ case MM_MODEM_3GPP_FACILITY_PROVIDER_PERS:
+ return QMI_UIM_CARD_APPLICATION_PERSONALIZATION_FEATURE_GW_SERVICE_PROVIDER;
+ case MM_MODEM_3GPP_FACILITY_CORP_PERS:
+ return QMI_UIM_CARD_APPLICATION_PERSONALIZATION_FEATURE_GW_CORPORATE;
+ case MM_MODEM_3GPP_FACILITY_PH_SIM:
+ return QMI_UIM_CARD_APPLICATION_PERSONALIZATION_FEATURE_GW_UIM;
+ case MM_MODEM_3GPP_FACILITY_NONE:
+ case MM_MODEM_3GPP_FACILITY_SIM:
+ case MM_MODEM_3GPP_FACILITY_FIXED_DIALING:
+ case MM_MODEM_3GPP_FACILITY_PH_FSIM:
+ default:
+ return QMI_UIM_CARD_APPLICATION_PERSONALIZATION_FEATURE_UNKNOWN;
+ }
+}
diff --git a/src/mm-modem-helpers-qmi.h b/src/mm-modem-helpers-qmi.h
index 15056dbf..29d014d3 100644
--- a/src/mm-modem-helpers-qmi.h
+++ b/src/mm-modem-helpers-qmi.h
@@ -196,4 +196,6 @@ gboolean mm_qmi_uim_get_configuration_output_parse (gpointer
MMModem3gppFacility *o_lock,
GError **error);
+QmiUimCardApplicationPersonalizationFeature qmi_personalization_feature_from_mm_modem_3gpp_facility (MMModem3gppFacility facility);
+
#endif /* MM_MODEM_HELPERS_QMI_H */