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

Commit 208e1c54 authored by Anirudh Ghayal's avatar Anirudh Ghayal
Browse files

power: smb5-lib: Use the unlocked version votable for FV



Float voltage is read in the batt_health() callback.
batt_health() is called from batt_status() and batt_status()
is also called from the FV callback leading to a deadlock.
Fix it by using the unlocked version of votable while reading FV.

Change-Id: Ie6f9f683c048a2a1c64d46716433bcff359dc3b0
Signed-off-by: default avatarAnirudh Ghayal <aghayal@codeaurora.org>
parent 99e8c416
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -2262,7 +2262,8 @@ int smblib_get_prop_batt_health(struct smb_charger *chg,
			 * If Vbatt is within 40mV above Vfloat, then don't
			 * treat it as overvoltage.
			 */
			effective_fv_uv = get_effective_result(chg->fv_votable);
			effective_fv_uv = get_effective_result_locked(
							chg->fv_votable);
			if (pval.intval >= effective_fv_uv + 40000) {
				val->intval = POWER_SUPPLY_HEALTH_OVERVOLTAGE;
				smblib_err(chg, "battery over-voltage vbat_fg = %duV, fv = %duV\n",