Heiko, On Sun, Sep 21, 2014 at 1:05 PM, Heiko Stuebner <heiko@xxxxxxxxx> wrote: > From: Heiko Stuebner <heiko.stuebner@xxxxxx> > > Some gpio implementations return interesting values for gpio_get_value when > the value is not 0 - as seen on a imx6sl board. Therefore do not use the > value returned from gpio_get_value directly but simply check for 0 or not 0. > > Signed-off-by: Heiko Stuebner <heiko.stuebner@xxxxxx> > --- > drivers/power/gpio-charger.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/power/gpio-charger.c b/drivers/power/gpio-charger.c > index 5fe6879..ce99a29 100644 > --- a/drivers/power/gpio-charger.c > +++ b/drivers/power/gpio-charger.c > @@ -57,7 +57,7 @@ static int gpio_charger_get_property(struct power_supply *psy, > > switch (psp) { > case POWER_SUPPLY_PROP_ONLINE: > - val->intval = gpio_get_value_cansleep(pdata->gpio); > + val->intval = gpio_get_value_cansleep(pdata->gpio) ? 1 : 0; There is a common practice about using "!!" for this. AKA: "val->intval = !!gpio_get_value_cansleep(pdata->gpio);". > val->intval ^= pdata->gpio_active_low; It seems like while you're at it you could also fix "pdata->gpio_active_low" to have the "!!", just to be safe. ...if you don't fix this, perhaps you should fix your last patch to add a "!!", like: pdata->gpio_active_low = !!(flags & OF_GPIO_ACTIVE_LOW); ...technically OF_GPIO_ACTIVE_LOW is 0x1 so it's not a bug, but... -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html