ChangeSet 1.2448, 2004/11/01 13:05:24-08:00, dtor_core@ameritech.net [PATCH] Driver core: export device_attach Driver core: make device_attach() global and export it and driver_attach() so subsystems can have finer control over binding process. Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman drivers/base/bus.c | 4 +++- include/linux/device.h | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff -Nru a/drivers/base/bus.c b/drivers/base/bus.c --- a/drivers/base/bus.c 2004-11-01 13:36:27 -08:00 +++ b/drivers/base/bus.c 2004-11-01 13:36:27 -08:00 @@ -288,7 +288,7 @@ * Walk the list of drivers that the bus has and call bus_match() * for each pair. If a compatible pair is found, break out and return. */ -static int device_attach(struct device * dev) +int device_attach(struct device * dev) { struct bus_type * bus = dev->bus; struct list_head * entry; @@ -728,6 +728,8 @@ EXPORT_SYMBOL_GPL(device_bind_driver); EXPORT_SYMBOL_GPL(device_release_driver); +EXPORT_SYMBOL_GPL(device_attach); +EXPORT_SYMBOL_GPL(driver_attach); EXPORT_SYMBOL_GPL(bus_add_device); EXPORT_SYMBOL_GPL(bus_remove_device); diff -Nru a/include/linux/device.h b/include/linux/device.h --- a/include/linux/device.h 2004-11-01 13:36:27 -08:00 +++ b/include/linux/device.h 2004-11-01 13:36:27 -08:00 @@ -327,6 +327,7 @@ */ extern void device_bind_driver(struct device * dev); extern void device_release_driver(struct device * dev); +extern int device_attach(struct device * dev); extern void driver_attach(struct device_driver * drv);