diff options
author | Aleksander Morgado <aleksander@aleksander.es> | 2014-02-26 12:28:00 +0100 |
---|---|---|
committer | Aleksander Morgado <aleksander@aleksander.es> | 2014-02-28 16:34:59 +0100 |
commit | 914caf0f3b2da220388aae56ba35f56cbc76b117 (patch) | |
tree | c888f1d8da71c5dbaaff35890ddd0be063a47df9 | |
parent | ece4f0f0144ad8fc34a93aa2add0a933edbc4ab1 (diff) |
cinterion: unsupported modes are already filtered out
So no need to try to handle error cases or fallbacks to support them.
-rw-r--r-- | plugins/cinterion/mm-broadband-modem-cinterion.c | 45 |
1 files changed, 8 insertions, 37 deletions
diff --git a/plugins/cinterion/mm-broadband-modem-cinterion.c b/plugins/cinterion/mm-broadband-modem-cinterion.c index 277618c4..ad907841 100644 --- a/plugins/cinterion/mm-broadband-modem-cinterion.c +++ b/plugins/cinterion/mm-broadband-modem-cinterion.c @@ -778,6 +778,8 @@ set_current_modes (MMIfaceModem *self, { GSimpleAsyncResult *result; + g_assert (preferred == MM_MODEM_MODE_NONE); + result = g_simple_async_result_new (G_OBJECT (self), callback, user_data, @@ -802,20 +804,10 @@ set_current_modes (MMIfaceModem *self, g_string_append (cmd, "2"); } else if (allowed == MM_MODEM_MODE_2G) { g_string_append (cmd, "0"); - } else { - gchar *allowed_str; - gchar *preferred_str; - + } else if (allowed == (MM_MODEM_MODE_3G | MM_MODEM_MODE_2G)) { /* no AcT given, defaults to Auto */ - allowed_str = mm_modem_mode_build_string_from_mask (allowed); - preferred_str = mm_modem_mode_build_string_from_mask (preferred); - mm_warn ("Requested mode (allowed: '%s', preferred: '%s') not " - "supported by the modem. Defaulting to automatic mode.", - allowed_str, - preferred_str); - g_free (allowed_str); - g_free (preferred_str); - } + } else + g_assert_not_reached (); mm_base_modem_at_command ( MM_BASE_MODEM (self), @@ -828,30 +820,9 @@ set_current_modes (MMIfaceModem *self, return; } - /* For 3G-only devices, allow only 3G-related allowed modes. - * For 2G-only devices, allow only 2G-related allowed modes. - * - * Note that the common logic of the interface already limits the - * allowed/preferred modes that can be tried in these cases. */ - if (mm_iface_modem_is_2g_only (self) || - mm_iface_modem_is_3g_only (self)) { - gchar *allowed_str; - gchar *preferred_str; - - allowed_str = mm_modem_mode_build_string_from_mask (allowed); - preferred_str = mm_modem_mode_build_string_from_mask (preferred); - mm_dbg ("Not doing anything. Assuming requested mode " - "(allowed: '%s', preferred: '%s') is supported by " - "%s-only modem.", - allowed_str, - preferred_str, - mm_iface_modem_is_3g_only (self) ? "3G" : "2G"); - g_free (allowed_str); - g_free (preferred_str); - g_simple_async_result_set_op_res_gboolean (result, TRUE); - g_simple_async_result_complete_in_idle (result); - g_object_unref (result); - return; + /* For 2G-only and 3G-only devices, we already stated that we don't + * support mode switching. */ + g_assert_not_reached (); } g_assert_not_reached (); |