Skip to content

Commit 0063f58

Browse files
blue1112Elmo_Lan
andauthored
lotus: fix update_safety (#942)
safety_level maybe occur race condition and go a wrong level, and stock at a lower pmf. This CL is mean to prevent it. Signed-off-by: elmo_lan <hplan1112@gmail.com> Co-authored-by: Elmo_Lan <Elmo_Lan@compal.corp-partner.google.com>
1 parent 3e02890 commit 0063f58

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

zephyr/program/lotus/lotus/src/cpu_power.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -805,7 +805,8 @@ static void update_safety_power_limit(int active_mpower)
805805
safety_level++;
806806
} else {
807807
set_chg_ctrl_mode(CHARGE_CONTROL_NORMAL);
808-
safety_level--;
808+
if (safety_level > 1)
809+
safety_level--;
809810
}
810811
break;
811812
case LEVEL_TUNE_PLS:
@@ -916,6 +917,7 @@ static void update_safety_power_limit(int active_mpower)
916917
safety_level--;
917918
break;
918919
default:
920+
safety_level = LEVEL_COUNT;
919921
break;
920922
}
921923

0 commit comments

Comments
 (0)