diff --git a/drivers/power/bq2589x_chg_mmi/bq2589x_charger.c b/drivers/power/bq2589x_chg_mmi/bq2589x_charger.c index 4e3d45df0c60..2c7cf6c57742 100644 --- a/drivers/power/bq2589x_chg_mmi/bq2589x_charger.c +++ b/drivers/power/bq2589x_chg_mmi/bq2589x_charger.c @@ -1028,12 +1028,10 @@ static int bq2589x_power_supply_get_property(struct power_supply *psy, chrg_status = bq2589x_get_charging_status(bq); if (!state.online) val->intval = POWER_SUPPLY_STATUS_DISCHARGING; - else if (chrg_status == STATUS_NOT_CHARGING) + else if (chrg_status == STATUS_NOT_CHARGING || chrg_status == STATUS_TERMINATION_DONE) val->intval = POWER_SUPPLY_STATUS_NOT_CHARGING; else if (chrg_status == STATUS_PRE_CHARGING || chrg_status == STATUS_FAST_CHARGING) val->intval = POWER_SUPPLY_STATUS_CHARGING; - else if (chrg_status == STATUS_TERMINATION_DONE) - val->intval = POWER_SUPPLY_STATUS_FULL; else val->intval = POWER_SUPPLY_STATUS_UNKNOWN; break; diff --git a/drivers/power/sgm4154x_chg_mmi/sgm4154x_charger.c b/drivers/power/sgm4154x_chg_mmi/sgm4154x_charger.c index ed281476b7c0..016de370fd85 100644 --- a/drivers/power/sgm4154x_chg_mmi/sgm4154x_charger.c +++ b/drivers/power/sgm4154x_chg_mmi/sgm4154x_charger.c @@ -1060,10 +1060,8 @@ static int sgm4154x_charger_get_property(struct power_supply *psy, chrg_status = sgm4154x_get_charging_status(sgm); if (!state.chrg_type || (state.chrg_type == SGM4154x_OTG_MODE)) val->intval = POWER_SUPPLY_STATUS_DISCHARGING; - else if (!chrg_status) + else if (!chrg_status || (chrg_status == SGM4154x_TERM_CHRG)) val->intval = POWER_SUPPLY_STATUS_NOT_CHARGING; - else if (chrg_status == SGM4154x_TERM_CHRG) - val->intval = POWER_SUPPLY_STATUS_FULL; else val->intval = POWER_SUPPLY_STATUS_CHARGING; break;