1*23a06416SPatrice Chotard /*
2*23a06416SPatrice Chotard  * This header provides constants for the STM32H7 RCC IP
3*23a06416SPatrice Chotard  */
4*23a06416SPatrice Chotard 
5*23a06416SPatrice Chotard #ifndef _DT_BINDINGS_MFD_STM32H7_RCC_H
6*23a06416SPatrice Chotard #define _DT_BINDINGS_MFD_STM32H7_RCC_H
7*23a06416SPatrice Chotard 
8*23a06416SPatrice Chotard /* AHB3 */
9*23a06416SPatrice Chotard #define STM32H7_RCC_AHB3_MDMA		0
10*23a06416SPatrice Chotard #define STM32H7_RCC_AHB3_DMA2D		4
11*23a06416SPatrice Chotard #define STM32H7_RCC_AHB3_JPGDEC		5
12*23a06416SPatrice Chotard #define STM32H7_RCC_AHB3_FMC		12
13*23a06416SPatrice Chotard #define STM32H7_RCC_AHB3_QUADSPI	14
14*23a06416SPatrice Chotard #define STM32H7_RCC_AHB3_SDMMC1		16
15*23a06416SPatrice Chotard #define STM32H7_RCC_AHB3_CPU1		31
16*23a06416SPatrice Chotard 
17*23a06416SPatrice Chotard #define STM32H7_AHB3_RESET(bit) (STM32H7_RCC_AHB3_##bit + (0x7C * 8))
18*23a06416SPatrice Chotard 
19*23a06416SPatrice Chotard /* AHB1 */
20*23a06416SPatrice Chotard #define STM32H7_RCC_AHB1_DMA1		0
21*23a06416SPatrice Chotard #define STM32H7_RCC_AHB1_DMA2		1
22*23a06416SPatrice Chotard #define STM32H7_RCC_AHB1_ADC12		5
23*23a06416SPatrice Chotard #define STM32H7_RCC_AHB1_ART		14
24*23a06416SPatrice Chotard #define STM32H7_RCC_AHB1_ETH1MAC	15
25*23a06416SPatrice Chotard #define STM32H7_RCC_AHB1_USB1OTG	25
26*23a06416SPatrice Chotard #define STM32H7_RCC_AHB1_USB2OTG	27
27*23a06416SPatrice Chotard #define STM32H7_RCC_AHB1_CPU2		31
28*23a06416SPatrice Chotard 
29*23a06416SPatrice Chotard #define STM32H7_AHB1_RESET(bit) (STM32H7_RCC_AHB1_##bit + (0x80 * 8))
30*23a06416SPatrice Chotard 
31*23a06416SPatrice Chotard /* AHB2 */
32*23a06416SPatrice Chotard #define STM32H7_RCC_AHB2_CAMITF		0
33*23a06416SPatrice Chotard #define STM32H7_RCC_AHB2_CRYPT		4
34*23a06416SPatrice Chotard #define STM32H7_RCC_AHB2_HASH		5
35*23a06416SPatrice Chotard #define STM32H7_RCC_AHB2_RNG		6
36*23a06416SPatrice Chotard #define STM32H7_RCC_AHB2_SDMMC2		9
37*23a06416SPatrice Chotard 
38*23a06416SPatrice Chotard #define STM32H7_AHB2_RESET(bit) (STM32H7_RCC_AHB2_##bit + (0x84 * 8))
39*23a06416SPatrice Chotard 
40*23a06416SPatrice Chotard /* AHB4 */
41*23a06416SPatrice Chotard #define STM32H7_RCC_AHB4_GPIOA		0
42*23a06416SPatrice Chotard #define STM32H7_RCC_AHB4_GPIOB		1
43*23a06416SPatrice Chotard #define STM32H7_RCC_AHB4_GPIOC		2
44*23a06416SPatrice Chotard #define STM32H7_RCC_AHB4_GPIOD		3
45*23a06416SPatrice Chotard #define STM32H7_RCC_AHB4_GPIOE		4
46*23a06416SPatrice Chotard #define STM32H7_RCC_AHB4_GPIOF		5
47*23a06416SPatrice Chotard #define STM32H7_RCC_AHB4_GPIOG		6
48*23a06416SPatrice Chotard #define STM32H7_RCC_AHB4_GPIOH		7
49*23a06416SPatrice Chotard #define STM32H7_RCC_AHB4_GPIOI		8
50*23a06416SPatrice Chotard #define STM32H7_RCC_AHB4_GPIOJ		9
51*23a06416SPatrice Chotard #define STM32H7_RCC_AHB4_GPIOK		10
52*23a06416SPatrice Chotard #define STM32H7_RCC_AHB4_CRC		19
53*23a06416SPatrice Chotard #define STM32H7_RCC_AHB4_BDMA		21
54*23a06416SPatrice Chotard #define STM32H7_RCC_AHB4_ADC3		24
55*23a06416SPatrice Chotard #define STM32H7_RCC_AHB4_HSEM		25
56*23a06416SPatrice Chotard 
57*23a06416SPatrice Chotard #define STM32H7_AHB4_RESET(bit) (STM32H7_RCC_AHB4_##bit + (0x88 * 8))
58*23a06416SPatrice Chotard 
59*23a06416SPatrice Chotard 
60*23a06416SPatrice Chotard /* APB3 */
61*23a06416SPatrice Chotard #define STM32H7_RCC_APB3_LTDC		3
62*23a06416SPatrice Chotard #define STM32H7_RCC_APB3_DSI		4
63*23a06416SPatrice Chotard 
64*23a06416SPatrice Chotard #define STM32H7_APB3_RESET(bit) (STM32H7_RCC_APB3_##bit + (0x8C * 8))
65*23a06416SPatrice Chotard 
66*23a06416SPatrice Chotard /* APB1L */
67*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_TIM2		0
68*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_TIM3		1
69*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_TIM4		2
70*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_TIM5		3
71*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_TIM6		4
72*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_TIM7		5
73*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_TIM12		6
74*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_TIM13		7
75*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_TIM14		8
76*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_LPTIM1	9
77*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_SPI2		14
78*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_SPI3		15
79*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_SPDIF_RX	16
80*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_USART2	17
81*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_USART3	18
82*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_UART4		19
83*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_UART5		20
84*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_I2C1		21
85*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_I2C2		22
86*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_I2C3		23
87*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_HDMICEC	27
88*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_DAC12		29
89*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_USART7	30
90*23a06416SPatrice Chotard #define STM32H7_RCC_APB1L_USART8	31
91*23a06416SPatrice Chotard 
92*23a06416SPatrice Chotard #define STM32H7_APB1L_RESET(bit) (STM32H7_RCC_APB1L_##bit + (0x90 * 8))
93*23a06416SPatrice Chotard 
94*23a06416SPatrice Chotard /* APB1H */
95*23a06416SPatrice Chotard #define STM32H7_RCC_APB1H_CRS		1
96*23a06416SPatrice Chotard #define STM32H7_RCC_APB1H_SWP		2
97*23a06416SPatrice Chotard #define STM32H7_RCC_APB1H_OPAMP		4
98*23a06416SPatrice Chotard #define STM32H7_RCC_APB1H_MDIOS		5
99*23a06416SPatrice Chotard #define STM32H7_RCC_APB1H_FDCAN		8
100*23a06416SPatrice Chotard 
101*23a06416SPatrice Chotard #define STM32H7_APB1H_RESET(bit) (STM32H7_RCC_APB1H_##bit + (0x94 * 8))
102*23a06416SPatrice Chotard 
103*23a06416SPatrice Chotard /* APB2 */
104*23a06416SPatrice Chotard #define STM32H7_RCC_APB2_TIM1		0
105*23a06416SPatrice Chotard #define STM32H7_RCC_APB2_TIM8		1
106*23a06416SPatrice Chotard #define STM32H7_RCC_APB2_USART1		4
107*23a06416SPatrice Chotard #define STM32H7_RCC_APB2_USART6		5
108*23a06416SPatrice Chotard #define STM32H7_RCC_APB2_SPI1		12
109*23a06416SPatrice Chotard #define STM32H7_RCC_APB2_SPI4		13
110*23a06416SPatrice Chotard #define STM32H7_RCC_APB2_TIM15		16
111*23a06416SPatrice Chotard #define STM32H7_RCC_APB2_TIM16		17
112*23a06416SPatrice Chotard #define STM32H7_RCC_APB2_TIM17		18
113*23a06416SPatrice Chotard #define STM32H7_RCC_APB2_SPI5		20
114*23a06416SPatrice Chotard #define STM32H7_RCC_APB2_SAI1		22
115*23a06416SPatrice Chotard #define STM32H7_RCC_APB2_SAI2		23
116*23a06416SPatrice Chotard #define STM32H7_RCC_APB2_SAI3		24
117*23a06416SPatrice Chotard #define STM32H7_RCC_APB2_DFSDM1		28
118*23a06416SPatrice Chotard #define STM32H7_RCC_APB2_HRTIM		29
119*23a06416SPatrice Chotard 
120*23a06416SPatrice Chotard #define STM32H7_APB2_RESET(bit) (STM32H7_RCC_APB2_##bit + (0x98 * 8))
121*23a06416SPatrice Chotard 
122*23a06416SPatrice Chotard /* APB4 */
123*23a06416SPatrice Chotard #define STM32H7_RCC_APB4_SYSCFG		1
124*23a06416SPatrice Chotard #define STM32H7_RCC_APB4_LPUART1	3
125*23a06416SPatrice Chotard #define STM32H7_RCC_APB4_SPI6		5
126*23a06416SPatrice Chotard #define STM32H7_RCC_APB4_I2C4		7
127*23a06416SPatrice Chotard #define STM32H7_RCC_APB4_LPTIM2		9
128*23a06416SPatrice Chotard #define STM32H7_RCC_APB4_LPTIM3		10
129*23a06416SPatrice Chotard #define STM32H7_RCC_APB4_LPTIM4		11
130*23a06416SPatrice Chotard #define STM32H7_RCC_APB4_LPTIM5		12
131*23a06416SPatrice Chotard #define STM32H7_RCC_APB4_COMP12		14
132*23a06416SPatrice Chotard #define STM32H7_RCC_APB4_VREF		15
133*23a06416SPatrice Chotard #define STM32H7_RCC_APB4_SAI4		21
134*23a06416SPatrice Chotard #define STM32H7_RCC_APB4_TMPSENS	26
135*23a06416SPatrice Chotard 
136*23a06416SPatrice Chotard #define STM32H7_APB4_RESET(bit) (STM32H7_RCC_APB4_##bit + (0x9C * 8))
137*23a06416SPatrice Chotard 
138*23a06416SPatrice Chotard #endif /* _DT_BINDINGS_MFD_STM32H7_RCC_H */
139