diff options
Diffstat (limited to 'src/mm-broadband-modem-mbim.c')
-rw-r--r-- | src/mm-broadband-modem-mbim.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/mm-broadband-modem-mbim.c b/src/mm-broadband-modem-mbim.c index 8e51c6ed..82a7b574 100644 --- a/src/mm-broadband-modem-mbim.c +++ b/src/mm-broadband-modem-mbim.c @@ -41,6 +41,7 @@ #include "mm-iface-modem-3gpp-profile-manager.h" #include "mm-iface-modem-3gpp-ussd.h" #include "mm-iface-modem-location.h" +#include "mm-iface-modem-firmware.h" #include "mm-iface-modem-messaging.h" #include "mm-iface-modem-signal.h" #include "mm-iface-modem-sar.h" @@ -56,6 +57,7 @@ static void iface_modem_3gpp_init (MMIfaceModem3gppInterface static void iface_modem_3gpp_profile_manager_init (MMIfaceModem3gppProfileManagerInterface *iface); static void iface_modem_3gpp_ussd_init (MMIfaceModem3gppUssdInterface *iface); static void iface_modem_location_init (MMIfaceModemLocationInterface *iface); +static void iface_modem_firmware_init (MMIfaceModemFirmwareInterface *iface); static void iface_modem_messaging_init (MMIfaceModemMessagingInterface *iface); static void iface_modem_signal_init (MMIfaceModemSignalInterface *iface); static void iface_modem_sar_init (MMIfaceModemSarInterface *iface); @@ -75,6 +77,7 @@ G_DEFINE_TYPE_EXTENDED (MMBroadbandModemMbim, mm_broadband_modem_mbim, MM_TYPE_B G_IMPLEMENT_INTERFACE (MM_TYPE_IFACE_MODEM_3GPP_PROFILE_MANAGER, iface_modem_3gpp_profile_manager_init) G_IMPLEMENT_INTERFACE (MM_TYPE_IFACE_MODEM_3GPP_USSD, iface_modem_3gpp_ussd_init) G_IMPLEMENT_INTERFACE (MM_TYPE_IFACE_MODEM_LOCATION, iface_modem_location_init) + G_IMPLEMENT_INTERFACE (MM_TYPE_IFACE_MODEM_FIRMWARE, iface_modem_firmware_init) G_IMPLEMENT_INTERFACE (MM_TYPE_IFACE_MODEM_MESSAGING, iface_modem_messaging_init) G_IMPLEMENT_INTERFACE (MM_TYPE_IFACE_MODEM_SIGNAL, iface_modem_signal_init) G_IMPLEMENT_INTERFACE (MM_TYPE_IFACE_MODEM_SAR, iface_modem_sar_init) @@ -10293,6 +10296,29 @@ modem_set_carrier_lock (MMIfaceModem3gpp *_self, } /*****************************************************************************/ +/* Load update settings (Firmware interface) */ + +static MMFirmwareUpdateSettings * +modem_firmware_load_update_settings_finish (MMIfaceModemFirmware *self, + GAsyncResult *res, + GError **error) +{ + return mm_iface_modem_firmware_load_update_settings_in_port_finish (self, res, error); +} + +static void +modem_firmware_load_update_settings (MMIfaceModemFirmware *self, + GAsyncReadyCallback callback, + gpointer user_data) +{ + mm_iface_modem_firmware_load_update_settings_in_port ( + self, + MM_PORT (mm_broadband_modem_mbim_peek_port_mbim (MM_BROADBAND_MODEM_MBIM (self))), + callback, + user_data); +} + +/*****************************************************************************/ MMBroadbandModemMbim * mm_broadband_modem_mbim_new (const gchar *device, @@ -10627,6 +10653,13 @@ iface_modem_location_init (MMIfaceModemLocationInterface *iface) } static void +iface_modem_firmware_init (MMIfaceModemFirmwareInterface *iface) +{ + iface->load_update_settings = modem_firmware_load_update_settings; + iface->load_update_settings_finish = modem_firmware_load_update_settings_finish; +} + +static void iface_modem_messaging_init (MMIfaceModemMessagingInterface *iface) { iface->check_support = messaging_check_support; |