aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mm-broadband-modem-qmi.c11
-rw-r--r--src/mm-modem-helpers-qmi.c22
-rw-r--r--src/mm-modem-helpers-qmi.h2
-rw-r--r--src/tests/test-modem-helpers-qmi.c72
4 files changed, 16 insertions, 91 deletions
diff --git a/src/mm-broadband-modem-qmi.c b/src/mm-broadband-modem-qmi.c
index c02a7d1b..cf635785 100644
--- a/src/mm-broadband-modem-qmi.c
+++ b/src/mm-broadband-modem-qmi.c
@@ -444,21 +444,10 @@ load_current_capabilities_get_system_selection_preference_ready (QmiClientNas *c
mm_dbg ("Couldn't get system selection preference: %s", error->message);
g_error_free (error);
} else {
- /* Get Mode Preference */
qmi_message_nas_get_system_selection_preference_output_get_mode_preference (
output,
&ctx->capabilities_context.nas_ssp_mode_preference_mask,
NULL);
- /* Get Band Preference */
- qmi_message_nas_get_system_selection_preference_output_get_band_preference (
- output,
- &ctx->capabilities_context.nas_ssp_band_preference_mask,
- NULL);
- /* Get LTE Band Preference */
- qmi_message_nas_get_system_selection_preference_output_get_lte_band_preference (
- output,
- &ctx->capabilities_context.nas_ssp_lte_band_preference_mask,
- NULL);
}
if (output)
diff --git a/src/mm-modem-helpers-qmi.c b/src/mm-modem-helpers-qmi.c
index c1c36bb3..f8832a73 100644
--- a/src/mm-modem-helpers-qmi.c
+++ b/src/mm-modem-helpers-qmi.c
@@ -1225,8 +1225,6 @@ mm_modem_capability_from_qmi_capabilities_context (MMQmiCapabilitiesContext *ctx
{
MMModemCapability tmp = MM_MODEM_CAPABILITY_NONE;
gchar *nas_ssp_mode_preference_str;
- gchar *nas_ssp_band_preference_str;
- gchar *nas_ssp_lte_band_preference_str;
gchar *nas_tp_str;
gchar *dms_capabilities_str;
gchar *tmp_str;
@@ -1235,12 +1233,6 @@ mm_modem_capability_from_qmi_capabilities_context (MMQmiCapabilitiesContext *ctx
* and if not available it falls back to using Band Preference TLVs */
if (ctx->nas_ssp_mode_preference_mask)
tmp = mm_modem_capability_from_qmi_rat_mode_preference (ctx->nas_ssp_mode_preference_mask);
- else if (ctx->nas_ssp_band_preference_mask) {
- tmp = mm_modem_capability_from_qmi_band_preference (ctx->nas_ssp_band_preference_mask);
- /* Just the presence of the LTE band preference tells us it's LTE */
- if (ctx->nas_ssp_lte_band_preference_mask)
- tmp |= MM_MODEM_CAPABILITY_LTE;
- }
/* If no value retrieved from SSP, check TP. We only process TP
* values if not 'auto'. */
@@ -1259,34 +1251,20 @@ mm_modem_capability_from_qmi_capabilities_context (MMQmiCapabilitiesContext *ctx
else
tmp &= ctx->dms_capabilities;
- /* Modems which have 'LTE' capability reported by DMS will always have it
- * reported in 'current capabilities', even if it may not be currently
- * allowed (i.e. not selected in 'allowed-modes') */
- if (ctx->dms_capabilities & MM_MODEM_CAPABILITY_LTE)
- tmp |= MM_MODEM_CAPABILITY_LTE;
-
/* Log about the logic applied */
nas_ssp_mode_preference_str = qmi_nas_rat_mode_preference_build_string_from_mask (ctx->nas_ssp_mode_preference_mask);
- nas_ssp_band_preference_str = qmi_nas_band_preference_build_string_from_mask (ctx->nas_ssp_band_preference_mask);
- nas_ssp_lte_band_preference_str = qmi_nas_lte_band_preference_build_string_from_mask (ctx->nas_ssp_band_preference_mask);
nas_tp_str = qmi_nas_radio_technology_preference_build_string_from_mask (ctx->nas_tp_mask);
dms_capabilities_str = mm_modem_capability_build_string_from_mask (ctx->dms_capabilities);
tmp_str = mm_modem_capability_build_string_from_mask (tmp);
mm_dbg ("Current capabilities built: '%s'\n"
" SSP mode preference: '%s'\n"
- " SSP band preference: '%s'\n"
- " SSP LTE band preference: '%s'\n"
" TP: '%s'\n"
" DMS Capabilities: '%s'",
tmp_str,
nas_ssp_mode_preference_str ? nas_ssp_mode_preference_str : "unknown",
- nas_ssp_band_preference_str ? nas_ssp_band_preference_str : "unknown",
- nas_ssp_lte_band_preference_str ? nas_ssp_lte_band_preference_str : "unknown",
nas_tp_str ? nas_tp_str : "unknown",
dms_capabilities_str);
g_free (nas_ssp_mode_preference_str);
- g_free (nas_ssp_band_preference_str);
- g_free (nas_ssp_lte_band_preference_str);
g_free (nas_tp_str);
g_free (dms_capabilities_str);
g_free (tmp_str);
diff --git a/src/mm-modem-helpers-qmi.h b/src/mm-modem-helpers-qmi.h
index eecde221..63b05311 100644
--- a/src/mm-modem-helpers-qmi.h
+++ b/src/mm-modem-helpers-qmi.h
@@ -100,8 +100,6 @@ QmiWdsAuthentication mm_bearer_allowed_auth_to_qmi_authentication (MMBearerAllow
typedef struct {
/* NAS System Selection Preference */
QmiNasRatModePreference nas_ssp_mode_preference_mask;
- QmiNasBandPreference nas_ssp_band_preference_mask;
- QmiNasLteBandPreference nas_ssp_lte_band_preference_mask;
/* NAS Technology Preference */
QmiNasRadioTechnologyPreference nas_tp_mask;
/* DMS Capabilities */
diff --git a/src/tests/test-modem-helpers-qmi.c b/src/tests/test-modem-helpers-qmi.c
index 178591f6..50b2ed0b 100644
--- a/src/tests/test-modem-helpers-qmi.c
+++ b/src/tests/test-modem-helpers-qmi.c
@@ -64,33 +64,23 @@ test_uml290 (void)
/* QCDM -> CDMA/EVDO */
ctx.nas_ssp_mode_preference_mask = (QMI_NAS_RAT_MODE_PREFERENCE_CDMA_1X |
QMI_NAS_RAT_MODE_PREFERENCE_CDMA_1XEVDO);
- ctx.nas_ssp_band_preference_mask = 0; /* TODO: Add proper value */
- ctx.nas_ssp_lte_band_preference_mask = 0; /* TODO: Add proper value */
ctx.nas_tp_mask = 0; /* Unsupported */
ctx.dms_capabilities = (MM_MODEM_CAPABILITY_GSM_UMTS |
MM_MODEM_CAPABILITY_CDMA_EVDO |
MM_MODEM_CAPABILITY_LTE);
- test_capabilities_expected (&ctx,
- (MM_MODEM_CAPABILITY_CDMA_EVDO |
- MM_MODEM_CAPABILITY_LTE));
+ test_capabilities_expected (&ctx, MM_MODEM_CAPABILITY_CDMA_EVDO);
/* QCDM -> GSM/UMTS */
ctx.nas_ssp_mode_preference_mask = (QMI_NAS_RAT_MODE_PREFERENCE_GSM |
QMI_NAS_RAT_MODE_PREFERENCE_UMTS);
- ctx.nas_ssp_band_preference_mask = 0; /* TODO: Add proper value */
- ctx.nas_ssp_lte_band_preference_mask = 0; /* TODO: Add proper value */
ctx.nas_tp_mask = 0; /* Unsupported */
ctx.dms_capabilities = (MM_MODEM_CAPABILITY_GSM_UMTS |
MM_MODEM_CAPABILITY_CDMA_EVDO |
MM_MODEM_CAPABILITY_LTE);
- test_capabilities_expected (&ctx,
- (MM_MODEM_CAPABILITY_GSM_UMTS |
- MM_MODEM_CAPABILITY_LTE));
+ test_capabilities_expected (&ctx, MM_MODEM_CAPABILITY_GSM_UMTS);
/* QCDM -> Automatic */
ctx.nas_ssp_mode_preference_mask = 0;
- ctx.nas_ssp_band_preference_mask = 0; /* TODO: Add proper value */
- ctx.nas_ssp_lte_band_preference_mask = 0; /* TODO: Add proper value */
ctx.nas_tp_mask = 0; /* Unsupported */
ctx.dms_capabilities = (MM_MODEM_CAPABILITY_GSM_UMTS |
MM_MODEM_CAPABILITY_CDMA_EVDO |
@@ -117,8 +107,6 @@ test_adu960s (void)
MMQmiCapabilitiesContext ctx;
ctx.nas_ssp_mode_preference_mask = 0;
- ctx.nas_ssp_band_preference_mask = 0;
- ctx.nas_ssp_lte_band_preference_mask = 0;
ctx.nas_tp_mask = 0; /* Unsupported */
ctx.dms_capabilities = (MM_MODEM_CAPABILITY_GSM_UMTS |
MM_MODEM_CAPABILITY_CDMA_EVDO |
@@ -144,10 +132,8 @@ test_gobi1k_gsm (void)
MMQmiCapabilitiesContext ctx;
ctx.nas_ssp_mode_preference_mask = 0; /* Unsupported */
- ctx.nas_ssp_band_preference_mask = 0; /* Unsupported */
- ctx.nas_ssp_lte_band_preference_mask = 0; /* Unsupported */
ctx.nas_tp_mask = QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_AUTO;
- ctx.dms_capabilities = (MM_MODEM_CAPABILITY_GSM_UMTS);
+ ctx.dms_capabilities = MM_MODEM_CAPABILITY_GSM_UMTS;
test_capabilities_expected (&ctx, MM_MODEM_CAPABILITY_GSM_UMTS);
}
@@ -166,10 +152,8 @@ test_gobi1k_cdma (void)
MMQmiCapabilitiesContext ctx;
ctx.nas_ssp_mode_preference_mask = 0; /* Unsupported */
- ctx.nas_ssp_band_preference_mask = 0; /* Unsupported */
- ctx.nas_ssp_lte_band_preference_mask = 0; /* Unsupported */
ctx.nas_tp_mask = QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_AUTO;
- ctx.dms_capabilities = (MM_MODEM_CAPABILITY_CDMA_EVDO);
+ ctx.dms_capabilities = MM_MODEM_CAPABILITY_CDMA_EVDO;
test_capabilities_expected (&ctx, MM_MODEM_CAPABILITY_CDMA_EVDO);
}
@@ -191,26 +175,20 @@ test_gobi2k_gsm (void)
/* QCDM -> Automatic */
ctx.nas_ssp_mode_preference_mask = 0; /* Unsupported */
- ctx.nas_ssp_band_preference_mask = 0; /* Unsupported */
- ctx.nas_ssp_lte_band_preference_mask = 0; /* Unsupported */
ctx.nas_tp_mask = QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_AUTO;
- ctx.dms_capabilities = (MM_MODEM_CAPABILITY_GSM_UMTS);
+ ctx.dms_capabilities = MM_MODEM_CAPABILITY_GSM_UMTS;
test_capabilities_expected (&ctx, MM_MODEM_CAPABILITY_GSM_UMTS);
/* QCDM -> UMTS only */
ctx.nas_ssp_mode_preference_mask = 0; /* Unsupported */
- ctx.nas_ssp_band_preference_mask = 0; /* Unsupported */
- ctx.nas_ssp_lte_band_preference_mask = 0; /* Unsupported */
ctx.nas_tp_mask = (QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_3GPP | QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_CDMA_OR_WCDMA);
- ctx.dms_capabilities = (MM_MODEM_CAPABILITY_GSM_UMTS);
+ ctx.dms_capabilities = MM_MODEM_CAPABILITY_GSM_UMTS;
test_capabilities_expected (&ctx, MM_MODEM_CAPABILITY_GSM_UMTS);
/* QCDM -> GPRS only */
ctx.nas_ssp_mode_preference_mask = 0; /* Unsupported */
- ctx.nas_ssp_band_preference_mask = 0; /* Unsupported */
- ctx.nas_ssp_lte_band_preference_mask = 0; /* Unsupported */
ctx.nas_tp_mask = (QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_3GPP | QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_AMPS_OR_GSM);
- ctx.dms_capabilities = (MM_MODEM_CAPABILITY_GSM_UMTS);
+ ctx.dms_capabilities = MM_MODEM_CAPABILITY_GSM_UMTS;
test_capabilities_expected (&ctx, MM_MODEM_CAPABILITY_GSM_UMTS);
}
@@ -232,26 +210,20 @@ test_gobi2k_cdma (void)
/* QCDM -> Automatic */
ctx.nas_ssp_mode_preference_mask = 0; /* Unsupported */
- ctx.nas_ssp_band_preference_mask = 0; /* Unsupported */
- ctx.nas_ssp_lte_band_preference_mask = 0; /* Unsupported */
ctx.nas_tp_mask = QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_AUTO;
- ctx.dms_capabilities = (MM_MODEM_CAPABILITY_CDMA_EVDO);
+ ctx.dms_capabilities = MM_MODEM_CAPABILITY_CDMA_EVDO;
test_capabilities_expected (&ctx, MM_MODEM_CAPABILITY_CDMA_EVDO);
/* QCDM -> CDMA only */
ctx.nas_ssp_mode_preference_mask = 0; /* Unsupported */
- ctx.nas_ssp_band_preference_mask = 0; /* Unsupported */
- ctx.nas_ssp_lte_band_preference_mask = 0; /* Unsupported */
ctx.nas_tp_mask = (QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_3GPP2 | QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_CDMA_OR_WCDMA);
- ctx.dms_capabilities = (MM_MODEM_CAPABILITY_CDMA_EVDO);
+ ctx.dms_capabilities = MM_MODEM_CAPABILITY_CDMA_EVDO;
test_capabilities_expected (&ctx, MM_MODEM_CAPABILITY_CDMA_EVDO);
/* QCDM -> EVDO only */
ctx.nas_ssp_mode_preference_mask = 0; /* Unsupported */
- ctx.nas_ssp_band_preference_mask = 0; /* Unsupported */
- ctx.nas_ssp_lte_band_preference_mask = 0; /* Unsupported */
ctx.nas_tp_mask = (QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_3GPP2 | QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_HDR);
- ctx.dms_capabilities = (MM_MODEM_CAPABILITY_CDMA_EVDO);
+ ctx.dms_capabilities = MM_MODEM_CAPABILITY_CDMA_EVDO;
test_capabilities_expected (&ctx, MM_MODEM_CAPABILITY_CDMA_EVDO);
}
@@ -278,26 +250,20 @@ test_gobi3k_gsm (void)
QMI_NAS_RAT_MODE_PREFERENCE_CDMA_1XEVDO |
QMI_NAS_RAT_MODE_PREFERENCE_GSM |
QMI_NAS_RAT_MODE_PREFERENCE_UMTS);
- ctx.nas_ssp_band_preference_mask = 0; /* TODO: Add proper value */
- ctx.nas_ssp_lte_band_preference_mask = 0; /* TODO: Add proper value */
ctx.nas_tp_mask = QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_AUTO;
- ctx.dms_capabilities = (MM_MODEM_CAPABILITY_GSM_UMTS);
+ ctx.dms_capabilities = MM_MODEM_CAPABILITY_GSM_UMTS;
test_capabilities_expected (&ctx, MM_MODEM_CAPABILITY_GSM_UMTS);
/* QCDM -> GSM only */
ctx.nas_ssp_mode_preference_mask = (QMI_NAS_RAT_MODE_PREFERENCE_GSM);
- ctx.nas_ssp_band_preference_mask = 0; /* TODO: Add proper value */
- ctx.nas_ssp_lte_band_preference_mask = 0; /* TODO: Add proper value */
ctx.nas_tp_mask = (QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_3GPP | QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_AMPS_OR_GSM);
- ctx.dms_capabilities = (MM_MODEM_CAPABILITY_GSM_UMTS);
+ ctx.dms_capabilities = MM_MODEM_CAPABILITY_GSM_UMTS;
test_capabilities_expected (&ctx, MM_MODEM_CAPABILITY_GSM_UMTS);
/* QCDM -> UMTS only */
ctx.nas_ssp_mode_preference_mask = (QMI_NAS_RAT_MODE_PREFERENCE_UMTS);
- ctx.nas_ssp_band_preference_mask = 0; /* TODO: Add proper value */
- ctx.nas_ssp_lte_band_preference_mask = 0; /* TODO: Add proper value */
ctx.nas_tp_mask = (QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_3GPP | QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_CDMA_OR_WCDMA);
- ctx.dms_capabilities = (MM_MODEM_CAPABILITY_GSM_UMTS);
+ ctx.dms_capabilities = MM_MODEM_CAPABILITY_GSM_UMTS;
test_capabilities_expected (&ctx, MM_MODEM_CAPABILITY_GSM_UMTS);
}
@@ -324,26 +290,20 @@ test_gobi3k_cdma (void)
QMI_NAS_RAT_MODE_PREFERENCE_CDMA_1XEVDO |
QMI_NAS_RAT_MODE_PREFERENCE_GSM |
QMI_NAS_RAT_MODE_PREFERENCE_UMTS);
- ctx.nas_ssp_band_preference_mask = 0; /* TODO: Add proper value */
- ctx.nas_ssp_lte_band_preference_mask = 0; /* TODO: Add proper value */
ctx.nas_tp_mask = QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_AUTO;
- ctx.dms_capabilities = (MM_MODEM_CAPABILITY_CDMA_EVDO);
+ ctx.dms_capabilities = MM_MODEM_CAPABILITY_CDMA_EVDO;
test_capabilities_expected (&ctx, MM_MODEM_CAPABILITY_CDMA_EVDO);
/* QCDM -> CDMA only */
ctx.nas_ssp_mode_preference_mask = (QMI_NAS_RAT_MODE_PREFERENCE_CDMA_1X);
- ctx.nas_ssp_band_preference_mask = 0; /* TODO: Add proper value */
- ctx.nas_ssp_lte_band_preference_mask = 0; /* TODO: Add proper value */
ctx.nas_tp_mask = (QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_3GPP2 | QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_CDMA_OR_WCDMA);
- ctx.dms_capabilities = (MM_MODEM_CAPABILITY_CDMA_EVDO);
+ ctx.dms_capabilities = MM_MODEM_CAPABILITY_CDMA_EVDO;
test_capabilities_expected (&ctx, MM_MODEM_CAPABILITY_CDMA_EVDO);
/* QCDM -> EVDO only */
ctx.nas_ssp_mode_preference_mask = (QMI_NAS_RAT_MODE_PREFERENCE_CDMA_1XEVDO);
- ctx.nas_ssp_band_preference_mask = 0; /* TODO: Add proper value */
- ctx.nas_ssp_lte_band_preference_mask = 0; /* TODO: Add proper value */
ctx.nas_tp_mask = (QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_3GPP2 | QMI_NAS_RADIO_TECHNOLOGY_PREFERENCE_HDR);
- ctx.dms_capabilities = (MM_MODEM_CAPABILITY_CDMA_EVDO);
+ ctx.dms_capabilities = MM_MODEM_CAPABILITY_CDMA_EVDO;
test_capabilities_expected (&ctx, MM_MODEM_CAPABILITY_CDMA_EVDO);
}