ab8500-chargalg: Update battery health on safety timer exp
[firefly-linux-kernel-4.4.55.git] / drivers / power / abx500_chargalg.c
index 830b2dd7ac6d135dceebcba6aa080b34a0cc4851..2463fa01d63f078655fa773d9ed9e61cad68bbde 100644 (file)
@@ -1628,6 +1628,9 @@ static int abx500_chargalg_get_property(struct power_supply *psy,
                                val->intval = POWER_SUPPLY_HEALTH_COLD;
                        else
                                val->intval = POWER_SUPPLY_HEALTH_OVERHEAT;
+               } else if (di->charge_state == STATE_SAFETY_TIMER_EXPIRED ||
+                          di->charge_state == STATE_SAFETY_TIMER_EXPIRED_INIT) {
+                       val->intval = POWER_SUPPLY_HEALTH_UNSPEC_FAILURE;
                } else {
                        val->intval = POWER_SUPPLY_HEALTH_GOOD;
                }