Commit 6244e930 authored by Alessandro Manganaro's avatar Alessandro Manganaro Committed by Benjamin Cabé
Browse files

drivers: timer: Fix interrupt management in stm32 lptim timer

Fix interrupt management issue in stm32 lptim timer

Signed-off-by: default avatarAlessandro Manganaro <alessandro.manganaro@st.com>
parent e5ded3d7
Loading
Loading
Loading
Loading
+4 −0
Changes for drivers/timer/stm32_lptim_timer.c: 4 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -244,6 +244,9 @@ void sys_clock_set_timeout(int32_t ticks, bool idle)
		counter_get_value(stdby_timer, &stdby_timer_pre_stdby);
		lptim_cnt_pre_stdby = z_clock_lptim_getcounter();

		LL_LPTIM_DisableIT_ARROK(LPTIM);
		LL_LPTIM_ClearFlag_ARROK(LPTIM);
		NVIC_ClearPendingIRQ(DT_INST_IRQN(0));
		/* Stop clocks for LPTIM, since RTC is used instead */
		clock_control_off(clk_ctrl, (clock_control_subsys_t) &lptim_clk[0]);

@@ -552,6 +555,7 @@ static int sys_clock_driver_init(void)
	LL_LPTIM_ClearFLAG_ARRM(LPTIM);

	/* ARROK bit validates the write operation to ARR register */
	autoreload_ready = true;
	LL_LPTIM_EnableIT_ARROK(LPTIM);
	stm32_lptim_wait_ready();
	LL_LPTIM_ClearFlag_ARROK(LPTIM);