diff options
Diffstat (limited to 'drivers/base/core.c')
-rw-r--r-- | drivers/base/core.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/base/core.c b/drivers/base/core.c index 268a9c8d168b..fbc223486f81 100644 --- a/drivers/base/core.c +++ b/drivers/base/core.c | |||
@@ -31,8 +31,6 @@ int (*platform_notify_remove)(struct device * dev) = NULL; | |||
31 | #define to_dev(obj) container_of(obj, struct device, kobj) | 31 | #define to_dev(obj) container_of(obj, struct device, kobj) |
32 | #define to_dev_attr(_attr) container_of(_attr, struct device_attribute, attr) | 32 | #define to_dev_attr(_attr) container_of(_attr, struct device_attribute, attr) |
33 | 33 | ||
34 | extern struct attribute * dev_default_attrs[]; | ||
35 | |||
36 | static ssize_t | 34 | static ssize_t |
37 | dev_attr_show(struct kobject * kobj, struct attribute * attr, char * buf) | 35 | dev_attr_show(struct kobject * kobj, struct attribute * attr, char * buf) |
38 | { | 36 | { |
@@ -89,7 +87,6 @@ static void device_release(struct kobject * kobj) | |||
89 | static struct kobj_type ktype_device = { | 87 | static struct kobj_type ktype_device = { |
90 | .release = device_release, | 88 | .release = device_release, |
91 | .sysfs_ops = &dev_sysfs_ops, | 89 | .sysfs_ops = &dev_sysfs_ops, |
92 | .default_attrs = dev_default_attrs, | ||
93 | }; | 90 | }; |
94 | 91 | ||
95 | 92 | ||
@@ -248,6 +245,7 @@ int device_add(struct device *dev) | |||
248 | 245 | ||
249 | if ((error = kobject_add(&dev->kobj))) | 246 | if ((error = kobject_add(&dev->kobj))) |
250 | goto Error; | 247 | goto Error; |
248 | kobject_hotplug(&dev->kobj, KOBJ_ADD); | ||
251 | if ((error = device_pm_add(dev))) | 249 | if ((error = device_pm_add(dev))) |
252 | goto PMError; | 250 | goto PMError; |
253 | if ((error = bus_add_device(dev))) | 251 | if ((error = bus_add_device(dev))) |
@@ -260,14 +258,13 @@ int device_add(struct device *dev) | |||
260 | /* notify platform of device entry */ | 258 | /* notify platform of device entry */ |
261 | if (platform_notify) | 259 | if (platform_notify) |
262 | platform_notify(dev); | 260 | platform_notify(dev); |
263 | |||
264 | kobject_hotplug(&dev->kobj, KOBJ_ADD); | ||
265 | Done: | 261 | Done: |
266 | put_device(dev); | 262 | put_device(dev); |
267 | return error; | 263 | return error; |
268 | BusError: | 264 | BusError: |
269 | device_pm_remove(dev); | 265 | device_pm_remove(dev); |
270 | PMError: | 266 | PMError: |
267 | kobject_hotplug(&dev->kobj, KOBJ_REMOVE); | ||
271 | kobject_del(&dev->kobj); | 268 | kobject_del(&dev->kobj); |
272 | Error: | 269 | Error: |
273 | if (parent) | 270 | if (parent) |