From 3531d6b4c7e51041b9f330429c52a0fc63a64888 Mon Sep 17 00:00:00 2001 From: "Kim, Milo" Date: Fri, 31 Aug 2012 09:26:06 +0000 Subject: [PATCH] --- yaml --- r: 330514 b: refs/heads/master c: e06374b0d6055ef21e49d14d955eb9fc5088f707 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/power/lp8727_charger.c | 13 +++++++------ 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/[refs] b/[refs] index f934583fb88d..8f072e15cc39 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: b59c93c0090d14556d988607e5bdb297d6e380a7 +refs/heads/master: e06374b0d6055ef21e49d14d955eb9fc5088f707 diff --git a/trunk/drivers/power/lp8727_charger.c b/trunk/drivers/power/lp8727_charger.c index 2507b2bb9df2..13a787adcbe9 100644 --- a/trunk/drivers/power/lp8727_charger.c +++ b/trunk/drivers/power/lp8727_charger.c @@ -336,15 +336,16 @@ static int lp8727_battery_get_property(struct power_supply *psy, switch (psp) { case POWER_SUPPLY_PROP_STATUS: - if (lp8727_is_charger_attached(psy->name, pchg->devid)) { - lp8727_read_byte(pchg, LP8727_STATUS1, &read); + if (!lp8727_is_charger_attached(psy->name, pchg->devid)) { + val->intval = POWER_SUPPLY_STATUS_DISCHARGING; + return 0; + } + + lp8727_read_byte(pchg, LP8727_STATUS1, &read); - val->intval = (read & LP8727_CHGSTAT) == LP8727_STAT_EOC ? + val->intval = (read & LP8727_CHGSTAT) == LP8727_STAT_EOC ? POWER_SUPPLY_STATUS_FULL : POWER_SUPPLY_STATUS_CHARGING; - } else { - val->intval = POWER_SUPPLY_STATUS_DISCHARGING; - } break; case POWER_SUPPLY_PROP_HEALTH: lp8727_read_byte(pchg, LP8727_STATUS2, &read);