drivers/rtc: Enable RTC driver for STM32F7 series

Enable RTC driver for STM32F7 series.

Signed-off-by: Christian Taedcke <hacking@taedcke.com>
diff --git a/drivers/rtc/Kconfig.stm32_rtc b/drivers/rtc/Kconfig.stm32_rtc
index 8662c37..2cae69e 100644
--- a/drivers/rtc/Kconfig.stm32_rtc
+++ b/drivers/rtc/Kconfig.stm32_rtc
@@ -15,7 +15,7 @@
 	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 d0ad5fa..257f430 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 0fd7b82..49663c7 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 59905f6..9ff2a96 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 fe32106..cc40a37 100644
--- a/soc/arm/st_stm32/stm32f7/soc.h
+++ b/soc/arm/st_stm32/stm32f7/soc.h
@@ -50,6 +50,12 @@
 #include <stm32f7xx_ll_rng.h>
 #endif
 
+#ifdef CONFIG_RTC_STM32
+#include <stm32f7xx_ll_rtc.h>
+#include <stm32f7xx_ll_exti.h>
+#include <stm32f7xx_ll_pwr.h>
+#endif
+
 #endif /* !_ASMLANGUAGE */
 
 #endif /* _STM32F7_SOC_H_ */