diff options
author | Aleksander Morgado <aleksander@lanedo.com> | 2012-09-13 16:04:24 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@lanedo.com> | 2012-09-13 16:06:51 +0200 |
commit | 40816e5c90b73fef238da525af91b69657ceb203 (patch) | |
tree | 91694a79a6d72152b2738c4d2d1e1a710fbee4fc /src | |
parent | 4b906f7996256bf16453bc05b4b5444f8a692411 (diff) |
broadband-modem-qmi: don't update access technology from operator info
The operator info seems to show what the operator can do; it doesn't show the
current access technology.
Diffstat (limited to 'src')
-rw-r--r-- | src/mm-broadband-modem-qmi.c | 48 |
1 files changed, 6 insertions, 42 deletions
diff --git a/src/mm-broadband-modem-qmi.c b/src/mm-broadband-modem-qmi.c index 9a7ba048..cd841169 100644 --- a/src/mm-broadband-modem-qmi.c +++ b/src/mm-broadband-modem-qmi.c @@ -3121,8 +3121,10 @@ common_process_serving_system_3gpp (MMBroadbandModemQmi *self, /* Report new registration states */ mm_iface_modem_3gpp_update_cs_registration_state (MM_IFACE_MODEM_3GPP (self), mm_cs_registration_state); mm_iface_modem_3gpp_update_ps_registration_state (MM_IFACE_MODEM_3GPP (self), mm_ps_registration_state); - mm_iface_modem_3gpp_update_access_technologies (MM_IFACE_MODEM_3GPP (self), mm_access_technologies); mm_iface_modem_3gpp_update_location (MM_IFACE_MODEM_3GPP (self), lac, cid); + + /* Note: don't update access technologies with the ones retrieved here; they + * are not really the 'current' access technologies */ } static void @@ -3242,7 +3244,6 @@ process_common_info (QmiNasServiceStatus service_status, static gboolean process_gsm_info (QmiMessageNasGetSystemInfoOutput *response_output, QmiIndicationNasSystemInfoOutput *indication_output, - MMModemAccessTechnology *mm_access_technologies, MMModem3gppRegistrationState *mm_cs_registration_state, MMModem3gppRegistrationState *mm_ps_registration_state, guint16 *mm_lac, @@ -3263,8 +3264,6 @@ process_gsm_info (QmiMessageNasGetSystemInfoOutput *response_output, gboolean network_id_valid; const gchar *mcc; const gchar *mnc; - gboolean egprs_support_valid; - gboolean egprs_support; g_assert ((response_output != NULL && indication_output == NULL) || (response_output == NULL && indication_output != NULL)); @@ -3342,17 +3341,12 @@ process_gsm_info (QmiMessageNasGetSystemInfoOutput *response_output, return FALSE; } - *mm_access_technologies |= MM_MODEM_ACCESS_TECHNOLOGY_GSM; - if (egprs_support_valid && egprs_support) - *mm_access_technologies |= MM_MODEM_ACCESS_TECHNOLOGY_EDGE; - return TRUE; } static gboolean process_wcdma_info (QmiMessageNasGetSystemInfoOutput *response_output, QmiIndicationNasSystemInfoOutput *indication_output, - MMModemAccessTechnology *mm_access_technologies, MMModem3gppRegistrationState *mm_cs_registration_state, MMModem3gppRegistrationState *mm_ps_registration_state, guint16 *mm_lac, @@ -3454,36 +3448,12 @@ process_wcdma_info (QmiMessageNasGetSystemInfoOutput *response_output, return FALSE; } - *mm_access_technologies |= MM_MODEM_ACCESS_TECHNOLOGY_UMTS; - if (hs_service_valid) { - switch (hs_service) { - case QMI_NAS_WCDMA_HS_SERVICE_HSDPA_HSUPA_UNSUPPORTED: - break; - case QMI_NAS_WCDMA_HS_SERVICE_HSDPA_SUPPORTED: - *mm_access_technologies |= MM_MODEM_ACCESS_TECHNOLOGY_HSDPA; - break; - case QMI_NAS_WCDMA_HS_SERVICE_HSUPA_SUPPORTED: - *mm_access_technologies |= MM_MODEM_ACCESS_TECHNOLOGY_HSUPA; - break; - case QMI_NAS_WCDMA_HS_SERVICE_HSDPA_HSUPA_SUPPORTED: - *mm_access_technologies |= MM_MODEM_ACCESS_TECHNOLOGY_HSPA; - break; - case QMI_NAS_WCDMA_HS_SERVICE_HSDPA_PLUS_SUPPORTED: - case QMI_NAS_WCDMA_HS_SERVICE_HSDPA_PLUS_HSUPA_SUPPORTED: - case QMI_NAS_WCDMA_HS_SERVICE_DC_HSDPA_PLUS_SUPPORTED: - case QMI_NAS_WCDMA_HS_SERVICE_DC_HSDPA_PLUS_HSUPA_SUPPORTED: - *mm_access_technologies |= MM_MODEM_ACCESS_TECHNOLOGY_HSPA_PLUS; - break; - } - } - return TRUE; } static gboolean process_lte_info (QmiMessageNasGetSystemInfoOutput *response_output, QmiIndicationNasSystemInfoOutput *indication_output, - MMModemAccessTechnology *mm_access_technologies, MMModem3gppRegistrationState *mm_cs_registration_state, MMModem3gppRegistrationState *mm_ps_registration_state, guint16 *mm_lac, @@ -3579,7 +3549,6 @@ process_lte_info (QmiMessageNasGetSystemInfoOutput *response_output, return FALSE; } - *mm_access_technologies |= MM_MODEM_ACCESS_TECHNOLOGY_LTE; return TRUE; } @@ -3588,14 +3557,12 @@ common_process_system_info_3gpp (MMBroadbandModemQmi *self, QmiMessageNasGetSystemInfoOutput *response_output, QmiIndicationNasSystemInfoOutput *indication_output) { - MMModemAccessTechnology access_technologies; MMModem3gppRegistrationState cs_registration_state; MMModem3gppRegistrationState ps_registration_state; guint16 lac; guint32 cid; gchar *operator_id; - access_technologies = 0; ps_registration_state = MM_MODEM_3GPP_REGISTRATION_STATE_UNKNOWN; cs_registration_state = MM_MODEM_3GPP_REGISTRATION_STATE_UNKNOWN; lac = 0; @@ -3607,21 +3574,18 @@ common_process_system_info_3gpp (MMBroadbandModemQmi *self, * The first one giving results will be the one reported. */ if (!process_lte_info (response_output, indication_output, - &access_technologies, &cs_registration_state, &ps_registration_state, &lac, &cid, &operator_id) && !process_wcdma_info (response_output, indication_output, - &access_technologies, &cs_registration_state, &ps_registration_state, &lac, &cid, &operator_id) && !process_gsm_info (response_output, indication_output, - &access_technologies, &cs_registration_state, &ps_registration_state, &lac, @@ -3639,7 +3603,6 @@ common_process_system_info_3gpp (MMBroadbandModemQmi *self, /* Report new registration states */ mm_iface_modem_3gpp_update_cs_registration_state (MM_IFACE_MODEM_3GPP (self), cs_registration_state); mm_iface_modem_3gpp_update_ps_registration_state (MM_IFACE_MODEM_3GPP (self), ps_registration_state); - mm_iface_modem_3gpp_update_access_technologies (MM_IFACE_MODEM_3GPP (self), access_technologies); mm_iface_modem_3gpp_update_location (MM_IFACE_MODEM_3GPP (self), lac, cid); } @@ -4034,8 +3997,9 @@ common_process_serving_system_cdma (MMBroadbandModemQmi *self, nid); mm_iface_modem_cdma_update_evdo_registration_state (MM_IFACE_MODEM_CDMA (self), mm_evdo_registration_state); - mm_iface_modem_cdma_update_access_technologies (MM_IFACE_MODEM_CDMA (self), - mm_access_technologies); + + /* Note: don't update access technologies with the ones retrieved here; they + * are not really the 'current' access technologies */ } static void |