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

Commit 74da5f98 authored by Ashay Jaiswal's avatar Ashay Jaiswal Committed by Harry Yang
Browse files

qcom: battery: fix taper entry handling



Move Taper entry check before charge enable check in
"handle_main_charge_type" to make sure TAPER entry is
handled properly.

CRs-Fixed: 2001651
Change-Id: Id7c3f48b66ba8df20ca2be022565d8bf0e38379b
Signed-off-by: default avatarAshay Jaiswal <ashayj@codeaurora.org>
parent 8afedfc7
Loading
Loading
Loading
Loading
+9 −9
Original line number Diff line number Diff line
@@ -501,15 +501,6 @@ static void handle_main_charge_type(struct pl_data *chip)
		return;
	}

	/* handle fast/taper charge entry */
	if (pval.intval == POWER_SUPPLY_CHARGE_TYPE_TAPER
			|| pval.intval == POWER_SUPPLY_CHARGE_TYPE_FAST) {
		pl_dbg(chip, PR_PARALLEL, "chg_state enabling parallel\n");
		vote(chip->pl_disable_votable, CHG_STATE_VOTER, false, 0);
		chip->charge_type = pval.intval;
		return;
	}

	/* handle taper charge entry */
	if (chip->charge_type == POWER_SUPPLY_CHARGE_TYPE_FAST
		&& (pval.intval == POWER_SUPPLY_CHARGE_TYPE_TAPER)) {
@@ -519,6 +510,15 @@ static void handle_main_charge_type(struct pl_data *chip)
		return;
	}

	/* handle fast/taper charge entry */
	if (pval.intval == POWER_SUPPLY_CHARGE_TYPE_TAPER
			|| pval.intval == POWER_SUPPLY_CHARGE_TYPE_FAST) {
		pl_dbg(chip, PR_PARALLEL, "chg_state enabling parallel\n");
		vote(chip->pl_disable_votable, CHG_STATE_VOTER, false, 0);
		chip->charge_type = pval.intval;
		return;
	}

	/* remember the new state only if it isn't any of the above */
	chip->charge_type = pval.intval;
}