gpio: bcm281xx: Fix return value of bcm_kona_gpio_get()

Message ID 1383935464-3484-1-git-send-email-markus.mayer@linaro.org
State New
Headers show

Commit Message

Markus Mayer Nov. 8, 2013, 6:31 p.m.
We need to return the corresponding bit (0 or 1) for a particular GPIO.

Signed-off-by: Markus Mayer <markus.mayer@linaro.org>
Reviewed-by: Tim Kryger <tim.kryger@linaro.org>
---

Without this change, the driver doesn't work in all cases as it should.

 drivers/gpio/gpio-bcm-kona.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Patch

diff --git a/drivers/gpio/gpio-bcm-kona.c b/drivers/gpio/gpio-bcm-kona.c
index 72c927d..db473f1 100644
--- a/drivers/gpio/gpio-bcm-kona.c
+++ b/drivers/gpio/gpio-bcm-kona.c
@@ -158,7 +158,7 @@  static int bcm_kona_gpio_get(struct gpio_chip *chip, unsigned gpio)
 	spin_unlock_irqrestore(&kona_gpio->lock, flags);
 
 	/* return the specified bit status */
-	return !!(val & bit);
+	return (val >> bit) & 1;
 }
 
 static int bcm_kona_gpio_direction_input(struct gpio_chip *chip, unsigned gpio)