diff options
author | Dan Williams <dcbw@redhat.com> | 2010-02-11 08:12:41 -0800 |
---|---|---|
committer | Dan Williams <dcbw@redhat.com> | 2010-02-11 08:12:41 -0800 |
commit | 1a7be4a379e95a0ceb5ed1d30540eaf75354f27f (patch) | |
tree | ccd715c5ba85e5e2c68b3932a6bf0e8e1bc2f4a5 | |
parent | d8ea5ea003f6e06520ec1254d89ec5fec5438d18 (diff) |
huawei: ignore CSS on EVDO-capable modems (rh #553199)
Since CSS doesn't reliably determine EVDO-only registration state.
-rw-r--r-- | plugins/mm-modem-huawei-cdma.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/plugins/mm-modem-huawei-cdma.c b/plugins/mm-modem-huawei-cdma.c index 3b63a486..19b731a8 100644 --- a/plugins/mm-modem-huawei-cdma.c +++ b/plugins/mm-modem-huawei-cdma.c @@ -41,16 +41,26 @@ mm_modem_huawei_cdma_new (const char *device, gboolean evdo_rev0, gboolean evdo_revA) { + gboolean try_css = TRUE; + g_return_val_if_fail (device != NULL, NULL); g_return_val_if_fail (driver != NULL, NULL); g_return_val_if_fail (plugin != NULL, NULL); + /* Don't use AT+CSS on EVDO-capable hardware for determining registration + * status, because often the device will have only an EVDO connection and + * AT+CSS won't necessarily report EVDO registration status, only 1X. + */ + if (evdo_rev0 || evdo_revA) + try_css = FALSE; + return MM_MODEM (g_object_new (MM_TYPE_MODEM_HUAWEI_CDMA, MM_MODEM_MASTER_DEVICE, device, MM_MODEM_DRIVER, driver, MM_MODEM_PLUGIN, plugin, MM_GENERIC_CDMA_EVDO_REV0, evdo_rev0, MM_GENERIC_CDMA_EVDO_REVA, evdo_revA, + MM_GENERIC_CDMA_REGISTRATION_TRY_CSS, try_css, NULL)); } |