18c2ecf20Sopenharmony_ci/*
28c2ecf20Sopenharmony_ci * This header provides constants for the STM32H7 RCC IP
38c2ecf20Sopenharmony_ci */
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_ci#ifndef _DT_BINDINGS_MFD_STM32H7_RCC_H
68c2ecf20Sopenharmony_ci#define _DT_BINDINGS_MFD_STM32H7_RCC_H
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ci/* AHB3 */
98c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB3_MDMA		0
108c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB3_DMA2D		4
118c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB3_JPGDEC		5
128c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB3_FMC		12
138c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB3_QUADSPI	14
148c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB3_SDMMC1		16
158c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB3_CPU		31
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ci#define STM32H7_AHB3_RESET(bit) (STM32H7_RCC_AHB3_##bit + (0x7C * 8))
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ci/* AHB1 */
208c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB1_DMA1		0
218c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB1_DMA2		1
228c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB1_ADC12		5
238c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB1_ART		14
248c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB1_ETH1MAC	15
258c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB1_USB1OTG	25
268c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB1_USB2OTG	27
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ci#define STM32H7_AHB1_RESET(bit) (STM32H7_RCC_AHB1_##bit + (0x80 * 8))
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_ci/* AHB2 */
318c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB2_CAMITF		0
328c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB2_CRYPT		4
338c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB2_HASH		5
348c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB2_RNG		6
358c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB2_SDMMC2		9
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ci#define STM32H7_AHB2_RESET(bit) (STM32H7_RCC_AHB2_##bit + (0x84 * 8))
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ci/* AHB4 */
408c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB4_GPIOA		0
418c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB4_GPIOB		1
428c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB4_GPIOC		2
438c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB4_GPIOD		3
448c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB4_GPIOE		4
458c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB4_GPIOF		5
468c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB4_GPIOG		6
478c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB4_GPIOH		7
488c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB4_GPIOI		8
498c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB4_GPIOJ		9
508c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB4_GPIOK		10
518c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB4_CRC		19
528c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB4_BDMA		21
538c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB4_ADC3		24
548c2ecf20Sopenharmony_ci#define STM32H7_RCC_AHB4_HSEM		25
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_ci#define STM32H7_AHB4_RESET(bit) (STM32H7_RCC_AHB4_##bit + (0x88 * 8))
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_ci/* APB3 */
598c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB3_LTDC		3
608c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB3_DSI		4
618c2ecf20Sopenharmony_ci
628c2ecf20Sopenharmony_ci#define STM32H7_APB3_RESET(bit) (STM32H7_RCC_APB3_##bit + (0x8C * 8))
638c2ecf20Sopenharmony_ci
648c2ecf20Sopenharmony_ci/* APB1L */
658c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_TIM2		0
668c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_TIM3		1
678c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_TIM4		2
688c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_TIM5		3
698c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_TIM6		4
708c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_TIM7		5
718c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_TIM12		6
728c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_TIM13		7
738c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_TIM14		8
748c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_LPTIM1	9
758c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_SPI2		14
768c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_SPI3		15
778c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_SPDIF_RX	16
788c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_USART2	17
798c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_USART3	18
808c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_UART4		19
818c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_UART5		20
828c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_I2C1		21
838c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_I2C2		22
848c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_I2C3		23
858c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_HDMICEC	27
868c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_DAC12		29
878c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_USART7	30
888c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1L_USART8	31
898c2ecf20Sopenharmony_ci
908c2ecf20Sopenharmony_ci#define STM32H7_APB1L_RESET(bit) (STM32H7_RCC_APB1L_##bit + (0x90 * 8))
918c2ecf20Sopenharmony_ci
928c2ecf20Sopenharmony_ci/* APB1H */
938c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1H_CRS		1
948c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1H_SWP		2
958c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1H_OPAMP		4
968c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1H_MDIOS		5
978c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB1H_FDCAN		8
988c2ecf20Sopenharmony_ci
998c2ecf20Sopenharmony_ci#define STM32H7_APB1H_RESET(bit) (STM32H7_RCC_APB1H_##bit + (0x94 * 8))
1008c2ecf20Sopenharmony_ci
1018c2ecf20Sopenharmony_ci/* APB2 */
1028c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB2_TIM1		0
1038c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB2_TIM8		1
1048c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB2_USART1		4
1058c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB2_USART6		5
1068c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB2_SPI1		12
1078c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB2_SPI4		13
1088c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB2_TIM15		16
1098c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB2_TIM16		17
1108c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB2_TIM17		18
1118c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB2_SPI5		20
1128c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB2_SAI1		22
1138c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB2_SAI2		23
1148c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB2_SAI3		24
1158c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB2_DFSDM1		28
1168c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB2_HRTIM		29
1178c2ecf20Sopenharmony_ci
1188c2ecf20Sopenharmony_ci#define STM32H7_APB2_RESET(bit) (STM32H7_RCC_APB2_##bit + (0x98 * 8))
1198c2ecf20Sopenharmony_ci
1208c2ecf20Sopenharmony_ci/* APB4 */
1218c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB4_SYSCFG		1
1228c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB4_LPUART1	3
1238c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB4_SPI6		5
1248c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB4_I2C4		7
1258c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB4_LPTIM2		9
1268c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB4_LPTIM3		10
1278c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB4_LPTIM4		11
1288c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB4_LPTIM5		12
1298c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB4_COMP12		14
1308c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB4_VREF		15
1318c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB4_SAI4		21
1328c2ecf20Sopenharmony_ci#define STM32H7_RCC_APB4_TMPSENS	26
1338c2ecf20Sopenharmony_ci
1348c2ecf20Sopenharmony_ci#define STM32H7_APB4_RESET(bit) (STM32H7_RCC_APB4_##bit + (0x9C * 8))
1358c2ecf20Sopenharmony_ci
1368c2ecf20Sopenharmony_ci#endif /* _DT_BINDINGS_MFD_STM32H7_RCC_H */
137