mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-18 22:54:00 +00:00
30 lines
1.1 KiB
Diff
30 lines
1.1 KiB
Diff
From 25b35da7f4cce82271859f1b6eabd9f3bd41a2bb Mon Sep 17 00:00:00 2001
|
|
From: Linus Walleij <linus.walleij@linaro.org>
|
|
Date: Wed, 05 Feb 2014 13:08:02 +0000
|
|
Subject: gpio: generic: clamp retured value to [0,1]
|
|
|
|
The generic GPIO would return 0 for low generic GPIO, and
|
|
something != 0 for high GPIO. Let's make this sane by clamping
|
|
the returned value to [0,1].
|
|
|
|
Reported-by: Evgeny Boger <boger@contactless.ru>
|
|
Reviewed-by: Alexandre Courbot <acourbot@nvidia.com>
|
|
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
|
---
|
|
(limited to 'drivers/gpio/gpio-generic.c')
|
|
|
|
diff --git a/drivers/gpio/gpio-generic.c b/drivers/gpio/gpio-generic.c
|
|
index 8c778af..d815dd2 100644
|
|
--- a/drivers/gpio/gpio-generic.c
|
|
+++ b/drivers/gpio/gpio-generic.c
|
|
@@ -139,7 +139,7 @@ static int bgpio_get(struct gpio_chip *gc, unsigned int gpio)
|
|
{
|
|
struct bgpio_chip *bgc = to_bgpio_chip(gc);
|
|
|
|
- return bgc->read_reg(bgc->reg_dat) & bgc->pin2mask(bgc, gpio);
|
|
+ return !!(bgc->read_reg(bgc->reg_dat) & bgc->pin2mask(bgc, gpio));
|
|
}
|
|
|
|
static void bgpio_set(struct gpio_chip *gc, unsigned int gpio, int val)
|
|
--
|
|
cgit v0.9.2
|