From: jupiter <jupiter....@gmail.com>

---
 plugins/udevng.c | 41 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

diff --git a/plugins/udevng.c b/plugins/udevng.c
index 34ac1cc0..63d95055 100644
--- a/plugins/udevng.c
+++ b/plugins/udevng.c
@@ -1194,6 +1194,45 @@ static gboolean setup_ublox(struct modem_info *modem)
        return TRUE;
 }
 
+static gboolean setup_ubloxqmi(struct modem_info *modem) {
+       const char *qmi = NULL, *net = NULL, *gps = NULL, *aux = NULL;
+       GSList *list;
+
+       DBG("%s", modem->syspath);
+
+       for (list = modem->devices; list; list = g_slist_next(list)) {
+               struct device_info *info = list->data;
+
+               DBG("%s %s %s %s %s", info->devnode, info->interface,
+                               info->number, info->label, info->subsystem);
+
+               if (g_strcmp0(info->interface, "255/255/255") == 0 &&
+                               g_strcmp0(info->number, "03") == 0) {
+                       if (g_strcmp0(info->subsystem, "net") == 0)
+                               net = info->devnode;
+                       else if (g_strcmp0(info->subsystem, "usbmisc") == 0)
+                               qmi = info->devnode;
+               }
+       }
+
+       DBG("qmi=%s net=%s", qmi, net);
+
+       if (qmi == NULL || net == NULL)
+               return FALSE;
+
+       DBG("qmi=%s net=%s", qmi, net);
+
+       ofono_modem_set_string(modem->modem, "Device", qmi);
+       ofono_modem_set_string(modem->modem, "NetworkInterface", net);
+    ofono_modem_set_string(modem->modem, "Quirk", "SARAR4");
+
+       DBG("gps=%s aux=%s", gps, aux);
+
+       ofono_modem_set_driver(modem->modem, "gobi");
+
+       return TRUE;
+}
+
 static gboolean setup_gemalto(struct modem_info* modem)
 {
        const char *app = NULL, *gps = NULL, *mdm = NULL,
@@ -1441,6 +1480,7 @@ static struct {
        { "quectel",    setup_quectel   },
        { "quectelqmi", setup_quectelqmi},
        { "ublox",      setup_ublox     },
+    { "ubloxqmi",   setup_ubloxqmi  },
        { "gemalto",    setup_gemalto   },
        { "xmm7xxx",    setup_xmm7xxx   },
        { "mbim",       setup_mbim      },
@@ -1850,6 +1890,7 @@ static struct {
        { "ublox",      "cdc_ncm",      "1546", "110a"  },
        { "ublox",      "rndis_host",   "1546", "1146"  },
        { "ublox",      "cdc_acm",      "1546", "1146"  },
+    { "ubloxqmi",   "qmi_wwan", "05c6", "90b2"  },
        { "gemalto",    "option",       "1e2d", "0053"  },
        { "gemalto",    "cdc_wdm",      "1e2d", "0053"  },
        { "gemalto",    "qmi_wwan",     "1e2d", "0053"  },
-- 
2.17.1
_______________________________________________
ofono mailing list -- ofono@ofono.org
To unsubscribe send an email to ofono-le...@ofono.org

Reply via email to