diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2012-01-17 10:38:07 +0100 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2012-01-17 10:38:07 +0100 |
commit | 5086f5f43af6dad282676769cd11a020f4143f23 (patch) | |
tree | 1e44986f996f991da65efbd40278b4556a112cbf /plugins/udevng.c | |
parent | d6d86ff938689af7c08b0109290f469d7f7014e2 (diff) | |
download | ofono-5086f5f43af6dad282676769cd11a020f4143f23.tar.bz2 |
udev: Limit ZTE port selection to specific product identifiers
Diffstat (limited to 'plugins/udevng.c')
-rw-r--r-- | plugins/udevng.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/plugins/udevng.c b/plugins/udevng.c index 4cb6fbcc..2a9200df 100644 --- a/plugins/udevng.c +++ b/plugins/udevng.c @@ -571,10 +571,18 @@ static gboolean setup_simcom(struct modem_info *modem) static gboolean setup_zte(struct modem_info *modem) { const char *aux = NULL, *mdm = NULL, *qcdm = NULL; + const char *modem_intf; GSList *list; DBG("%s", modem->syspath); + if (g_strcmp0(modem->model, "0016") == 0 || + g_strcmp0(modem->model, "0017") == 0 || + g_strcmp0(modem->model, "0117") == 0) + modem_intf = "02"; + else + modem_intf = "03"; + for (list = modem->devices; list; list = list->next) { struct device_info *info = list->data; @@ -594,9 +602,7 @@ static gboolean setup_zte(struct modem_info *modem) qcdm = info->devnode; else if (g_strcmp0(info->number, "01") == 0) aux = info->devnode; - else if (g_strcmp0(info->number, "02") == 0) - mdm = info->devnode; - else if (g_strcmp0(info->number, "03") == 0) + else if (g_strcmp0(info->number, modem_intf) == 0) mdm = info->devnode; } } |