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