---
plugins/ofono.rules | 4 ++++
plugins/udevng.c | 11 +++++------
2 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/plugins/ofono.rules b/plugins/ofono.rules
index 59c78d5..fe673cd 100644
--- a/plugins/ofono.rules
+++ b/plugins/ofono.rules
@@ -32,4 +32,8 @@
ENV{OFONO_DRIVER}=="hso",ATTR{hsotype}=="Control",ENV{OFONO_LABEL}="control"
ENV{OFONO_DRIVER}=="hso",ATTR{hsotype}=="Application",ENV{OFONO_LABEL}="app"
ENV{OFONO_DRIVER}=="hso",ATTR{hsotype}=="Modem",ENV{OFONO_LABEL}="modem"
+DRIVER=="cdc_phonet",ENV{OFONO_DRIVER}="isiusb"
+ENV{OFONO_DRIVER}=="isiusb",ATTR{type}=="820",ENV{OFONO_LABEL}="modem"
+ENV{OFONO_LABEL}=="modem",ENV{INTERFACE}=="2/254/0",ENV{OFONO_LABEL}="modem16"
+
LABEL="ofono_end"
diff --git a/plugins/udevng.c b/plugins/udevng.c
index 2082a47..508db04 100644
--- a/plugins/udevng.c
+++ b/plugins/udevng.c
@@ -88,11 +88,11 @@ static gboolean setup_isi(struct modem_info *modem)
DBG("%s %s %s %s %s", info->devnode, info->interface,
info->number, info->label, info->sysattr);
- if (g_strcmp0(info->sysattr, "820") == 0) {
- if (g_strcmp0(info->interface, "2/254/0") == 0)
- addr = 16;
-
+ if (g_str_has_prefix(info->label, "modem")) {
node = info->devnode;
+
+ if (!g_strcmp0(info->label, "modem16"))
+ addr = 16;
}
}
@@ -983,7 +983,7 @@ static struct {
gboolean (*setup)(struct modem_info *modem);
const char *sysattr;
} driver_list[] = {
- { "isiusb", setup_isi, "type" },
+ { "isiusb", setup_isi, },
{ "mbm", setup_mbm, "device/interface" },
{ "hso", setup_hso, "hsotype" },
{ "gobi", setup_gobi },
@@ -1316,7 +1316,6 @@ static struct {
const char *vid;
const char *pid;
} vendor_list[] = {
- { "isiusb", "cdc_phonet" },
{ "icera", "cdc_acm", "19d2" },
{ "icera", "cdc_ether", "19d2" },
{ "icera", "cdc_acm", "04e8", "6872" },
--
2.9.3
_______________________________________________
ofono mailing list
[email protected]
https://lists.ofono.org/mailman/listinfo/ofono