diff --git a/drivers/power/mmi_parallel_charger/mmi_charger_core.c b/drivers/power/mmi_parallel_charger/mmi_charger_core.c index 39ad8e735513..4b482a23f9f7 100644 --- a/drivers/power/mmi_parallel_charger/mmi_charger_core.c +++ b/drivers/power/mmi_parallel_charger/mmi_charger_core.c @@ -465,8 +465,17 @@ static int batt_get_property(struct power_supply *psy, mmi_chrg_err(chip, "Get Unknown prop %d rc = %d\n", psp, rc); rc = 0; val->intval = -EINVAL; - } else + } else { + val->intval = prop.intval; + if (psp == POWER_SUPPLY_PROP_STATUS && + prop.intval == POWER_SUPPLY_STATUS_NOT_CHARGING) { + rc = power_supply_get_property(chip->extrn_psy, + psp, &prop); + if (!rc && prop.intval == POWER_SUPPLY_STATUS_CHARGING) + val->intval = prop.intval; + } + } break; } return rc;