diff mbox

[21/54] gpio: tx1090-pdc: Be sure to clamp return value

Message ID 1450794444-23461-1-git-send-email-linus.walleij@linaro.org
State New
Headers show

Commit Message

Linus Walleij Dec. 22, 2015, 2:27 p.m. UTC
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.

Cc: James Hogan <james.hogan@imgtec.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
---
 drivers/gpio/gpio-tz1090-pdc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

James Hogan Dec. 22, 2015, 9:11 p.m. UTC | #1
On Tue, Dec 22, 2015 at 03:27:24PM +0100, Linus Walleij wrote:
> 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.
> 
> Cc: James Hogan <james.hogan@imgtec.com>
> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

Acked-by: James Hogan <james.hogan@imgtec.com>

Cheers
James

> ---
>  drivers/gpio/gpio-tz1090-pdc.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpio/gpio-tz1090-pdc.c b/drivers/gpio/gpio-tz1090-pdc.c
> index 0a01c8736aff..b08b22b1b111 100644
> --- a/drivers/gpio/gpio-tz1090-pdc.c
> +++ b/drivers/gpio/gpio-tz1090-pdc.c
> @@ -113,7 +113,7 @@ static int tz1090_pdc_gpio_direction_output(struct gpio_chip *chip,
>  static int tz1090_pdc_gpio_get(struct gpio_chip *chip, unsigned int offset)
>  {
>  	struct tz1090_pdc_gpio *priv = to_pdc(chip);
> -	return pdc_read(priv, REG_SOC_GPIO_STATUS) & BIT(offset);
> +	return !!(pdc_read(priv, REG_SOC_GPIO_STATUS) & BIT(offset));
>  }
>  
>  static void tz1090_pdc_gpio_set(struct gpio_chip *chip, unsigned int offset,
> -- 
> 2.4.3
>
diff mbox

Patch

diff --git a/drivers/gpio/gpio-tz1090-pdc.c b/drivers/gpio/gpio-tz1090-pdc.c
index 0a01c8736aff..b08b22b1b111 100644
--- a/drivers/gpio/gpio-tz1090-pdc.c
+++ b/drivers/gpio/gpio-tz1090-pdc.c
@@ -113,7 +113,7 @@  static int tz1090_pdc_gpio_direction_output(struct gpio_chip *chip,
 static int tz1090_pdc_gpio_get(struct gpio_chip *chip, unsigned int offset)
 {
 	struct tz1090_pdc_gpio *priv = to_pdc(chip);
-	return pdc_read(priv, REG_SOC_GPIO_STATUS) & BIT(offset);
+	return !!(pdc_read(priv, REG_SOC_GPIO_STATUS) & BIT(offset));
 }
 
 static void tz1090_pdc_gpio_set(struct gpio_chip *chip, unsigned int offset,