diff options
author | Masahiro Yamada <yamada.masahiro@socionext.com> | 2016-08-12 01:21:58 +0900 |
---|---|---|
committer | Linus Walleij <linus.walleij@linaro.org> | 2016-08-19 10:55:08 +0200 |
commit | acf06ff76cb94dd98ba1fa74e63a8ee578673a83 (patch) | |
tree | 3f17ce87d972e3f8d7f3b76f16e42941dca2f4d0 /drivers/gpio/gpiolib.c | |
parent | 05cc995f4d44c2b14a1f15f3271cc9715cb81099 (diff) |
gpio: refactor gpiochip_find() slightly
The if...else... block after the loop can be dropped with
a slight refactoring.
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/gpio/gpiolib.c')
-rw-r--r-- | drivers/gpio/gpiolib.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c index 53ff25ac66d8..deaf4d4dc68e 100644 --- a/drivers/gpio/gpiolib.c +++ b/drivers/gpio/gpiolib.c @@ -1363,19 +1363,15 @@ struct gpio_chip *gpiochip_find(void *data, void *data)) { struct gpio_device *gdev; - struct gpio_chip *chip; + struct gpio_chip *chip = NULL; unsigned long flags; spin_lock_irqsave(&gpio_lock, flags); list_for_each_entry(gdev, &gpio_devices, list) - if (gdev->chip && match(gdev->chip, data)) + if (gdev->chip && match(gdev->chip, data)) { + chip = gdev->chip; break; - - /* No match? */ - if (&gdev->list == &gpio_devices) - chip = NULL; - else - chip = gdev->chip; + } spin_unlock_irqrestore(&gpio_lock, flags); |