diff options
Diffstat (limited to 'drivers/power')
-rw-r--r-- | drivers/power/lp8727_charger.c | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/drivers/power/lp8727_charger.c b/drivers/power/lp8727_charger.c index 1a5f4b2..32bf157 100644 --- a/drivers/power/lp8727_charger.c +++ b/drivers/power/lp8727_charger.c @@ -55,6 +55,7 @@ #define CHGSTAT (3 << 4) #define CHPORT (1 << 6) #define DCPORT (1 << 7) +#define LP8727_STAT_EOC 0x30 /* STATUS2 register */ #define TEMP_STAT (3 << 5) @@ -69,13 +70,6 @@ enum lp8727_dev_id { ID_MAX, }; -enum lp8727_chg_stat { - PRECHG, - CC, - CV, - EOC, -}; - enum lp8727_die_temp { LP8788_TEMP_75C, LP8788_TEMP_95C, @@ -348,10 +342,10 @@ static int lp8727_battery_get_property(struct power_supply *psy, case POWER_SUPPLY_PROP_STATUS: if (lp8727_is_charger_attached(psy->name, pchg->devid)) { lp8727_read_byte(pchg, STATUS1, &read); - if (((read & CHGSTAT) >> 4) == EOC) - val->intval = POWER_SUPPLY_STATUS_FULL; - else - val->intval = POWER_SUPPLY_STATUS_CHARGING; + + val->intval = (read & CHGSTAT) == LP8727_STAT_EOC ? + POWER_SUPPLY_STATUS_FULL : + POWER_SUPPLY_STATUS_CHARGING; } else { val->intval = POWER_SUPPLY_STATUS_DISCHARGING; } |