summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@suse.de>2006-10-23 19:40:54 +0200
committerGreg Kroah-Hartman <gregkh@suse.de>2006-12-01 23:51:58 +0100
commitf0ee61a6cecd100301a60d99feb187776533b2a2 (patch)
tree69fe62325427cdec7687e951e680ca9ff3486a3d
parentDriver core: fix "driver" symlink timing (diff)
downloadlinux-f0ee61a6cecd100301a60d99feb187776533b2a2.tar.xz
linux-f0ee61a6cecd100301a60d99feb187776533b2a2.zip
Driver Core: Move virtual_device_parent() to core.c
It doesn't need to be global or in device.h Cc: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--drivers/base/class.c17
-rw-r--r--drivers/base/core.c17
-rw-r--r--include/linux/device.h2
3 files changed, 17 insertions, 19 deletions
diff --git a/drivers/base/class.c b/drivers/base/class.c
index 0ff267a248db..2e705f6abb4c 100644
--- a/drivers/base/class.c
+++ b/drivers/base/class.c
@@ -893,23 +893,6 @@ void class_interface_unregister(struct class_interface *class_intf)
class_put(parent);
}
-int virtual_device_parent(struct device *dev)
-{
- if (!dev->class)
- return -ENODEV;
-
- if (!dev->class->virtual_dir) {
- static struct kobject *virtual_dir = NULL;
-
- if (!virtual_dir)
- virtual_dir = kobject_add_dir(&devices_subsys.kset.kobj, "virtual");
- dev->class->virtual_dir = kobject_add_dir(virtual_dir, dev->class->name);
- }
-
- dev->kobj.parent = dev->class->virtual_dir;
- return 0;
-}
-
int __init classes_init(void)
{
int retval;
diff --git a/drivers/base/core.c b/drivers/base/core.c
index d4f35d8902a2..dbcd40b987d2 100644
--- a/drivers/base/core.c
+++ b/drivers/base/core.c
@@ -384,6 +384,23 @@ void device_initialize(struct device *dev)
device_init_wakeup(dev, 0);
}
+static int virtual_device_parent(struct device *dev)
+{
+ if (!dev->class)
+ return -ENODEV;
+
+ if (!dev->class->virtual_dir) {
+ static struct kobject *virtual_dir = NULL;
+
+ if (!virtual_dir)
+ virtual_dir = kobject_add_dir(&devices_subsys.kset.kobj, "virtual");
+ dev->class->virtual_dir = kobject_add_dir(virtual_dir, dev->class->name);
+ }
+
+ dev->kobj.parent = dev->class->virtual_dir;
+ return 0;
+}
+
/**
* device_add - add device to device hierarchy.
* @dev: device.
diff --git a/include/linux/device.h b/include/linux/device.h
index b00e02711393..00b29e0c5ce0 100644
--- a/include/linux/device.h
+++ b/include/linux/device.h
@@ -440,8 +440,6 @@ extern struct device *device_create(struct class *cls, struct device *parent,
__attribute__((format(printf,4,5)));
extern void device_destroy(struct class *cls, dev_t devt);
-extern int virtual_device_parent(struct device *dev);
-
/*
* Platform "fixup" functions - allow the platform to have their say
* about devices and actions that the general device layer doesn't