summaryrefslogtreecommitdiffstats
path: root/Documentation/pinctrl.txt
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2012-04-10 10:00:38 +0200
committerLinus Walleij <linus.walleij@linaro.org>2012-04-18 13:53:11 +0200
commitc05127c4e2c6e7d9949347a76fd05c337bcd5e84 (patch)
tree5b23f8a116919028317f026e3f9998dce2ffb828 /Documentation/pinctrl.txt
parentad8bb720c23a80233e45ed31d67458f5e5b7ab31 (diff)
downloadlinux-c05127c4e2c6e7d9949347a76fd05c337bcd5e84.tar.gz
linux-c05127c4e2c6e7d9949347a76fd05c337bcd5e84.tar.bz2
linux-c05127c4e2c6e7d9949347a76fd05c337bcd5e84.zip
pinctrl: implement pinctrl deferred probing
If drivers try to obtain pinctrl handles for a pin controller that has not yet registered to the subsystem, we need to be able to back out and retry with deferred probing. So let's return -EPROBE_DEFER whenever this location fails. Also downgrade the errors to info, maybe we will even set them to debug once the deferred probing is commonplace. Cc: Arnd Bergmann <arnd@arndb.de> Reviewed-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Stephen Warren <swarren@wwwdotorg.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'Documentation/pinctrl.txt')
-rw-r--r--Documentation/pinctrl.txt5
1 files changed, 5 insertions, 0 deletions
diff --git a/Documentation/pinctrl.txt b/Documentation/pinctrl.txt
index eb46b1c0b07a..4431c3e727ba 100644
--- a/Documentation/pinctrl.txt
+++ b/Documentation/pinctrl.txt
@@ -1043,6 +1043,11 @@ quickly poking some registers.
The pins are allocated for your device when you issue the pinctrl_get() call,
after this you should be able to see this in the debugfs listing of all pins.
+NOTE: the pinctrl system will return -EPROBE_DEFER if it cannot find the
+requested pinctrl handles, for example if the pinctrl driver has not yet
+registered. Thus make sure that the error path in your driver gracefully
+cleans up and is ready to retry the probing later in the startup process.
+
System pin control hogging
==========================