diff options
author | Tony Lindgren <tony@atomide.com> | 2014-06-02 16:13:46 -0700 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2014-06-12 09:57:00 +0200 |
commit | 06fc3b70f1dc9c53070fa63a528830f54afc3c38 (patch) | |
tree | 6a9596e3859810e85b7690531fefd9234617e5f4 | |
parent | 963649d735c8b6eb0f97e82c54f02426ff3f1f45 (diff) | |
download | linux-06fc3b70f1dc9c53070fa63a528830f54afc3c38.tar.gz linux-06fc3b70f1dc9c53070fa63a528830f54afc3c38.tar.bz2 linux-06fc3b70f1dc9c53070fa63a528830f54afc3c38.zip |
gpio: of: Fix handling for deferred probe for -gpio suffix
Commit dd34c37aa3e (gpio: of: Allow -gpio suffix for property names)
added parsing for both -gpio and -gpios suffix but also changed
the handling for deferred probe unintentionally. Because of the
looping the second name will now return -ENOENT instead of
-EPROBE_DEFER. Fix the issue by breaking out of the loop if
-EPROBE_DEFER is encountered.
Signed-off-by: Tony Lindgren <tony@atomide.com>
Reviewed-by: Thierry Reding <treding@nvidia.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
-rw-r--r-- | drivers/gpio/gpiolib.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c index d9c9cb4665db..2ebc9071e354 100644 --- a/drivers/gpio/gpiolib.c +++ b/drivers/gpio/gpiolib.c @@ -2614,7 +2614,7 @@ static struct gpio_desc *of_find_gpio(struct device *dev, const char *con_id, desc = of_get_named_gpiod_flags(dev->of_node, prop_name, idx, &of_flags); - if (!IS_ERR(desc)) + if (!IS_ERR(desc) || (PTR_ERR(desc) == -EPROBE_DEFER)) break; } |