mirror of
				https://xff.cz/git/u-boot/
				synced 2025-10-31 02:15:45 +01:00 
			
		
		
		
	This driver is adapted from linux drivers/reset/reset-stm32.c It's compatible with STM32 F4/F7/H7 SoCs. This driver doesn't implement .of_match as it's binded by MFD RCC driver. To add support for each SoC family, a SoC's specific include/dt-binfings/mfd/stm32xx-rcc.h file must be added. This patch only includes stm32h7-rcc.h dedicated for STM32H7 SoCs. Other SoCs support will be added in the future. Signed-off-by: Patrice Chotard <patrice.chotard@st.com> Reviewed-by: Simon Glass <sjg@chromium.org>
		
			
				
	
	
		
			139 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			139 lines
		
	
	
		
			4.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * This header provides constants for the STM32H7 RCC IP
 | |
|  */
 | |
| 
 | |
| #ifndef _DT_BINDINGS_MFD_STM32H7_RCC_H
 | |
| #define _DT_BINDINGS_MFD_STM32H7_RCC_H
 | |
| 
 | |
| /* AHB3 */
 | |
| #define STM32H7_RCC_AHB3_MDMA		0
 | |
| #define STM32H7_RCC_AHB3_DMA2D		4
 | |
| #define STM32H7_RCC_AHB3_JPGDEC		5
 | |
| #define STM32H7_RCC_AHB3_FMC		12
 | |
| #define STM32H7_RCC_AHB3_QUADSPI	14
 | |
| #define STM32H7_RCC_AHB3_SDMMC1		16
 | |
| #define STM32H7_RCC_AHB3_CPU1		31
 | |
| 
 | |
| #define STM32H7_AHB3_RESET(bit) (STM32H7_RCC_AHB3_##bit + (0x7C * 8))
 | |
| 
 | |
| /* AHB1 */
 | |
| #define STM32H7_RCC_AHB1_DMA1		0
 | |
| #define STM32H7_RCC_AHB1_DMA2		1
 | |
| #define STM32H7_RCC_AHB1_ADC12		5
 | |
| #define STM32H7_RCC_AHB1_ART		14
 | |
| #define STM32H7_RCC_AHB1_ETH1MAC	15
 | |
| #define STM32H7_RCC_AHB1_USB1OTG	25
 | |
| #define STM32H7_RCC_AHB1_USB2OTG	27
 | |
| #define STM32H7_RCC_AHB1_CPU2		31
 | |
| 
 | |
| #define STM32H7_AHB1_RESET(bit) (STM32H7_RCC_AHB1_##bit + (0x80 * 8))
 | |
| 
 | |
| /* AHB2 */
 | |
| #define STM32H7_RCC_AHB2_CAMITF		0
 | |
| #define STM32H7_RCC_AHB2_CRYPT		4
 | |
| #define STM32H7_RCC_AHB2_HASH		5
 | |
| #define STM32H7_RCC_AHB2_RNG		6
 | |
| #define STM32H7_RCC_AHB2_SDMMC2		9
 | |
| 
 | |
| #define STM32H7_AHB2_RESET(bit) (STM32H7_RCC_AHB2_##bit + (0x84 * 8))
 | |
| 
 | |
| /* AHB4 */
 | |
| #define STM32H7_RCC_AHB4_GPIOA		0
 | |
| #define STM32H7_RCC_AHB4_GPIOB		1
 | |
| #define STM32H7_RCC_AHB4_GPIOC		2
 | |
| #define STM32H7_RCC_AHB4_GPIOD		3
 | |
| #define STM32H7_RCC_AHB4_GPIOE		4
 | |
| #define STM32H7_RCC_AHB4_GPIOF		5
 | |
| #define STM32H7_RCC_AHB4_GPIOG		6
 | |
| #define STM32H7_RCC_AHB4_GPIOH		7
 | |
| #define STM32H7_RCC_AHB4_GPIOI		8
 | |
| #define STM32H7_RCC_AHB4_GPIOJ		9
 | |
| #define STM32H7_RCC_AHB4_GPIOK		10
 | |
| #define STM32H7_RCC_AHB4_CRC		19
 | |
| #define STM32H7_RCC_AHB4_BDMA		21
 | |
| #define STM32H7_RCC_AHB4_ADC3		24
 | |
| #define STM32H7_RCC_AHB4_HSEM		25
 | |
| 
 | |
| #define STM32H7_AHB4_RESET(bit) (STM32H7_RCC_AHB4_##bit + (0x88 * 8))
 | |
| 
 | |
| 
 | |
| /* APB3 */
 | |
| #define STM32H7_RCC_APB3_LTDC		3
 | |
| #define STM32H7_RCC_APB3_DSI		4
 | |
| 
 | |
| #define STM32H7_APB3_RESET(bit) (STM32H7_RCC_APB3_##bit + (0x8C * 8))
 | |
| 
 | |
| /* APB1L */
 | |
| #define STM32H7_RCC_APB1L_TIM2		0
 | |
| #define STM32H7_RCC_APB1L_TIM3		1
 | |
| #define STM32H7_RCC_APB1L_TIM4		2
 | |
| #define STM32H7_RCC_APB1L_TIM5		3
 | |
| #define STM32H7_RCC_APB1L_TIM6		4
 | |
| #define STM32H7_RCC_APB1L_TIM7		5
 | |
| #define STM32H7_RCC_APB1L_TIM12		6
 | |
| #define STM32H7_RCC_APB1L_TIM13		7
 | |
| #define STM32H7_RCC_APB1L_TIM14		8
 | |
| #define STM32H7_RCC_APB1L_LPTIM1	9
 | |
| #define STM32H7_RCC_APB1L_SPI2		14
 | |
| #define STM32H7_RCC_APB1L_SPI3		15
 | |
| #define STM32H7_RCC_APB1L_SPDIF_RX	16
 | |
| #define STM32H7_RCC_APB1L_USART2	17
 | |
| #define STM32H7_RCC_APB1L_USART3	18
 | |
| #define STM32H7_RCC_APB1L_UART4		19
 | |
| #define STM32H7_RCC_APB1L_UART5		20
 | |
| #define STM32H7_RCC_APB1L_I2C1		21
 | |
| #define STM32H7_RCC_APB1L_I2C2		22
 | |
| #define STM32H7_RCC_APB1L_I2C3		23
 | |
| #define STM32H7_RCC_APB1L_HDMICEC	27
 | |
| #define STM32H7_RCC_APB1L_DAC12		29
 | |
| #define STM32H7_RCC_APB1L_USART7	30
 | |
| #define STM32H7_RCC_APB1L_USART8	31
 | |
| 
 | |
| #define STM32H7_APB1L_RESET(bit) (STM32H7_RCC_APB1L_##bit + (0x90 * 8))
 | |
| 
 | |
| /* APB1H */
 | |
| #define STM32H7_RCC_APB1H_CRS		1
 | |
| #define STM32H7_RCC_APB1H_SWP		2
 | |
| #define STM32H7_RCC_APB1H_OPAMP		4
 | |
| #define STM32H7_RCC_APB1H_MDIOS		5
 | |
| #define STM32H7_RCC_APB1H_FDCAN		8
 | |
| 
 | |
| #define STM32H7_APB1H_RESET(bit) (STM32H7_RCC_APB1H_##bit + (0x94 * 8))
 | |
| 
 | |
| /* APB2 */
 | |
| #define STM32H7_RCC_APB2_TIM1		0
 | |
| #define STM32H7_RCC_APB2_TIM8		1
 | |
| #define STM32H7_RCC_APB2_USART1		4
 | |
| #define STM32H7_RCC_APB2_USART6		5
 | |
| #define STM32H7_RCC_APB2_SPI1		12
 | |
| #define STM32H7_RCC_APB2_SPI4		13
 | |
| #define STM32H7_RCC_APB2_TIM15		16
 | |
| #define STM32H7_RCC_APB2_TIM16		17
 | |
| #define STM32H7_RCC_APB2_TIM17		18
 | |
| #define STM32H7_RCC_APB2_SPI5		20
 | |
| #define STM32H7_RCC_APB2_SAI1		22
 | |
| #define STM32H7_RCC_APB2_SAI2		23
 | |
| #define STM32H7_RCC_APB2_SAI3		24
 | |
| #define STM32H7_RCC_APB2_DFSDM1		28
 | |
| #define STM32H7_RCC_APB2_HRTIM		29
 | |
| 
 | |
| #define STM32H7_APB2_RESET(bit) (STM32H7_RCC_APB2_##bit + (0x98 * 8))
 | |
| 
 | |
| /* APB4 */
 | |
| #define STM32H7_RCC_APB4_SYSCFG		1
 | |
| #define STM32H7_RCC_APB4_LPUART1	3
 | |
| #define STM32H7_RCC_APB4_SPI6		5
 | |
| #define STM32H7_RCC_APB4_I2C4		7
 | |
| #define STM32H7_RCC_APB4_LPTIM2		9
 | |
| #define STM32H7_RCC_APB4_LPTIM3		10
 | |
| #define STM32H7_RCC_APB4_LPTIM4		11
 | |
| #define STM32H7_RCC_APB4_LPTIM5		12
 | |
| #define STM32H7_RCC_APB4_COMP12		14
 | |
| #define STM32H7_RCC_APB4_VREF		15
 | |
| #define STM32H7_RCC_APB4_SAI4		21
 | |
| #define STM32H7_RCC_APB4_TMPSENS	26
 | |
| 
 | |
| #define STM32H7_APB4_RESET(bit) (STM32H7_RCC_APB4_##bit + (0x9C * 8))
 | |
| 
 | |
| #endif /* _DT_BINDINGS_MFD_STM32H7_RCC_H */
 |