From 96305bb5c1d32e5a0e517750501b705502e74111 Mon Sep 17 00:00:00 2001 From: Aleksander Morgado Date: Fri, 2 Nov 2012 09:48:56 +0100 Subject: [PATCH] iridium: report only 'CS' mode supported Iridium modems only support circuit-switched connections, so just report that one as supported. --- plugins/iridium/mm-broadband-modem-iridium.c | 31 ++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/plugins/iridium/mm-broadband-modem-iridium.c b/plugins/iridium/mm-broadband-modem-iridium.c index 06515e34..23e32f0d 100644 --- a/plugins/iridium/mm-broadband-modem-iridium.c +++ b/plugins/iridium/mm-broadband-modem-iridium.c @@ -308,6 +308,33 @@ setup_flow_control (MMIfaceModem *self, result); } +/*****************************************************************************/ +/* Load supported modes (Modem inteface) */ + +static MMModemMode +load_supported_modes_finish (MMIfaceModem *self, + GAsyncResult *res, + GError **error) +{ + /* Report CS only, Iridium connections are circuit-switched */ + return MM_MODEM_MODE_CS; +} + +static void +load_supported_modes (MMIfaceModem *self, + GAsyncReadyCallback callback, + gpointer user_data) +{ + GSimpleAsyncResult *result; + + result = g_simple_async_result_new (G_OBJECT (self), + callback, + user_data, + load_supported_modes); + g_simple_async_result_complete_in_idle (result); + g_object_unref (result); +} + /*****************************************************************************/ /* Create SIM (Modem inteface) */ @@ -446,6 +473,10 @@ iface_modem_init (MMIfaceModem *iface) iface->modem_power_down_finish = NULL; iface->modem_init_power_down = NULL; iface->modem_init_power_down_finish = NULL; + + /* Supported modes cannot be queried */ + iface->load_supported_modes = load_supported_modes; + iface->load_supported_modes_finish = load_supported_modes_finish; } static void