Skip to content

Commit a83f2c5

Browse files
LeoCX-Tsaiquinchou77
authored andcommitted
fwk: main: avoid extender overwritten charger limit
if disable extender is and setting the charger limit at bios option same moment, host will send charger limit cmd first(3e03) and then disable extender(3e24), but if disable extender it will set charger to normal and let sustainer to default (battery_sustainer_set(-1, -1)), so charger limit will be overwritten to disable BRANCH=fwk-main BUG=https://community.frame.work/t/12th-gen-intel-core-bios-3-09-release-beta/65716/15 TEST=test on marigold, into bios setup, disable battery extender and setting chargerlimit(80%) press f10 saving and reboot, after boot up check battery percentage will stop at 80% Signed-off-by: LeoCX_Tsai <[email protected]> (cherry picked from commit 09386f6ad0c97b7129f4447af8a593f59bd45570)
1 parent 420ad12 commit a83f2c5

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

zephyr/program/framework/src/battery_extender.c

+5-2
Original file line numberDiff line numberDiff line change
@@ -192,8 +192,11 @@ static enum ec_status battery_extender_hc(struct host_cmd_handler_args *args)
192192
if (batt_extender_disable != p->disable) {
193193
batt_extender_disable = p->disable;
194194
if (batt_extender_disable) {
195-
battery_sustainer_set(-1, -1);
196-
set_chg_ctrl_mode(CHARGE_CONTROL_NORMAL);
195+
/* if charger limit has been set don't control sustainer again */
196+
if (charger_sustainer_percentage() == 100) {
197+
battery_sustainer_set(-1, -1);
198+
set_chg_ctrl_mode(CHARGE_CONTROL_NORMAL);
199+
}
197200
stage = BATT_EXTENDER_STAGE_0;
198201
}
199202
}

0 commit comments

Comments
 (0)