Looks like we can get rid of an 'if' and 'goto', so do it to simplify
the code.

Acked-by: Sam Ravnborg <s...@ravnborg.org>
Signed-off-by: Andrey Smirnov <andrew.smir...@gmail.com>
---
 drivers/gpio/gpiolib.c | 12 +++---------
 1 file changed, 3 insertions(+), 9 deletions(-)

diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
index d081e02fd..67d771bae 100644
--- a/drivers/gpio/gpiolib.c
+++ b/drivers/gpio/gpiolib.c
@@ -119,6 +119,7 @@ void gpio_free(unsigned gpio)
 int gpio_request_one(unsigned gpio, unsigned long flags, const char *label)
 {
        int err;
+       struct gpio_info *gi = gpio_to_desc(gpio);
 
        /*
         * Not all of the flags below are mulit-bit, but, for the sake
@@ -134,10 +135,7 @@ int gpio_request_one(unsigned gpio, unsigned long flags, 
const char *label)
        if (err)
                return err;
 
-       if (active_low) {
-               struct gpio_info *gi = gpio_to_desc(gpio);
-               gi->active_low = true;
-       }
+       gi->active_low = active_low;
 
        if (dir_in)
                err = gpio_direction_input(gpio);
@@ -147,12 +145,8 @@ int gpio_request_one(unsigned gpio, unsigned long flags, 
const char *label)
                err = gpio_direction_output(gpio, init_high);
 
        if (err)
-               goto free_gpio;
-
-       return 0;
+               gpio_free(gpio);
 
- free_gpio:
-       gpio_free(gpio);
        return err;
 }
 EXPORT_SYMBOL_GPL(gpio_request_one);
-- 
2.13.3


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

Reply via email to