aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/quectel/mm-broadband-modem-quectel.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/quectel/mm-broadband-modem-quectel.c')
-rw-r--r--src/plugins/quectel/mm-broadband-modem-quectel.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/plugins/quectel/mm-broadband-modem-quectel.c b/src/plugins/quectel/mm-broadband-modem-quectel.c
index b93a4506..ecd7c9c1 100644
--- a/src/plugins/quectel/mm-broadband-modem-quectel.c
+++ b/src/plugins/quectel/mm-broadband-modem-quectel.c
@@ -31,6 +31,7 @@ static void iface_modem_time_init (MMIfaceModemTimeInterface *iface);
static void shared_quectel_init (MMSharedQuectelInterface *iface);
static MMIfaceModemInterface *iface_modem_parent;
+static MMIfaceModemFirmwareInterface *iface_modem_firmware_parent;
static MMIfaceModemLocationInterface *iface_modem_location_parent;
G_DEFINE_TYPE_EXTENDED (MMBroadbandModemQuectel, mm_broadband_modem_quectel, MM_TYPE_BROADBAND_MODEM, 0,
@@ -206,6 +207,8 @@ iface_modem_init (MMIfaceModemInterface *iface)
static void
iface_modem_firmware_init (MMIfaceModemFirmwareInterface *iface)
{
+ iface_modem_firmware_parent = g_type_interface_peek_parent (iface);
+
iface->load_update_settings = mm_shared_quectel_firmware_load_update_settings;
iface->load_update_settings_finish = mm_shared_quectel_firmware_load_update_settings_finish;
}
@@ -242,6 +245,12 @@ peek_parent_modem_interface (MMSharedQuectel *self)
return iface_modem_parent;
}
+static MMIfaceModemFirmwareInterface *
+peek_parent_modem_firmware_interface (MMSharedQuectel *self)
+{
+ return iface_modem_firmware_parent;
+}
+
static MMIfaceModemLocationInterface *
peek_parent_modem_location_interface (MMSharedQuectel *self)
{
@@ -252,6 +261,7 @@ static void
shared_quectel_init (MMSharedQuectelInterface *iface)
{
iface->peek_parent_modem_interface = peek_parent_modem_interface;
+ iface->peek_parent_modem_firmware_interface = peek_parent_modem_firmware_interface;
iface->peek_parent_modem_location_interface = peek_parent_modem_location_interface;
iface->peek_parent_class = peek_parent_class;
}