MIPS: TXx9: Be sure to clamp return value
authorLinus Walleij <linus.walleij@linaro.org>
Tue, 22 Dec 2015 14:41:01 +0000 (15:41 +0100)
committerRalf Baechle <ralf@linux-mips.org>
Sun, 24 Jan 2016 01:22:14 +0000 (02:22 +0100)
As we want gpio_chip .get() calls to be able to return negative
error codes and propagate to drivers, we need to go over all
drivers and make sure their return values are clamped to [0,1].
We do this by using the ret = !!(val) design pattern.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Cc: linux-mips@linux-mips.org
Cc: linux-gpio@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/11923/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/kernel/gpio_txx9.c

index c6854d9df926d5c44e3654bcc7fd1d57136741b8..705be43c35333f648f04a96f26a4104ba172c46c 100644 (file)
@@ -21,7 +21,7 @@ static struct txx9_pio_reg __iomem *txx9_pioptr;
 
 static int txx9_gpio_get(struct gpio_chip *chip, unsigned int offset)
 {
 
 static int txx9_gpio_get(struct gpio_chip *chip, unsigned int offset)
 {
-       return __raw_readl(&txx9_pioptr->din) & (1 << offset);
+       return !!(__raw_readl(&txx9_pioptr->din) & (1 << offset));
 }
 
 static void txx9_gpio_set_raw(unsigned int offset, int value)
 }
 
 static void txx9_gpio_set_raw(unsigned int offset, int value)