[PATCH] broadband-modem-mbim: disable CDMA capabilities until we actually support MBIM+CDMA

Dan Williams dcbw at redhat.com
Thu Aug 20 09:43:39 PDT 2015

CDMA-capable modems (like a Sierra EM7355) will fail to even enable,
because the internal CDMA code tries to initialize using AT commands and
that fails because many MBIM modems don't have an AT port.  We should
figure out how to support minimal MBIM + CDMA using MBIM instead of

[mm-broadband-modem.c:9000] enabling_step(): Modem has CDMA capabilities, enabling the Modem CDMA interface...
[mm-iface-modem-cdma.c:946] mm_iface_modem_cdma_run_registration_checks(): Running registration checks (CDMA1x: 'yes', EV-DO: 'yes')
[mm-broadband-modem.c:7397] setup_registration_checks_context_complete_and_free(): Will skip all QCDM-based registration checks
[mm-broadband-modem.c:7418] setup_registration_checks_context_complete_and_free(): Will skip generic detailed registration check, we don't have Sprint commands
[mm-iface-modem-cdma.c:768] registration_check_step(): Starting QCDM-based registration checks
[mm-iface-modem-cdma.c:780] registration_check_step():   Skipping all QCDM-based checks and falling back to AT-based checks
[mm-iface-modem-cdma.c:823] registration_check_step(): Starting AT-based registration checks
[mm-iface-modem-cdma.c:641] get_service_status_ready(): Could not get service status: No AT port available to run command
[mm-iface-modem.c:1392] __iface_modem_update_state_internal(): Modem /org/freedesktop/ModemManager1/Modem/0: state changed (enabling -> disabled)


diff --git a/src/mm-broadband-modem-mbim.c b/src/mm-broadband-modem-mbim.c
index bb7ddc2..626d0d7 100644
--- a/src/mm-broadband-modem-mbim.c
+++ b/src/mm-broadband-modem-mbim.c
@@ -173,8 +173,12 @@ device_caps_query_ready (MbimDevice *device,
         mask = 0;
         if (ctx->self->priv->caps_cellular_class & MBIM_CELLULAR_CLASS_GSM)
             mask |= MM_MODEM_CAPABILITY_GSM_UMTS;
+#if 0  /* Disable until we add MBIM CDMA support */
         if (ctx->self->priv->caps_cellular_class & MBIM_CELLULAR_CLASS_CDMA)
             mask |= MM_MODEM_CAPABILITY_CDMA_EVDO;
         if (ctx->self->priv->caps_data_class & MBIM_DATA_CLASS_LTE)
             mask |= MM_MODEM_CAPABILITY_LTE;
         g_simple_async_result_set_op_res_gpointer (ctx->result,

More information about the ModemManager-devel mailing list