From 2e58b9e3dadeb0d8ec59c3ef4bf1092f37854421 Mon Sep 17 00:00:00 2001 From: Dan Williams Date: Thu, 25 Apr 2013 11:03:49 -0500 Subject: broadband-modem: run CDMA1x Serving System checks if QCDM port exists (bgo #698856) For devices that support Sprint commands (SPSERVICE, SPERI) the CDMA1x Serving System checks weren't run because at the time that decision was made, they were AT-based and didn't provide anything useful above the proprietary Sprint commands. But now that we have QCDM serving system checks, which do provide the SID and NID, we should just use them if we can. Otherwise we don't get any SID/NID information on Sprint-command-supporting devices. --- src/mm-broadband-modem.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/mm-broadband-modem.c b/src/mm-broadband-modem.c index 92b2050b9..0843ec749 100644 --- a/src/mm-broadband-modem.c +++ b/src/mm-broadband-modem.c @@ -6890,9 +6890,13 @@ setup_registration_checks_context_complete_and_free (SetupRegistrationChecksCont * for the specific step, or subclass this setup and return * FALSE themselves. */ if (ctx->has_sprint_commands) { - mm_dbg ("Will skip CDMA1x Serving System check, " - "we do have Sprint commands"); - results->skip_at_cdma1x_serving_system_step = TRUE; + /* If a QCDM port exists, we can use that for better serving + * system checks than the Sprint commands. */ + if (!mm_base_modem_peek_port_qcdm (MM_BASE_MODEM (ctx->self))) { + mm_dbg ("Will skip CDMA1x Serving System check, " + "we do have Sprint commands but no QCDM port"); + results->skip_at_cdma1x_serving_system_step = TRUE; + } } else { /* If there aren't Sprint specific commands, and the detailed * registration state getter wasn't subclassed, skip the step */ -- cgit v1.2.1