On Tue, 22 Dec 2015, 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. > > This also start to propagate the negative error code from the > smbus call if there is one, as the last commit of this series > will make the gpiolib core deal with that properly. > > Cc: Lee Jones <lee.jones@xxxxxxxxxx> > Signed-off-by: Linus Walleij <linus.walleij@xxxxxxxxxx> > --- > Lee: as mentioned in 00/54: either apply this directly > or ACK it and I will take it into the GPIO tree. > --- > drivers/mfd/tps65010.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) Applied, thanks. > diff --git a/drivers/mfd/tps65010.c b/drivers/mfd/tps65010.c > index b96847491277..83e615ed100a 100644 > --- a/drivers/mfd/tps65010.c > +++ b/drivers/mfd/tps65010.c > @@ -499,11 +499,11 @@ static int tps65010_gpio_get(struct gpio_chip *chip, unsigned offset) > if (offset < 4) { > value = i2c_smbus_read_byte_data(tps->client, TPS_DEFGPIO); > if (value < 0) > - return 0; > + return value; > if (value & (1 << (offset + 4))) /* output */ > return !(value & (1 << offset)); > else /* input */ > - return (value & (1 << offset)); > + return !!(value & (1 << offset)); > } > > /* REVISIT we *could* report LED1/nPG and LED2 state ... */ -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog -- To unsubscribe from this list: send the line "unsubscribe linux-gpio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html