static void power_supply_update_bat_leds(struct power_supply *psy)
{
union power_supply_propval status;
+ union power_supply_propval current_now;
unsigned long delay_on = 0;
unsigned long delay_off = 0;
switch (status.intval) {
case POWER_SUPPLY_STATUS_FULL:
+ psy->get_property(psy, POWER_SUPPLY_PROP_CURRENT_NOW,
+ ¤t_now);
led_trigger_event(psy->charging_full_trig, LED_FULL);
- led_trigger_event(psy->charging_trig, LED_OFF);
+ led_trigger_event(psy->charging_trig,
+ current_now.intval > 0 ? LED_FULL : LED_OFF);
led_trigger_event(psy->full_trig, LED_FULL);
led_trigger_event(psy->charging_blink_full_solid_trig,
LED_FULL);