diff --git a/drivers/rtc/Kconfig.stm32_rtc b/drivers/rtc/Kconfig.stm32_rtc index 8662c37c7cf..2cae69ef08c 100644 --- a/drivers/rtc/Kconfig.stm32_rtc +++ b/drivers/rtc/Kconfig.stm32_rtc @@ -15,7 +15,7 @@ config RTC_STM32 select USE_STM32_LL_EXTI select NEWLIB_LIBC help - Build RTC driver for STM32 SoCs. Tested on STM32 F3, F4, L4 series. + Build RTC driver for STM32 SoCs. Tested on STM32 F3, F4, L4, F7 series. choice RTC_STM32_CLOCK_SRC bool "RTC clock source" diff --git a/drivers/rtc/rtc_ll_stm32.c b/drivers/rtc/rtc_ll_stm32.c index d0ad5fa222d..257f43089b9 100644 --- a/drivers/rtc/rtc_ll_stm32.c +++ b/drivers/rtc/rtc_ll_stm32.c @@ -19,7 +19,9 @@ #if defined(CONFIG_SOC_SERIES_STM32L4X) #define EXTI_LINE LL_EXTI_LINE_18 -#elif defined(CONFIG_SOC_SERIES_STM32F4X) || defined(CONFIG_SOC_SERIES_STM32F3X) +#elif defined(CONFIG_SOC_SERIES_STM32F4X) \ + || defined(CONFIG_SOC_SERIES_STM32F3X) \ + || defined(CONFIG_SOC_SERIES_STM32F7X) #define EXTI_LINE LL_EXTI_LINE_17 #endif diff --git a/dts/arm/st/f7/stm32f7.dtsi b/dts/arm/st/f7/stm32f7.dtsi index 0fd7b825391..49663c7db4e 100644 --- a/dts/arm/st/f7/stm32f7.dtsi +++ b/dts/arm/st/f7/stm32f7.dtsi @@ -474,6 +474,15 @@ status = "disabled"; label= "OTGHS"; }; + + rtc: rtc@40002800 { + compatible = "st,stm32-rtc"; + reg = <0x40002800 0x300>; + interrupts = <41 0>; + prescaler = <32768>; + status = "disabled"; + label = "RTC_0"; + }; }; }; diff --git a/soc/arm/st_stm32/stm32f7/dts_fixup.h b/soc/arm/st_stm32/stm32f7/dts_fixup.h index 59905f67815..9ff2a9672fb 100644 --- a/soc/arm/st_stm32/stm32f7/dts_fixup.h +++ b/soc/arm/st_stm32/stm32f7/dts_fixup.h @@ -134,4 +134,10 @@ #define CONFIG_PWM_STM32_14_DEV_NAME ST_STM32_PWM_40002000_PWM_LABEL #define CONFIG_PWM_STM32_14_PRESCALER ST_STM32_PWM_40002000_PWM_ST_PRESCALER +#define CONFIG_RTC_0_BASE_ADDRESS ST_STM32_RTC_40002800_BASE_ADDRESS +#define CONFIG_RTC_0_IRQ_PRI ST_STM32_RTC_40002800_IRQ_0_PRIORITY +#define CONFIG_RTC_0_IRQ ST_STM32_RTC_40002800_IRQ_0 +#define CONFIG_RTC_0_NAME ST_STM32_RTC_40002800_LABEL +#define CONFIG_RTC_PRESCALER ST_STM32_RTC_40002800_PRESCALER + /* End of SoC Level DTS fixup file */ diff --git a/soc/arm/st_stm32/stm32f7/soc.h b/soc/arm/st_stm32/stm32f7/soc.h index fe32106c14f..cc40a376b33 100644 --- a/soc/arm/st_stm32/stm32f7/soc.h +++ b/soc/arm/st_stm32/stm32f7/soc.h @@ -50,6 +50,12 @@ #include #endif +#ifdef CONFIG_RTC_STM32 +#include +#include +#include +#endif + #endif /* !_ASMLANGUAGE */ #endif /* _STM32F7_SOC_H_ */