fbdev: via-gpio: Be sure to clamp return value
authorLinus Walleij <linus.walleij@linaro.org>
Mon, 21 Dec 2015 22:03:02 +0000 (23:03 +0100)
committerLinus Walleij <linus.walleij@linaro.org>
Tue, 5 Jan 2016 09:28:03 +0000 (10:28 +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.

Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
Acked-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/video/fbdev/via/via-gpio.c

index 6f433b8..3d35440 100644 (file)
@@ -142,7 +142,7 @@ static int via_gpio_get(struct gpio_chip *chip, unsigned int nr)
        gpio = cfg->active_gpios[nr];
        reg = via_read_reg(VIASR, gpio->vg_port_index);
        spin_unlock_irqrestore(&cfg->vdev->reg_lock, flags);
-       return reg & (0x04 << gpio->vg_mask_shift);
+       return !!(reg & (0x04 << gpio->vg_mask_shift));
 }