diff options
author | Kim, Milo <Milo.Kim@ti.com> | 2012-08-31 09:26:06 +0000 |
---|---|---|
committer | Anton Vorontsov <anton.vorontsov@linaro.org> | 2012-09-20 18:05:55 -0700 |
commit | e06374b0d6055ef21e49d14d955eb9fc5088f707 (patch) | |
tree | 6f4407381fb518e2110a12859c38a12d3134d2cb /drivers/power/lp8727_charger.c | |
parent | b59c93c0090d14556d988607e5bdb297d6e380a7 (diff) | |
download | talos-op-linux-e06374b0d6055ef21e49d14d955eb9fc5088f707.tar.gz talos-op-linux-e06374b0d6055ef21e49d14d955eb9fc5088f707.zip |
lp8727_charger: Return if the battery is discharging
If the charger is pulled out, just return as DISCHARGING. Then no need for
additional 'else' statement.
Signed-off-by: Milo(Woogyom) Kim <milo.kim@ti.com>
Signed-off-by: Anton Vorontsov <anton.vorontsov@linaro.org>
Diffstat (limited to 'drivers/power/lp8727_charger.c')
-rw-r--r-- | drivers/power/lp8727_charger.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/power/lp8727_charger.c b/drivers/power/lp8727_charger.c index 2507b2bb9df2..13a787adcbe9 100644 --- a/drivers/power/lp8727_charger.c +++ b/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); |