1c66ec88fSEmmanuel Vadot /* SPDX-License-Identifier: GPL-2.0 */ 2c66ec88fSEmmanuel Vadot /* 3c66ec88fSEmmanuel Vadot * This header provides constants for the STM32F7 RCC IP 4c66ec88fSEmmanuel Vadot */ 5c66ec88fSEmmanuel Vadot 6c66ec88fSEmmanuel Vadot #ifndef _DT_BINDINGS_MFD_STM32F7_RCC_H 7c66ec88fSEmmanuel Vadot #define _DT_BINDINGS_MFD_STM32F7_RCC_H 8c66ec88fSEmmanuel Vadot 9c66ec88fSEmmanuel Vadot /* AHB1 */ 10c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_GPIOA 0 11c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_GPIOB 1 12c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_GPIOC 2 13c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_GPIOD 3 14c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_GPIOE 4 15c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_GPIOF 5 16c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_GPIOG 6 17c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_GPIOH 7 18c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_GPIOI 8 19c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_GPIOJ 9 20c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_GPIOK 10 21c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_CRC 12 22c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_BKPSRAM 18 23c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_DTCMRAM 20 24c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_DMA1 21 25c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_DMA2 22 26c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_DMA2D 23 27c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_ETHMAC 25 28c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_ETHMACTX 26 29c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_ETHMACRX 27 30c66ec88fSEmmanuel Vadot #define STM32FF_RCC_AHB1_ETHMACPTP 28 31c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_OTGHS 29 32c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB1_OTGHSULPI 30 33c66ec88fSEmmanuel Vadot 34c66ec88fSEmmanuel Vadot #define STM32F7_AHB1_RESET(bit) (STM32F7_RCC_AHB1_##bit + (0x10 * 8)) 35c66ec88fSEmmanuel Vadot #define STM32F7_AHB1_CLOCK(bit) (STM32F7_RCC_AHB1_##bit) 36c66ec88fSEmmanuel Vadot 37c66ec88fSEmmanuel Vadot 38c66ec88fSEmmanuel Vadot /* AHB2 */ 39c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB2_DCMI 0 40c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB2_CRYP 4 41c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB2_HASH 5 42c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB2_RNG 6 43c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB2_OTGFS 7 44c66ec88fSEmmanuel Vadot 45c66ec88fSEmmanuel Vadot #define STM32F7_AHB2_RESET(bit) (STM32F7_RCC_AHB2_##bit + (0x14 * 8)) 46c66ec88fSEmmanuel Vadot #define STM32F7_AHB2_CLOCK(bit) (STM32F7_RCC_AHB2_##bit + 0x20) 47c66ec88fSEmmanuel Vadot 48c66ec88fSEmmanuel Vadot /* AHB3 */ 49c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB3_FMC 0 50c66ec88fSEmmanuel Vadot #define STM32F7_RCC_AHB3_QSPI 1 51c66ec88fSEmmanuel Vadot 52c66ec88fSEmmanuel Vadot #define STM32F7_AHB3_RESET(bit) (STM32F7_RCC_AHB3_##bit + (0x18 * 8)) 53c66ec88fSEmmanuel Vadot #define STM32F7_AHB3_CLOCK(bit) (STM32F7_RCC_AHB3_##bit + 0x40) 54c66ec88fSEmmanuel Vadot 55c66ec88fSEmmanuel Vadot /* APB1 */ 56c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_TIM2 0 57c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_TIM3 1 58c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_TIM4 2 59c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_TIM5 3 60c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_TIM6 4 61c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_TIM7 5 62c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_TIM12 6 63c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_TIM13 7 64c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_TIM14 8 65c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_LPTIM1 9 66c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_WWDG 11 67f126890aSEmmanuel Vadot #define STM32F7_RCC_APB1_CAN3 13 68c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_SPI2 14 69c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_SPI3 15 70c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_SPDIFRX 16 71c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_UART2 17 72c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_UART3 18 73c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_UART4 19 74c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_UART5 20 75c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_I2C1 21 76c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_I2C2 22 77c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_I2C3 23 78c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_I2C4 24 79c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_CAN1 25 80c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_CAN2 26 81c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_CEC 27 82c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_PWR 28 83c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_DAC 29 84c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_UART7 30 85c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB1_UART8 31 86c66ec88fSEmmanuel Vadot 87c66ec88fSEmmanuel Vadot #define STM32F7_APB1_RESET(bit) (STM32F7_RCC_APB1_##bit + (0x20 * 8)) 88c66ec88fSEmmanuel Vadot #define STM32F7_APB1_CLOCK(bit) (STM32F7_RCC_APB1_##bit + 0x80) 89c66ec88fSEmmanuel Vadot 90c66ec88fSEmmanuel Vadot /* APB2 */ 91c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_TIM1 0 92c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_TIM8 1 93c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_USART1 4 94c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_USART6 5 95c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_SDMMC2 7 96c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_ADC1 8 97c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_ADC2 9 98c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_ADC3 10 99c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_SDMMC1 11 100c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_SPI1 12 101c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_SPI4 13 102c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_SYSCFG 14 103c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_TIM9 16 104c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_TIM10 17 105c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_TIM11 18 106c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_SPI5 20 107c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_SPI6 21 108c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_SAI1 22 109c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_SAI2 23 110c66ec88fSEmmanuel Vadot #define STM32F7_RCC_APB2_LTDC 26 111*01950c46SEmmanuel Vadot #define STM32F7_RCC_APB2_DSI 27 112c66ec88fSEmmanuel Vadot 113c66ec88fSEmmanuel Vadot #define STM32F7_APB2_RESET(bit) (STM32F7_RCC_APB2_##bit + (0x24 * 8)) 114c66ec88fSEmmanuel Vadot #define STM32F7_APB2_CLOCK(bit) (STM32F7_RCC_APB2_##bit + 0xA0) 115c66ec88fSEmmanuel Vadot 116c66ec88fSEmmanuel Vadot #endif /* _DT_BINDINGS_MFD_STM32F7_RCC_H */ 117