From aebd68ea41af7dc5d08a608edf490b708e6f765d Mon Sep 17 00:00:00 2001 From: Wojciech Slenska Date: Tue, 9 Aug 2022 10:11:12 +0200 Subject: [PATCH] drivers: counter: stm32u5 family compatibility In STM32U5X family there is no EXTI line for RTC. Signed-off-by: Wojciech Slenska --- drivers/counter/counter_ll_stm32_rtc.c | 7 ++++++- dts/arm/st/u5/stm32u5.dtsi | 9 +++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/drivers/counter/counter_ll_stm32_rtc.c b/drivers/counter/counter_ll_stm32_rtc.c index 9f26bf91793..3d2130b2c03 100644 --- a/drivers/counter/counter_ll_stm32_rtc.c +++ b/drivers/counter/counter_ll_stm32_rtc.c @@ -268,6 +268,8 @@ void rtc_stm32_isr(const struct device *dev) LL_C2_EXTI_ClearFlag_0_31(RTC_EXTI_LINE); #elif defined(CONFIG_SOC_SERIES_STM32G0X) LL_EXTI_ClearRisingFlag_0_31(RTC_EXTI_LINE); +#elif defined(CONFIG_SOC_SERIES_STM32U5X) + /* in STM32U5 family RTC is not connected to EXTI */ #else LL_EXTI_ClearFlag_0_31(RTC_EXTI_LINE); #endif @@ -372,10 +374,13 @@ static int rtc_stm32_init(const struct device *dev) #if defined(CONFIG_SOC_SERIES_STM32H7X) && defined(CONFIG_CPU_CORTEX_M4) LL_C2_EXTI_EnableIT_0_31(RTC_EXTI_LINE); + LL_EXTI_EnableRisingTrig_0_31(RTC_EXTI_LINE); +#elif defined(CONFIG_SOC_SERIES_STM32U5X) + /* in STM32U5 family RTC is not connected to EXTI */ #else LL_EXTI_EnableIT_0_31(RTC_EXTI_LINE); -#endif LL_EXTI_EnableRisingTrig_0_31(RTC_EXTI_LINE); +#endif rtc_stm32_irq_config(dev); diff --git a/dts/arm/st/u5/stm32u5.dtsi b/dts/arm/st/u5/stm32u5.dtsi index 2d0a26a470a..30f4baf7c4f 100644 --- a/dts/arm/st/u5/stm32u5.dtsi +++ b/dts/arm/st/u5/stm32u5.dtsi @@ -343,6 +343,15 @@ status = "disabled"; }; + rtc: rtc@46007800 { + compatible = "st,stm32-rtc"; + reg = <0x46007800 0x400>; + interrupts = <2 0>; + clocks = <&rcc STM32_CLOCK_BUS_APB3 0x00200000>; + prescaler = <32768>; + status = "disabled"; + }; + octospi1: octospi@420d1400 { compatible = "st,stm32-ospi"; reg = <0x420d1400 0x400>;