driver core: prevent deferred probe with platform_driver_probe
authorJohan Hovold <jhovold@gmail.com>
Mon, 23 Sep 2013 14:27:26 +0000 (16:27 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 26 Sep 2013 23:18:32 +0000 (16:18 -0700)
commit3f9120b0424f3e03c75518cb751f9e2bfa73c32a
treecee0874824b0b605086055c927671a15ce1bbd68
parenteee031649707db3c9920d9498f8d03819b74fc23
driver core: prevent deferred probe with platform_driver_probe

Prevent drivers relying on platform_driver_probe from requesting
deferred probing in order to avoid further futile probe attempts (either
the driver has been unregistered or its probe function has been set to
platform_drv_probe_fail when probing is retried).

Note that several platform drivers currently return subsystem errors
from probe and that these can include -EPROBE_DEFER (e.g. if a gpio
request fails).

Add a warning to platform_drv_probe that can be used to catch drivers
that inadvertently request probe deferral while using
platform_driver_probe.

Signed-off-by: Johan Hovold <jhovold@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/base/platform.c
include/linux/platform_device.h