aboutsummaryrefslogtreecommitdiff
path: root/plugins/mm-plugin-option.c
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/mm-plugin-option.c')
-rw-r--r--plugins/mm-plugin-option.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/plugins/mm-plugin-option.c b/plugins/mm-plugin-option.c
index a819b4e..de777cc 100644
--- a/plugins/mm-plugin-option.c
+++ b/plugins/mm-plugin-option.c
@@ -59,7 +59,7 @@ supports_port (MMPluginBase *base,
GUdevDevice *port;
guint32 cached = 0, level;
const char *driver, *subsys, *name;
- guint16 vendor = 0;
+ guint16 vendor = 0, product = 0;
/* Can't do anything with non-serial ports */
port = mm_plugin_base_supports_task_get_port (task);
@@ -70,13 +70,14 @@ supports_port (MMPluginBase *base,
name = g_udev_device_get_name (port);
driver = mm_plugin_base_supports_task_get_driver (task);
- if (!driver || (strcmp (driver, "option1") && strcmp (driver, "option")))
+ if (!driver || (strcmp (driver, "option1") && strcmp (driver, "option") && strcmp (driver, "nozomi")))
return MM_PLUGIN_SUPPORTS_PORT_UNSUPPORTED;
- if (!mm_plugin_base_get_device_ids (base, subsys, name, &vendor, NULL))
+ if (!mm_plugin_base_get_device_ids (base, subsys, name, &vendor, &product))
return MM_PLUGIN_SUPPORTS_PORT_UNSUPPORTED;
- if (vendor != 0x0af0)
+ if ( (vendor != 0x0af0) /* Option USB devices */
+ && (vendor != 0x1931 || product != 0x000c)) /* Nozomi CardBus devices */
return MM_PLUGIN_SUPPORTS_PORT_UNSUPPORTED;
if (mm_plugin_base_get_cached_port_capabilities (base, port, &cached)) {