From: Linus Walleij Date: Mon, 21 Dec 2015 10:20:56 +0000 (+0100) Subject: gpio: mpc8xxx: Be sure to clamp return value X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=c759174e73ab4a2190244c903649032ac748586d;p=deliverable%2Flinux.git gpio: mpc8xxx: Be sure to clamp return value 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: Uwe Kleine-König Cc: Alexander Stein Signed-off-by: Linus Walleij --- diff --git a/drivers/gpio/gpio-mpc8xxx.c b/drivers/gpio/gpio-mpc8xxx.c index 48ef368347ab..de4cd22a5014 100644 --- a/drivers/gpio/gpio-mpc8xxx.c +++ b/drivers/gpio/gpio-mpc8xxx.c @@ -79,7 +79,7 @@ static int mpc8572_gpio_get(struct gpio_chip *gc, unsigned int gpio) val = in_be32(mm->regs + GPIO_DAT) & ~out_mask; out_shadow = mpc8xxx_gc->data & out_mask; - return (val | out_shadow) & mpc8xxx_gpio2mask(gpio); + return !!((val | out_shadow) & mpc8xxx_gpio2mask(gpio)); } static int mpc8xxx_gpio_get(struct gpio_chip *gc, unsigned int gpio)