diff options
-rw-r--r-- | plugins/novatel/mm-broadband-modem-novatel-lte.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/plugins/novatel/mm-broadband-modem-novatel-lte.c b/plugins/novatel/mm-broadband-modem-novatel-lte.c index d32c3973..9a21c4b2 100644 --- a/plugins/novatel/mm-broadband-modem-novatel-lte.c +++ b/plugins/novatel/mm-broadband-modem-novatel-lte.c @@ -149,6 +149,30 @@ modem_init (MMIfaceModem *self, } /*****************************************************************************/ +/* Modem power down (Modem interface) */ + +static gboolean +modem_power_down_finish (MMIfaceModem *self, + GAsyncResult *res, + GError **error) +{ + return !!mm_base_modem_at_command_finish (MM_BASE_MODEM (self), res, error); +} + +static void +modem_power_down (MMIfaceModem *self, + GAsyncReadyCallback callback, + gpointer user_data) +{ + mm_base_modem_at_command (MM_BASE_MODEM (self), + "+CFUN=4", + 6, + FALSE, + callback, + user_data); +} + +/*****************************************************************************/ /* Create Bearer (Modem interface) */ static MMBearer * @@ -745,6 +769,8 @@ iface_modem_init (MMIfaceModem *iface) { iface->modem_init = modem_init; iface->modem_init_finish = modem_init_finish; + iface->modem_power_down = modem_power_down; + iface->modem_power_down_finish = modem_power_down_finish; iface->create_bearer = modem_create_bearer; iface->create_bearer_finish = modem_create_bearer_finish; iface->create_sim = modem_create_sim; |