diff options
-rw-r--r-- | board/spring/board.c | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/board/spring/board.c b/board/spring/board.c index d32c33080a..774f466814 100644 --- a/board/spring/board.c +++ b/board/spring/board.c @@ -319,22 +319,25 @@ int board_led_breathing(int enabled) { int ret = 0; - if (!enabled) { - return lp5562_engine_control(LP5562_ENG_HOLD, + if (enabled) { + ret |= lp5562_engine_load(LP5562_ENG_SEL_1, + breathing_prog, + sizeof(breathing_prog)); + ret |= lp5562_set_engine(LP5562_ENG_SEL_NONE, + LP5562_ENG_SEL_NONE, + LP5562_ENG_SEL_1); + ret |= lp5562_engine_control(LP5562_ENG_RUN, LP5562_ENG_HOLD, LP5562_ENG_HOLD); + } else { + ret |= lp5562_engine_control(LP5562_ENG_HOLD, + LP5562_ENG_HOLD, + LP5562_ENG_HOLD); + ret |= lp5562_set_engine(LP5562_ENG_SEL_NONE, + LP5562_ENG_SEL_NONE, + LP5562_ENG_SEL_NONE); } - ret |= lp5562_engine_load(LP5562_ENG_SEL_1, - breathing_prog, - sizeof(breathing_prog)); - ret |= lp5562_set_engine(LP5562_ENG_SEL_NONE, - LP5562_ENG_SEL_NONE, - LP5562_ENG_SEL_1); - ret |= lp5562_engine_control(LP5562_ENG_RUN, - LP5562_ENG_HOLD, - LP5562_ENG_HOLD); - return ret; } |