summaryrefslogtreecommitdiffstats
path: root/plugins/udevng.c
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2011-08-11 10:03:25 -0700
committerMarcel Holtmann <marcel@holtmann.org>2011-08-11 10:03:25 -0700
commitea8e97bdc85451b70f9e72c4233975a5ccf8e935 (patch)
treed75a2160a54383c70984eaac4f6d5f5feb9c9928 /plugins/udevng.c
parenta38231b949ef150ff904c71bc4d0659b59044129 (diff)
downloadofono-ea8e97bdc85451b70f9e72c4233975a5ccf8e935.tar.bz2
udev: Prepare for supporting different bus types
Diffstat (limited to 'plugins/udevng.c')
-rw-r--r--plugins/udevng.c23
1 files changed, 14 insertions, 9 deletions
diff --git a/plugins/udevng.c b/plugins/udevng.c
index 3ac52c57..0a831595 100644
--- a/plugins/udevng.c
+++ b/plugins/udevng.c
@@ -703,17 +703,10 @@ static struct {
{ }
};
-static void check_device(struct udev_device *device)
+static void check_usb_device(struct udev_device *device)
{
struct udev_device *usb_device;
- const char *bus, *driver, *syspath, *devname;
-
- bus = udev_device_get_property_value(device, "ID_BUS");
- if (bus == NULL)
- return;
-
- if (g_str_equal(bus, "usb") == FALSE)
- return;
+ const char *driver, *syspath, *devname;
usb_device = udev_device_get_parent_with_subsystem_devtype(device,
"usb", "usb_device");
@@ -777,6 +770,18 @@ static void check_device(struct udev_device *device)
add_device(syspath, devname, driver, device);
}
+static void check_device(struct udev_device *device)
+{
+ const char *bus;
+
+ bus = udev_device_get_property_value(device, "ID_BUS");
+ if (bus == NULL)
+ return;
+
+ if (g_str_equal(bus, "usb") == TRUE)
+ check_usb_device(device);
+}
+
static gboolean create_modem(gpointer key, gpointer value, gpointer user_data)
{
struct modem_info *modem = value;