Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 552584f5 authored by Danke Xie's avatar Danke Xie Committed by Arve Hjønnevåg
Browse files

power: android-battery: Allow changing current in charging state



When a new charge source is set, enable charging and set the charging
current, unless we've paused charging due to battery full or battery
health problems.

Change-Id: I129e621c455a941e264dc431b4eb9db6a17c9f7b
Signed-off-by: default avatarDanke Xie <d.xie@sta.samsung.com>
Signed-off-by: default avatarTodd Poynor <toddpoynor@google.com>
parent 90acaa4d
Loading
Loading
Loading
Loading
+13 −4
Original line number Diff line number Diff line
@@ -412,15 +412,24 @@ static void android_bat_charger_work(struct work_struct *work)
	case CHARGE_SOURCE_AC:
		/*
		 * If charging status indicates a charger was already
		 * connected prior to this and a non-charging status is
		 * set, leave the status alone.
		 * connected prior to this and the status is something
		 * other than charging ("full" or "not-charging"), leave
		 * the status alone.
		 */
		if (battery->charging_status ==
		    POWER_SUPPLY_STATUS_DISCHARGING ||
		    battery->charging_status == POWER_SUPPLY_STATUS_UNKNOWN) {
		    battery->charging_status == POWER_SUPPLY_STATUS_UNKNOWN)
			battery->charging_status = POWER_SUPPLY_STATUS_CHARGING;

		/*
		 * Don't re-enable charging if the battery is full and we
		 * are not actively re-charging it, or if "not-charging"
		 * status is set.
		 */
		if (!((battery->charging_status == POWER_SUPPLY_STATUS_FULL
		       && !battery->recharging) || battery->charging_status ==
		      POWER_SUPPLY_STATUS_NOT_CHARGING))
			android_bat_enable_charging(battery, true);
		}

		break;
	default: