summaryrefslogtreecommitdiffstats
path: root/drivers/base
diff options
context:
space:
mode:
authorFabio Porcedda <fabio.porcedda@gmail.com>2013-03-26 10:35:15 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-03-29 17:10:55 +0100
commit647c86d0a2d1131dd9412361958d8e0aae949523 (patch)
tree46c8f627447e39eefc6ac425309926691eb4e6dd /drivers/base
parentsysfs: use atomic_inc_unless_negative in sysfs_get_active (diff)
downloadlinux-647c86d0a2d1131dd9412361958d8e0aae949523.tar.xz
linux-647c86d0a2d1131dd9412361958d8e0aae949523.zip
driver core: warn that platform_driver_probe can not use deferred probing
Add documentation that platform_driver_probe() is incompatible with deferred probing. Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com> Cc: Arnd Bergmann <arnd@arndb.de> Cc: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/base')
-rw-r--r--drivers/base/platform.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/base/platform.c b/drivers/base/platform.c
index c0b8df38402b..ef2afb1e33e6 100644
--- a/drivers/base/platform.c
+++ b/drivers/base/platform.c
@@ -555,7 +555,8 @@ EXPORT_SYMBOL_GPL(platform_driver_unregister);
/**
* platform_driver_probe - register driver for non-hotpluggable device
* @drv: platform driver structure
- * @probe: the driver probe routine, probably from an __init section
+ * @probe: the driver probe routine, probably from an __init section,
+ * must not return -EPROBE_DEFER.
*
* Use this instead of platform_driver_register() when you know the device
* is not hotpluggable and has already been registered, and you want to
@@ -566,6 +567,9 @@ EXPORT_SYMBOL_GPL(platform_driver_unregister);
* into system-on-chip processors, where the controller devices have been
* configured as part of board setup.
*
+ * This is incompatible with deferred probing so probe() must not
+ * return -EPROBE_DEFER.
+ *
* Returns zero if the driver registered and bound to a device, else returns
* a negative error code and with the driver not registered.
*/