aboutsummaryrefslogtreecommitdiff
path: root/src/mm-base-modem.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mm-base-modem.c')
-rw-r--r--src/mm-base-modem.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/mm-base-modem.c b/src/mm-base-modem.c
index 54e28b0d..bb2e51dd 100644
--- a/src/mm-base-modem.c
+++ b/src/mm-base-modem.c
@@ -1440,6 +1440,16 @@ mm_base_modem_organize_ports (MMBaseModem *self,
#if defined WITH_QMI
if (qmi) {
+ /* The first item in the data list must be a net port, because
+ * QMI modems only expect net ports */
+ g_assert (MM_IS_PORT_NET (self->priv->data->data));
+ /* let the MMPortQmi know which net driver is being used, taken
+ * from the first item in the net port list */
+ g_list_foreach (qmi,
+ (GFunc)mm_port_qmi_set_net_driver,
+ (gpointer) mm_kernel_device_get_driver (
+ mm_port_peek_kernel_device (
+ MM_PORT (self->priv->data->data))));
g_list_foreach (qmi, (GFunc)g_object_ref, NULL);
self->priv->qmi = qmi;
}