VSF Documented
common.h
Go to the documentation of this file.
1/*****************************************************************************
2 * Copyright(C)2009-2022 by VSF Team *
3 * *
4 * Licensed under the Apache License, Version 2.0 (the "License"); *
5 * you may not use this file except in compliance with the License. *
6 * You may obtain a copy of the License at *
7 * *
8 * http://www.apache.org/licenses/LICENSE-2.0 *
9 * *
10 * Unless required by applicable law or agreed to in writing, software *
11 * distributed under the License is distributed on an "AS IS" BASIS, *
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. *
13 * See the License for the specific language governing permissions and *
14 * limitations under the License. *
15 * *
16 ****************************************************************************/
17
18#ifndef __HAL_DRIVER_NATIONS_N32H76X_N32H78X_COMMON_H__
19#define __HAL_DRIVER_NATIONS_N32H76X_N32H78X_COMMON_H__
20
21/* \note common.h should only be included by device.h */
22
23/*============================ INCLUDES ======================================*/
24
25#include "hal/vsf_hal_cfg.h"
26#include "hal/arch/vsf_arch.h"
27
28/*============================ MACROS ========================================*/
29
30// CLK & RST REGION
31
32#define VSF_HW_REG_REGION(__WORD_OFFSET, __BIT_OFFSET, __BIT_LENGTH) \
33 (((__WORD_OFFSET) << 16) | ((__BIT_LENGTH) << 8) | ((__BIT_OFFSET) << 0))
34#define VSF_HW_CLKRST_REGION VSF_HW_REG_REGION
35
36/*============================ MACROFIED FUNCTIONS ===========================*/
37
38#define vsf_hw_peripheral_clk_set vsf_hw_clkrst_region_set
39#define vsf_hw_peripheral_clk_get vsf_hw_clkrst_region_get
40
41#define vsf_hw_peripheral_rst_set vsf_hw_clkrst_region_set_bit
42#define vsf_hw_peripheral_rst_clear vsf_hw_clkrst_region_clear_bit
43#define vsf_hw_peripheral_rst_get vsf_hw_clkrst_region_get_bit
44
45#define vsf_hw_peripheral_enable vsf_hw_clkrst_region_set_bit
46#define vsf_hw_peripheral_disable vsf_hw_clkrst_region_clear_bit
47
48#define VSF_SYSTIMER_FREQ vsf_hw_clk_get_freq_hz(&VSF_HW_CLK_SYSTICK)
49
50/*============================ TYPES =========================================*/
51
53 // AXI
54 // RCC.AXIRST1
55 VSF_HW_RST_JPEGD = VSF_HW_CLKRST_REGION(0x54, 28, 1),// JPEGDRST
56 VSF_HW_RST_JPEGE = VSF_HW_CLKRST_REGION(0x54, 20, 1),// JPEGERST
57 VSF_HW_RST_DMAMUX2 = VSF_HW_CLKRST_REGION(0x54, 16, 1),// DMAMUX2RST
58 VSF_HW_RST_MDMA = VSF_HW_CLKRST_REGION(0x54, 12, 1),// MDMARST
59 VSF_HW_RST_SDMMC1 = VSF_HW_CLKRST_REGION(0x54, 9, 1),// SDMMC1RST
60 VSF_HW_RST_SDHOST1 = VSF_HW_CLKRST_REGION(0x54, 8, 1),// SDHOST1RST
61 VSF_HW_RST_ECCM1 = VSF_HW_CLKRST_REGION(0x54, 4, 1),// ECCM1RST
62 VSF_HW_RST_OTPC = VSF_HW_CLKRST_REGION(0x54, 0, 1),// OTPCRST
63 // RCC.AXIRST2
64 VSF_HW_RST_DSICFG = VSF_HW_CLKRST_REGION(0x55, 29, 1),// DSICFGRST
65 VSF_HW_RST_DSI = VSF_HW_CLKRST_REGION(0x55, 28, 1),// DSIRST
66 VSF_HW_RST_LCD = VSF_HW_CLKRST_REGION(0x55, 24, 1),// LCDRST
67 VSF_HW_RST_DVP1 = VSF_HW_CLKRST_REGION(0x55, 16, 1),// DVP1RST
68 VSF_HW_RST_DVP2 = VSF_HW_CLKRST_REGION(0x55, 8, 1),// DVP2RST
69 VSF_HW_RST_WWDG1 = VSF_HW_CLKRST_REGION(0x55, 0, 1),// WWDG1RST
70 // RCC.AXIRST3
71 VSF_HW_RST_GPU = VSF_HW_CLKRST_REGION(0x56, 0, 1),// GPURST
72 // RCC.AXIRST4
73 VSF_HW_RST_XSPI1 = VSF_HW_CLKRST_REGION(0x57, 28, 1),// XSPI1RST
74 VSF_HW_RST_XSPI2 = VSF_HW_CLKRST_REGION(0x57, 24, 1),// XSPI2RST
75 VSF_HW_RST_FEMCCFG = VSF_HW_CLKRST_REGION(0x57, 21, 1),// FEMCCFGRST
76 VSF_HW_RST_FEMC = VSF_HW_CLKRST_REGION(0x57, 20, 1),// FEMCRST
77 VSF_HW_RST_SDRAM = VSF_HW_CLKRST_REGION(0x57, 16, 1),// SDRAMRST
78
79 // AHB1
80 //RCC.AHB1RST1
81 VSF_HW_RST_SDMMC2 = VSF_HW_CLKRST_REGION(0x19, 29, 1),// SDMMC2RST
82 VSF_HW_RST_SDHOST2 = VSF_HW_CLKRST_REGION(0x19, 28, 1),// SDHOST2RST
83 VSF_HW_RST_USB2WRAP = VSF_HW_CLKRST_REGION(0x19, 22, 1),// USB2WRAPRST
84 VSF_HW_RST_USB2POR = VSF_HW_CLKRST_REGION(0x19, 21, 1),// USB2PORRST
85 VSF_HW_RST_USB2 = VSF_HW_CLKRST_REGION(0x19, 20, 1),// USB2RST
86 VSF_HW_RST_DMAMUX1 = VSF_HW_CLKRST_REGION(0x19, 16, 1),// DMAMUX1RST
87 VSF_HW_RST_ADC1 = VSF_HW_CLKRST_REGION(0x19, 0, 1),// ADC1RST
88 //RCC.AHB1RST2
89 VSF_HW_RST_ETH2 = VSF_HW_CLKRST_REGION(0x1A, 0, 1),// ETH2RST
90 //RCC.AHB1RST3
91 VSF_HW_RST_ECCMAC = VSF_HW_CLKRST_REGION(0x1B, 24, 1),// ECCMACRST
92 VSF_HW_RST_DMA1 = VSF_HW_CLKRST_REGION(0x1B, 16, 1),// DMA1RST
93 VSF_HW_RST_DMA2 = VSF_HW_CLKRST_REGION(0x1B, 8, 1),// DMA2RST
94 VSF_HW_RST_DMA3 = VSF_HW_CLKRST_REGION(0x1B, 0, 1),// DMA3RST
95 //RCC.AHB1RST4
96 VSF_HW_RST_ADC2 = VSF_HW_CLKRST_REGION(0x1C, 16, 1),// ADC2RST
97 VSF_HW_RST_ADC3 = VSF_HW_CLKRST_REGION(0x1C, 0, 1),// ADC3RST
98
99 // AHB2
100 // RCC.AHB2RST1
101 VSF_HW_RST_DAC56 = VSF_HW_CLKRST_REGION(0x2D, 25, 1),// DAC56RST
102 VSF_HW_RST_DAC34 = VSF_HW_CLKRST_REGION(0x2D, 24, 1),// DAC34RST
103 VSF_HW_RST_USB1WRAP = VSF_HW_CLKRST_REGION(0x2D, 22, 1),// USB1WRAPRST
104 VSF_HW_RST_USB1POR = VSF_HW_CLKRST_REGION(0x2D, 21, 1),// USB1PORRST
105 VSF_HW_RST_USB1 = VSF_HW_CLKRST_REGION(0x2D, 20, 1),// USB1RST
106 VSF_HW_RST_ETH1 = VSF_HW_CLKRST_REGION(0x2D, 16, 1),// ETH1RST
107 VSF_HW_RST_ECCM2 = VSF_HW_CLKRST_REGION(0x2D, 12, 1),// ECCM2RST
108 VSF_HW_RST_CORDIC = VSF_HW_CLKRST_REGION(0x2D, 8, 1),// CORDICRST
109 VSF_HW_RST_SDPU = VSF_HW_CLKRST_REGION(0x2D, 4, 1),// SDPURST
110 VSF_HW_RST_FMAC = VSF_HW_CLKRST_REGION(0x2D, 0, 1),// FMACRST
111
112 // AHB5
113 // RCC.AHB5RST1
114 VSF_HW_RST_GPIOA = VSF_HW_CLKRST_REGION(0x3B, 28, 1),// GPIOARST
115 VSF_HW_RST_GPIOB = VSF_HW_CLKRST_REGION(0x3B, 24, 1),// GPIOBRST
116 VSF_HW_RST_GPIOC = VSF_HW_CLKRST_REGION(0x3B, 20, 1),// GPIOCRST
117 VSF_HW_RST_GPIOD = VSF_HW_CLKRST_REGION(0x3B, 16, 1),// GPIODRST
118 VSF_HW_RST_GPIOE = VSF_HW_CLKRST_REGION(0x3B, 12, 1),// GPIOERST
119 VSF_HW_RST_GPIOF = VSF_HW_CLKRST_REGION(0x3B, 8, 1),// GPIOFRST
120 VSF_HW_RST_GPIOG = VSF_HW_CLKRST_REGION(0x3B, 4, 1),// GPIOGRST
121 VSF_HW_RST_GPIOH = VSF_HW_CLKRST_REGION(0x3B, 0, 1),// GPIOHRST
122 // RCC.AHB5RST2
123 VSF_HW_RST_GPIOI = VSF_HW_CLKRST_REGION(0x3C, 28, 1),// GPIOIRST
124 VSF_HW_RST_GPIOJ = VSF_HW_CLKRST_REGION(0x3C, 24, 1),// GPIOJRST
125 VSF_HW_RST_GPIOK = VSF_HW_CLKRST_REGION(0x3C, 20, 1),// GPIOKRST
126 VSF_HW_RST_ECCM3 = VSF_HW_CLKRST_REGION(0x3C, 16, 1),// ECCM3RST
127 VSF_HW_RST_PWR = VSF_HW_CLKRST_REGION(0x3C, 12, 1),// PWRRST
128 VSF_HW_RST_CRC = VSF_HW_CLKRST_REGION(0x3C, 8, 1),// CRCRST
129 VSF_HW_RST_SEMA4 = VSF_HW_CLKRST_REGION(0x3C, 4, 1),// SEMA4RST
130 VSF_HW_RST_AFIO = VSF_HW_CLKRST_REGION(0x3C, 0, 1),// AFIORST
131
132 // AHB9
133 // RCC.AHB9RST1
134 VSF_HW_RST_ESC = VSF_HW_CLKRST_REGION(0x0C, 0, 1),// ESCRST
135
136 // APB1
137 // RCC.APB1RST1
138 VSF_HW_RST_BTIM1 = VSF_HW_CLKRST_REGION(0x25, 28, 1),// BTIM1RST
139 VSF_HW_RST_BTIM2 = VSF_HW_CLKRST_REGION(0x25, 24, 1),// BTIM2RST
140 VSF_HW_RST_BTIM3 = VSF_HW_CLKRST_REGION(0x25, 20, 1),// BTIM3RST
141 VSF_HW_RST_BTIM4 = VSF_HW_CLKRST_REGION(0x25, 16, 1),// BTIM4RST
142 VSF_HW_RST_GTIMB1 = VSF_HW_CLKRST_REGION(0x25, 12, 1),// GTIMB1RST
143 VSF_HW_RST_GTIMB2 = VSF_HW_CLKRST_REGION(0x25, 8, 1),// GTIMB2RST
144 VSF_HW_RST_GTIMB3 = VSF_HW_CLKRST_REGION(0x25, 4, 1),// GTIMB3RST
145 VSF_HW_RST_GTIMA4 = VSF_HW_CLKRST_REGION(0x25, 0, 1),// GTIMA4RST
146 // RCC.APB1RST2
147 VSF_HW_RST_GTIMA5 = VSF_HW_CLKRST_REGION(0x26, 28, 1),// GTIMA5RST
148 VSF_HW_RST_GTIMA6 = VSF_HW_CLKRST_REGION(0x26, 24, 1),// GTIMA6RST
149 VSF_HW_RST_GTIMA7 = VSF_HW_CLKRST_REGION(0x26, 20, 1),// GTIMA7RST
150 VSF_HW_RST_SPI3 = VSF_HW_CLKRST_REGION(0x26, 16, 1),// SPI3RST
151 VSF_HW_RST_DAC12 = VSF_HW_CLKRST_REGION(0x26, 12, 1),// DAC12RST
152 VSF_HW_RST_WWDG2 = VSF_HW_CLKRST_REGION(0x26, 4, 1),// WWDG2RST
153 // RCC.APB1RST3
154 VSF_HW_RST_USART1 = VSF_HW_CLKRST_REGION(0x27, 28, 1),// USART1RST
155 VSF_HW_RST_USART2 = VSF_HW_CLKRST_REGION(0x27, 24, 1),// USART2RST
156 VSF_HW_RST_USART3 = VSF_HW_CLKRST_REGION(0x27, 20, 1),// USART3RST
157 VSF_HW_RST_USART4 = VSF_HW_CLKRST_REGION(0x27, 16, 1),// USART4RST
158 VSF_HW_RST_UART9 = VSF_HW_CLKRST_REGION(0x27, 12, 1),// UART9RST
159 VSF_HW_RST_UART10 = VSF_HW_CLKRST_REGION(0x27, 8, 1),// UART10RST
160 VSF_HW_RST_UART11 = VSF_HW_CLKRST_REGION(0x27, 4, 1),// UART11RST
161 VSF_HW_RST_UART12 = VSF_HW_CLKRST_REGION(0x27, 0, 1),// UART12RST
162 // RCC.APB1RST4
163 VSF_HW_RST_I2S3 = VSF_HW_CLKRST_REGION(0x28, 28, 1),// I2S3RST
164 VSF_HW_RST_I2S4 = VSF_HW_CLKRST_REGION(0x28, 24, 1),// I2S4RST
165 VSF_HW_RST_I2C1 = VSF_HW_CLKRST_REGION(0x28, 20, 1),// I2C1RST
166 VSF_HW_RST_I2C2 = VSF_HW_CLKRST_REGION(0x28, 16, 1),// I2C2RST
167 VSF_HW_RST_I2C3 = VSF_HW_CLKRST_REGION(0x28, 12, 1),// I2C3RST
168 // RCC.APB1RST5
169 VSF_HW_RST_FDCAN1 = VSF_HW_CLKRST_REGION(0x29, 28, 1),// FDCAN1RST
170 VSF_HW_RST_FDCAN2 = VSF_HW_CLKRST_REGION(0x29, 24, 1),// FDCAN2RST
171 VSF_HW_RST_FDCAN5 = VSF_HW_CLKRST_REGION(0x29, 20, 1),// FDCAN5RST
172 VSF_HW_RST_FDCAN6 = VSF_HW_CLKRST_REGION(0x29, 16, 1),// FDCAN6RST
173 VSF_HW_RST_CAHI = VSF_HW_CLKRST_REGION(0x29, 4, 1),// CAHIRST
174 VSF_HW_RST_CAHD = VSF_HW_CLKRST_REGION(0x29, 0, 1),// CAHDRST
175
176 // APB2
177 // RCC.APB2RST1
178 VSF_HW_RST_ATIM1 = VSF_HW_CLKRST_REGION(0x35, 28, 1),// ATIM1RST
179 VSF_HW_RST_ATIM2 = VSF_HW_CLKRST_REGION(0x35, 24, 1),// ATIM2RST
180 VSF_HW_RST_GTIMA1 = VSF_HW_CLKRST_REGION(0x35, 20, 1),// GTIMA1RST
181 VSF_HW_RST_GTIMA2 = VSF_HW_CLKRST_REGION(0x35, 16, 1),// GTIMA2RST
182 VSF_HW_RST_GTIMA3 = VSF_HW_CLKRST_REGION(0x35, 12, 1),// GTIMA3RST
183 VSF_HW_RST_SHRTIM1 = VSF_HW_CLKRST_REGION(0x35, 8, 1),// SHRTIM1RST
184 VSF_HW_RST_SHRTIM2 = VSF_HW_CLKRST_REGION(0x35, 4, 1),// SHRTIM2RST
185 // RCC.APB2RST2
186 VSF_HW_RST_I2S1 = VSF_HW_CLKRST_REGION(0x36, 28, 1),// I2S1RST
187 VSF_HW_RST_I2S2 = VSF_HW_CLKRST_REGION(0x36, 24, 1),// I2S2RST
188 VSF_HW_RST_SPI1 = VSF_HW_CLKRST_REGION(0x36, 20, 1),// SPI1RST
189 VSF_HW_RST_SPI2 = VSF_HW_CLKRST_REGION(0x36, 16, 1),// SPI2RST
190 VSF_HW_RST_DSMU = VSF_HW_CLKRST_REGION(0x36, 12, 1),// DSMURST
191 VSF_HW_RST_I2C4 = VSF_HW_CLKRST_REGION(0x36, 8, 1),// I2C4RST
192 VSF_HW_RST_I2C5 = VSF_HW_CLKRST_REGION(0x36, 4, 1),// I2C5RST
193 VSF_HW_RST_I2C6 = VSF_HW_CLKRST_REGION(0x36, 0, 1),// I2C6RST
194 // RCC.APB2RST3
195 VSF_HW_RST_USART5 = VSF_HW_CLKRST_REGION(0x37, 28, 1),// USART5RST
196 VSF_HW_RST_USART6 = VSF_HW_CLKRST_REGION(0x37, 24, 1),// USART6RST
197 VSF_HW_RST_USART7 = VSF_HW_CLKRST_REGION(0x37, 20, 1),// USART7RST
198 VSF_HW_RST_USART8 = VSF_HW_CLKRST_REGION(0x37, 16, 1),// USART8RST
199 VSF_HW_RST_UART13 = VSF_HW_CLKRST_REGION(0x37, 12, 1),// UART13RST
200 VSF_HW_RST_UART14 = VSF_HW_CLKRST_REGION(0x37, 8, 1),// UART14RST
201 VSF_HW_RST_UART15 = VSF_HW_CLKRST_REGION(0x37, 4, 1),// UART15RST
202 // RCC.APB2RST4
203 VSF_HW_RST_FDCAN3 = VSF_HW_CLKRST_REGION(0x38, 28, 1),// FDCAN3RST
204 VSF_HW_RST_FDCAN4 = VSF_HW_CLKRST_REGION(0x38, 24, 1),// FDCAN4RST
205 VSF_HW_RST_FDCAN7 = VSF_HW_CLKRST_REGION(0x38, 20, 1),// FDCAN7RST
206 VSF_HW_RST_FDCAN8 = VSF_HW_CLKRST_REGION(0x38, 16, 1),// FDCAN8RST
207
208 // APB5
209 // RCC.APB5RST1
210 VSF_HW_RST_ATIM3 = VSF_HW_CLKRST_REGION(0x41, 28, 1),// ATIM3RST
211 VSF_HW_RST_ATIM4 = VSF_HW_CLKRST_REGION(0x41, 24, 1),// ATIM4RST
212 VSF_HW_RST_SPI4 = VSF_HW_CLKRST_REGION(0x41, 12, 1),// SPI4RST
213 VSF_HW_RST_SPI5 = VSF_HW_CLKRST_REGION(0x41, 8, 1),// SPI5RST
214 VSF_HW_RST_SPI6 = VSF_HW_CLKRST_REGION(0x41, 4, 1),// SPI6RST
215 VSF_HW_RST_SPI7 = VSF_HW_CLKRST_REGION(0x41, 0, 1),// SPI7RST
216 // RCC.APB5RST2
217 VSF_HW_RST_I2C7 = VSF_HW_CLKRST_REGION(0x42, 28, 1),// I2C7RST
218 VSF_HW_RST_I2C8 = VSF_HW_CLKRST_REGION(0x42, 24, 1),// I2C8RST
219 VSF_HW_RST_I2C9 = VSF_HW_CLKRST_REGION(0x42, 20, 1),// I2C9RST
220 VSF_HW_RST_I2C10 = VSF_HW_CLKRST_REGION(0x42, 16, 1),// I2C10RST
221
222 // Retention domain
223 // RCC.RDRST1
224 VSF_HW_RST_LPTIM1 = VSF_HW_CLKRST_REGION(0x47, 28, 1),// LPTIM1RST
225 VSF_HW_RST_LPTIM2 = VSF_HW_CLKRST_REGION(0x47, 24, 1),// LPTIM2RST
226 VSF_HW_RST_LPTIM3 = VSF_HW_CLKRST_REGION(0x47, 20, 1),// LPTIM3RST
227 VSF_HW_RST_LPTIM4 = VSF_HW_CLKRST_REGION(0x47, 16, 1),// LPTIM4RST
228 VSF_HW_RST_LPTIM5 = VSF_HW_CLKRST_REGION(0x47, 12, 1),// LPTIM5RST
229 VSF_HW_RST_LPUART1 = VSF_HW_CLKRST_REGION(0x47, 8, 1),// LPUART1RST
230 VSF_HW_RST_LPUART2 = VSF_HW_CLKRST_REGION(0x47, 4, 1),// LPUART2RST
231 // RCC.RDRST2
232 VSF_HW_RST_COMP = VSF_HW_CLKRST_REGION(0x48, 28, 1),// COMPRST
234
236 // AXI
237 // RCC.AXIEN1
238#if defined(CORE_CM4)
239 VSF_HW_EN_JPEGD = VSF_HW_CLKRST_REGION(0x50, 30, 1),// M4JPEGDEN
240 VSF_HW_EN_JPEGDLP = VSF_HW_CLKRST_REGION(0x50, 28, 1),// M4JPEGDLPEN
241 VSF_HW_EN_JPEGE = VSF_HW_CLKRST_REGION(0x50, 22, 1),// M4JPEGEEN
242 VSF_HW_EN_JPEGELP = VSF_HW_CLKRST_REGION(0x50, 20, 1),// M4JPEGELPEN
243 VSF_HW_EN_DMAMUX2 = VSF_HW_CLKRST_REGION(0x50, 18, 1),// M4DMAMUX2EN
244 VSF_HW_EN_DMAMUX2LP = VSF_HW_CLKRST_REGION(0x50, 16, 1),// M4DMAMUX2LPEN
245 VSF_HW_EN_MDMA = VSF_HW_CLKRST_REGION(0x50, 14, 1),// M4MDMAEN
246 VSF_HW_EN_MDMALP = VSF_HW_CLKRST_REGION(0x50, 12, 1),// M4MDMALPEN
247 VSF_HW_EN_SDMMC1 = VSF_HW_CLKRST_REGION(0x50, 10, 1),// M4SDMMC1EN
248 VSF_HW_EN_SDMMC1LP = VSF_HW_CLKRST_REGION(0x50, 8, 1),// M4SDMMC1LPEN
249 VSF_HW_EN_ECCM1 = VSF_HW_CLKRST_REGION(0x50, 6, 1),// M4ECCM1EN
250 VSF_HW_EN_ECCM1LP = VSF_HW_CLKRST_REGION(0x50, 4, 1),// M4ECCM1LPEN
251 VSF_HW_EN_OTPC = VSF_HW_CLKRST_REGION(0x50, 2, 1),// M4OPTCEN
252 VSF_HW_EN_OTPCLP = VSF_HW_CLKRST_REGION(0x50, 0, 1),// M4OPTCLPEN
253#elif defined(CORE_CM7)
254 VSF_HW_EN_JPEGD = VSF_HW_CLKRST_REGION(0x50, 31, 1),// M7JPEGDEN
255 VSF_HW_EN_JPEGDLP = VSF_HW_CLKRST_REGION(0x50, 29, 1),// M7JPEGDLPEN
256 VSF_HW_EN_JPEGE = VSF_HW_CLKRST_REGION(0x50, 23, 1),// M7JPEGEEN
257 VSF_HW_EN_JPEGELP = VSF_HW_CLKRST_REGION(0x50, 21, 1),// M7JPEGELPEN
258 VSF_HW_EN_DMAMUX2 = VSF_HW_CLKRST_REGION(0x50, 19, 1),// M7DMAMUX2EN
259 VSF_HW_EN_DMAMUX2LP = VSF_HW_CLKRST_REGION(0x50, 17, 1),// M7DMAMUX2LPEN
260 VSF_HW_EN_MDMA = VSF_HW_CLKRST_REGION(0x50, 15, 1),// M7MDMAEN
261 VSF_HW_EN_MDMALP = VSF_HW_CLKRST_REGION(0x50, 13, 1),// M7MDMALPEN
262 VSF_HW_EN_SDMMC1 = VSF_HW_CLKRST_REGION(0x50, 11, 1),// M7SDMMC1EN
263 VSF_HW_EN_SDMMC1LP = VSF_HW_CLKRST_REGION(0x50, 9, 1),// M7SDMMC1LPEN
264 VSF_HW_EN_ECCM1 = VSF_HW_CLKRST_REGION(0x50, 7, 1),// M7ECCM1EN
265 VSF_HW_EN_ECCM1LP = VSF_HW_CLKRST_REGION(0x50, 5, 1),// M7ECCM1LPEN
266 VSF_HW_EN_OTPC = VSF_HW_CLKRST_REGION(0x50, 3, 1),// M7OPTCEN
267 VSF_HW_EN_OTPCLP = VSF_HW_CLKRST_REGION(0x50, 1, 1),// M7OPTCLPEN
268#endif
269 // RCC.AXIEN2
270#if defined(CORE_CM4)
271 VSF_HW_EN_DSI = VSF_HW_CLKRST_REGION(0x51, 30, 1),// M4DSIEN
272 VSF_HW_EN_DSILP = VSF_HW_CLKRST_REGION(0x51, 28, 1),// M4DSILPEN
273 VSF_HW_EN_LCD = VSF_HW_CLKRST_REGION(0x51, 26, 1),// M4LCDEN
274 VSF_HW_EN_LCDLP = VSF_HW_CLKRST_REGION(0x51, 24, 1),// M4LCDLPEN
275 VSF_HW_EN_LCDAPB = VSF_HW_CLKRST_REGION(0x51, 22, 1),// M4LCDAPBEN
276 VSF_HW_EN_LCDAPBLP = VSF_HW_CLKRST_REGION(0x51, 20, 1),// M4LCDAPBLPEN
277 VSF_HW_EN_DVP1 = VSF_HW_CLKRST_REGION(0x51, 18, 1),// M4DVP1EN
278 VSF_HW_EN_DVP1LP = VSF_HW_CLKRST_REGION(0x51, 16, 1),// M4DVP1LPEN
279 VSF_HW_EN_DVP1APB = VSF_HW_CLKRST_REGION(0x51, 14, 1),// M4DVP1APBEN
280 VSF_HW_EN_DVP1APBLP = VSF_HW_CLKRST_REGION(0x51, 12, 1),// M4DVP1APBLPEN
281 VSF_HW_EN_DVP2 = VSF_HW_CLKRST_REGION(0x51, 10, 1),// M4DVP2EN
282 VSF_HW_EN_DVP2LP = VSF_HW_CLKRST_REGION(0x51, 8, 1),// M4DVP2LPEN
283 VSF_HW_EN_DVP2APB = VSF_HW_CLKRST_REGION(0x51, 6, 1),// M4DVP2APBEN
284 VSF_HW_EN_DVP2APBLP = VSF_HW_CLKRST_REGION(0x51, 4, 1),// M4DVP2APBLPEN
285 VSF_HW_EN_WWDG1 = VSF_HW_CLKRST_REGION(0x51, 2, 1),// M4WWDG1EN
286 VSF_HW_EN_WWDG1LP = VSF_HW_CLKRST_REGION(0x51, 0, 1),// M4WWDG1LPEN
287#elif defined(CORE_CM7)
288 VSF_HW_EN_DSI = VSF_HW_CLKRST_REGION(0x51, 31, 1),// M7DSIEN
289 VSF_HW_EN_DSILP = VSF_HW_CLKRST_REGION(0x51, 29, 1),// M7DSILPEN
290 VSF_HW_EN_LCD = VSF_HW_CLKRST_REGION(0x51, 27, 1),// M7LCDEN
291 VSF_HW_EN_LCDLP = VSF_HW_CLKRST_REGION(0x51, 25, 1),// M7LCDLPEN
292 VSF_HW_EN_LCDAPB = VSF_HW_CLKRST_REGION(0x51, 23, 1),// M7LCDAPBEN
293 VSF_HW_EN_LCDAPBLP = VSF_HW_CLKRST_REGION(0x51, 21, 1),// M7LCDAPBLPEN
294 VSF_HW_EN_DVP1 = VSF_HW_CLKRST_REGION(0x51, 19, 1),// M7DVP1EN
295 VSF_HW_EN_DVP1LP = VSF_HW_CLKRST_REGION(0x51, 17, 1),// M7DVP1LPEN
296 VSF_HW_EN_DVP1APB = VSF_HW_CLKRST_REGION(0x51, 15, 1),// M7DVP1APBEN
297 VSF_HW_EN_DVP1APBLP = VSF_HW_CLKRST_REGION(0x51, 13, 1),// M7DVP1APBLPEN
298 VSF_HW_EN_DVP2 = VSF_HW_CLKRST_REGION(0x51, 11, 1),// M7DVP2EN
299 VSF_HW_EN_DVP2LP = VSF_HW_CLKRST_REGION(0x51, 9, 1),// M7DVP2LPEN
300 VSF_HW_EN_DVP2APB = VSF_HW_CLKRST_REGION(0x51, 7, 1),// M7DVP2APBEN
301 VSF_HW_EN_DVP2APBLP = VSF_HW_CLKRST_REGION(0x51, 5, 1),// M7DVP2APBLPEN
302 VSF_HW_EN_WWDG1 = VSF_HW_CLKRST_REGION(0x51, 3, 1),// M7WWDG1EN
303 VSF_HW_EN_WWDG1LP = VSF_HW_CLKRST_REGION(0x51, 1, 1),// M7WWDG1LPEN
304#endif
305 // RCC.AXIEN3
306#if defined(CORE_CM4)
307 VSF_HW_EN_TASRAM2 = VSF_HW_CLKRST_REGION(0x52, 30, 1),// M4TASRAM2EN
308 VSF_HW_EN_TASRAM2LP = VSF_HW_CLKRST_REGION(0x52, 28, 1),// M4TASRAM2LPEN
309 VSF_HW_EN_TASRAM3 = VSF_HW_CLKRST_REGION(0x52, 26, 1),// M4TASRAM3EN
310 VSF_HW_EN_TASRAM3LP = VSF_HW_CLKRST_REGION(0x52, 24, 1),// M4TASRAM3LPEN
311 VSF_HW_EN_TCM = VSF_HW_CLKRST_REGION(0x52, 22, 1),// M4TCMEN
312 VSF_HW_EN_TCMLP = VSF_HW_CLKRST_REGION(0x52, 20, 1),// M4TCMLPEN
313 VSF_HW_EN_TCMAXI = VSF_HW_CLKRST_REGION(0x52, 18, 1),// M4TCMAXIEN
314 VSF_HW_EN_TCMAXILP = VSF_HW_CLKRST_REGION(0x52, 16, 1),// M4TCMAXILPEN
315 VSF_HW_EN_TCMAPB = VSF_HW_CLKRST_REGION(0x52, 14, 1),// M4TCMAPBEN
316 VSF_HW_EN_TCMAPBLP = VSF_HW_CLKRST_REGION(0x52, 12, 1),// M4TCMAPBLPEN
317 VSF_HW_EN_ASRAM1 = VSF_HW_CLKRST_REGION(0x52, 10, 1),// M4ASRAM1EN
318 VSF_HW_EN_ASRAM1LP = VSF_HW_CLKRST_REGION(0x52, 8, 1),// M4ASRAM1LPEN
319 VSF_HW_EN_AXIROM = VSF_HW_CLKRST_REGION(0x52, 6, 1),// M4AXIROMEN
320 VSF_HW_EN_AXIROMLP = VSF_HW_CLKRST_REGION(0x52, 4, 1),// M4AXIROMLPEN
321 VSF_HW_EN_GPU = VSF_HW_CLKRST_REGION(0x52, 2, 1),// M4GPUEN
322 VSF_HW_EN_GPULP = VSF_HW_CLKRST_REGION(0x52, 0, 1),// M4GPULPEN
323#elif defined(CORE_CM7)
324 VSF_HW_EN_TASRAM2 = VSF_HW_CLKRST_REGION(0x52, 31, 1),// M7TASRAM2EN
325 VSF_HW_EN_TASRAM2LP = VSF_HW_CLKRST_REGION(0x52, 29, 1),// M7TASRAM2LPEN
326 VSF_HW_EN_TASRAM3 = VSF_HW_CLKRST_REGION(0x52, 27, 1),// M7TASRAM3EN
327 VSF_HW_EN_TASRAM3LP = VSF_HW_CLKRST_REGION(0x52, 25, 1),// M7TASRAM3LPEN
328 VSF_HW_EN_TCM = VSF_HW_CLKRST_REGION(0x52, 23, 1),// M7TCMEN
329 VSF_HW_EN_TCMLP = VSF_HW_CLKRST_REGION(0x52, 21, 1),// M7TCMLPEN
330 VSF_HW_EN_TCMAXI = VSF_HW_CLKRST_REGION(0x52, 19, 1),// M7TCMAXIEN
331 VSF_HW_EN_TCMAXILP = VSF_HW_CLKRST_REGION(0x52, 17, 1),// M7TCMAXILPEN
332 VSF_HW_EN_TCMAPB = VSF_HW_CLKRST_REGION(0x52, 15, 1),// M7TCMAPBEN
333 VSF_HW_EN_TCMAPBLP = VSF_HW_CLKRST_REGION(0x52, 13, 1),// M7TCMAPBLPEN
334 VSF_HW_EN_ASRAM1 = VSF_HW_CLKRST_REGION(0x52, 11, 1),// M7ASRAM1EN
335 VSF_HW_EN_ASRAM1LP = VSF_HW_CLKRST_REGION(0x52, 9, 1),// M7ASRAM1LPEN
336 VSF_HW_EN_AXIROM = VSF_HW_CLKRST_REGION(0x52, 7, 1),// M7AXIROMEN
337 VSF_HW_EN_AXIROMLP = VSF_HW_CLKRST_REGION(0x52, 5, 1),// M7AXIROMLPEN
338 VSF_HW_EN_GPU = VSF_HW_CLKRST_REGION(0x52, 3, 1),// M7GPUEN
339 VSF_HW_EN_GPULP = VSF_HW_CLKRST_REGION(0x52, 1, 1),// M7GPULPEN
340#endif
341 // RCC.AXIEN4
342#if defined(CORE_CM4)
343 VSF_HW_EN_XSPI1 = VSF_HW_CLKRST_REGION(0x53, 30, 1),// M4XSPI1EN
344 VSF_HW_EN_XSPI1LP = VSF_HW_CLKRST_REGION(0x53, 28, 1),// M4XSPI1LPEN
345 VSF_HW_EN_XSPI2 = VSF_HW_CLKRST_REGION(0x53, 26, 1),// M4XSPI2EN
346 VSF_HW_EN_XSPI2LP = VSF_HW_CLKRST_REGION(0x53, 24, 1),// M4XSPI2LPEN
347 VSF_HW_EN_FEMC = VSF_HW_CLKRST_REGION(0x53, 22, 1),// M4FEMCEN
348 VSF_HW_EN_FEMCLP = VSF_HW_CLKRST_REGION(0x53, 20, 1),// M4FEMCLPEN
349 VSF_HW_EN_SDRAM = VSF_HW_CLKRST_REGION(0x53, 18, 1),// M4SDRAMEN
350 VSF_HW_EN_SDRAMLP = VSF_HW_CLKRST_REGION(0x53, 16, 1),// M4SDRAMLPEN
351 VSF_HW_EN_DSIULPS = VSF_HW_CLKRST_REGION(0x53, 2, 1),// M4DSIULPSEN
352 VSF_HW_EN_DSIULPSLP = VSF_HW_CLKRST_REGION(0x53, 0, 1),// M4DSIULPSLPEN
353#elif defined(CORE_CM7)
354#endif
355
356 // AHB1
357 // RCC.AHB1EN1
358#if defined(CORE_CM4)
359 VSF_HW_EN_SDMMC2 = VSF_HW_CLKRST_REGION(0x15, 30, 1),// M4SDMMC2EN
360 VSF_HW_EN_SDMMC2LP = VSF_HW_CLKRST_REGION(0x15, 28, 1),// M4SDMMC2LPEN
361 VSF_HW_EN_USB2 = VSF_HW_CLKRST_REGION(0x15, 22, 1),// M4USB2EN
362 VSF_HW_EN_USB2LP = VSF_HW_CLKRST_REGION(0x15, 20, 1),// M4USB2LPEN
363 VSF_HW_EN_DMAMUX1 = VSF_HW_CLKRST_REGION(0x15, 18, 1),// M4DMAMUX1EN
364 VSF_HW_EN_DMAMUX1LP = VSF_HW_CLKRST_REGION(0x15, 16, 1),// M4DMAMUX1LPEN
365 VSF_HW_EN_ADC1PLL = VSF_HW_CLKRST_REGION(0x15, 14, 1),// M4ADC1PLLEN
366 VSF_HW_EN_ADC1PLLLP = VSF_HW_CLKRST_REGION(0x15, 12, 1),// M4ADC1PLLLPEN
367 VSF_HW_EN_ADC1SYS = VSF_HW_CLKRST_REGION(0x15, 10, 1),// M4ADC1SYSEN
368 VSF_HW_EN_ADC1SYSLP = VSF_HW_CLKRST_REGION(0x15, 8, 1),// M4ADC1SYSLPEN
369 VSF_HW_EN_ADC1BUS = VSF_HW_CLKRST_REGION(0x15, 2, 1),// M4ADC1BUSEN
370 VSF_HW_EN_ADC1BUSLP = VSF_HW_CLKRST_REGION(0x15, 0, 1),// M4ADC1BUSLPEN
371#elif defined(CORE_CM7)
372 VSF_HW_EN_SDMMC2 = VSF_HW_CLKRST_REGION(0x15, 31, 1),// M7SDMMC2EN
373 VSF_HW_EN_SDMMC2LP = VSF_HW_CLKRST_REGION(0x15, 29, 1),// M7SDMMC2LPEN
374 VSF_HW_EN_USB2 = VSF_HW_CLKRST_REGION(0x15, 23, 1),// M7USB2EN
375 VSF_HW_EN_USB2LP = VSF_HW_CLKRST_REGION(0x15, 21, 1),// M7USB2LPEN
376 VSF_HW_EN_DMAMUX1 = VSF_HW_CLKRST_REGION(0x15, 19, 1),// M7DMAMUX1EN
377 VSF_HW_EN_DMAMUX1LP = VSF_HW_CLKRST_REGION(0x15, 17, 1),// M7DMAMUX1LPEN
378 VSF_HW_EN_ADC1PLL = VSF_HW_CLKRST_REGION(0x15, 15, 1),// M7ADC1PLLEN
379 VSF_HW_EN_ADC1PLLLP = VSF_HW_CLKRST_REGION(0x15, 13, 1),// M7ADC1PLLLPEN
380 VSF_HW_EN_ADC1SYS = VSF_HW_CLKRST_REGION(0x15, 11, 1),// M7ADC1SYSEN
381 VSF_HW_EN_ADC1SYSLP = VSF_HW_CLKRST_REGION(0x15, 9, 1),// M7ADC1SYSLPEN
382 VSF_HW_EN_ADC1BUS = VSF_HW_CLKRST_REGION(0x15, 3, 1),// M7ADC1BUSEN
383 VSF_HW_EN_ADC1BUSLP = VSF_HW_CLKRST_REGION(0x15, 1, 1),// M7ADC1BUSLPEN
384#endif
385 // RCC.AHB1EN2
386#if defined(CORE_CM4)
387 VSF_HW_EN_ETH2TX = VSF_HW_CLKRST_REGION(0x16, 10, 1),// M4ETH2TXEN
388 VSF_HW_EN_ETH2TXLP = VSF_HW_CLKRST_REGION(0x16, 8, 1),// M4ETH2TXLPEN
389 VSF_HW_EN_ETH2RX = VSF_HW_CLKRST_REGION(0x16, 6, 1),// M4ETH2RXEN
390 VSF_HW_EN_ETH2RXLP = VSF_HW_CLKRST_REGION(0x16, 4, 1),// M4ETH2RXLPEN
391 VSF_HW_EN_ETH2MAC = VSF_HW_CLKRST_REGION(0x16, 2, 1),// M4ETH2MACEN
392 VSF_HW_EN_ETH2MACLP = VSF_HW_CLKRST_REGION(0x16, 0, 1),// M4ETH2MACLPEN
393#elif defined(CORE_CM7)
394 VSF_HW_EN_ETH2TX = VSF_HW_CLKRST_REGION(0x16, 11, 1),// M7ETH2TXEN
395 VSF_HW_EN_ETH2TXLP = VSF_HW_CLKRST_REGION(0x16, 9, 1),// M7ETH2TXLPEN
396 VSF_HW_EN_ETH2RX = VSF_HW_CLKRST_REGION(0x16, 7, 1),// M7ETH2RXEN
397 VSF_HW_EN_ETH2RXLP = VSF_HW_CLKRST_REGION(0x16, 5, 1),// M7ETH2RXLPEN
398 VSF_HW_EN_ETH2MAC = VSF_HW_CLKRST_REGION(0x16, 3, 1),// M7ETH2MACEN
399 VSF_HW_EN_ETH2MACLP = VSF_HW_CLKRST_REGION(0x16, 1, 1),// M7ETH2MACLPEN
400#endif
401 // RCC.AHB1EN3
402#if defined(CORE_CM4)
403 VSF_HW_EN_ECCMAC = VSF_HW_CLKRST_REGION(0x17, 26, 1),// M4ECCMACEN
404 VSF_HW_EN_ECCMACLP = VSF_HW_CLKRST_REGION(0x17, 24, 1),// M4ECCMACLPEN
405 VSF_HW_EN_DMA1 = VSF_HW_CLKRST_REGION(0x17, 18, 1),// M4DMA1EN
406 VSF_HW_EN_DMA1LP = VSF_HW_CLKRST_REGION(0x17, 16, 1),// M4DMA1LPEN
407 VSF_HW_EN_DMA2 = VSF_HW_CLKRST_REGION(0x17, 10, 1),// M4DMA2EN
408 VSF_HW_EN_DMA2LP = VSF_HW_CLKRST_REGION(0x17, 8, 1),// M4DMA2LPEN
409 VSF_HW_EN_DMA3 = VSF_HW_CLKRST_REGION(0x17, 2, 1),// M4DMA3EN
410 VSF_HW_EN_DMA3LP = VSF_HW_CLKRST_REGION(0x17, 0, 1),// M4DMA3LPEN
411#elif defined(CORE_CM7)
412 VSF_HW_EN_ECCMAC = VSF_HW_CLKRST_REGION(0x17, 27, 1),// M7ECCMACEN
413 VSF_HW_EN_ECCMACLP = VSF_HW_CLKRST_REGION(0x17, 25, 1),// M7ECCMACLPEN
414 VSF_HW_EN_DMA1 = VSF_HW_CLKRST_REGION(0x17, 19, 1),// M7DMA1EN
415 VSF_HW_EN_DMA1LP = VSF_HW_CLKRST_REGION(0x17, 17, 1),// M7DMA1LPEN
416 VSF_HW_EN_DMA2 = VSF_HW_CLKRST_REGION(0x17, 11, 1),// M7DMA2EN
417 VSF_HW_EN_DMA2LP = VSF_HW_CLKRST_REGION(0x17, 9, 1),// M7DMA2LPEN
418 VSF_HW_EN_DMA3 = VSF_HW_CLKRST_REGION(0x17, 3, 1),// M7DMA3EN
419 VSF_HW_EN_DMA3LP = VSF_HW_CLKRST_REGION(0x17, 1, 1),// M7DMA3LPEN
420#endif
421 // RCC.AHB1EN4
422#if defined(CORE_CM4)
423 VSF_HW_EN_ADC2PLL = VSF_HW_CLKRST_REGION(0x18, 30, 1),// M4ADC2PLLEN
424 VSF_HW_EN_ADC2PLLLP = VSF_HW_CLKRST_REGION(0x18, 28, 1),// M4ADC2PLLLPEN
425 VSF_HW_EN_ADC2SYS = VSF_HW_CLKRST_REGION(0x18, 26, 1),// M4ADC2SYSEN
426 VSF_HW_EN_ADC2SYSLP = VSF_HW_CLKRST_REGION(0x18, 24, 1),// M4ADC2SYSLPEN
427 VSF_HW_EN_ADC2BUS = VSF_HW_CLKRST_REGION(0x18, 18, 1),// M4ADC2BUSEN
428 VSF_HW_EN_ADC2BUSLP = VSF_HW_CLKRST_REGION(0x18, 16, 1),// M4ADC2BUSLPEN
429 VSF_HW_EN_ADC3PLL = VSF_HW_CLKRST_REGION(0x18, 14, 1),// M4ADC3PLLEN
430 VSF_HW_EN_ADC3PLLLP = VSF_HW_CLKRST_REGION(0x18, 12, 1),// M4ADC3PLLLPEN
431 VSF_HW_EN_ADC3SYS = VSF_HW_CLKRST_REGION(0x18, 10, 1),// M4ADC3SYSEN
432 VSF_HW_EN_ADC3SYSLP = VSF_HW_CLKRST_REGION(0x18, 8, 1),// M4ADC3SYSLPEN
433 VSF_HW_EN_ADC3BUS = VSF_HW_CLKRST_REGION(0x18, 2, 1),// M4ADC3BUSEN
434 VSF_HW_EN_ADC3BUSLP = VSF_HW_CLKRST_REGION(0x18, 0, 1),// M4ADC3BUSLPEN
435#elif defined(CORE_CM7)
436 VSF_HW_EN_ADC2PLL = VSF_HW_CLKRST_REGION(0x18, 31, 1),// M7ADC2PLLEN
437 VSF_HW_EN_ADC2PLLLP = VSF_HW_CLKRST_REGION(0x18, 29, 1),// M7ADC2PLLLPEN
438 VSF_HW_EN_ADC2SYS = VSF_HW_CLKRST_REGION(0x18, 27, 1),// M7ADC2SYSEN
439 VSF_HW_EN_ADC2SYSLP = VSF_HW_CLKRST_REGION(0x18, 25, 1),// M7ADC2SYSLPEN
440 VSF_HW_EN_ADC2BUS = VSF_HW_CLKRST_REGION(0x18, 19, 1),// M7ADC2BUSEN
441 VSF_HW_EN_ADC2BUSLP = VSF_HW_CLKRST_REGION(0x18, 17, 1),// M7ADC2BUSLPEN
442 VSF_HW_EN_ADC3PLL = VSF_HW_CLKRST_REGION(0x18, 15, 1),// M7ADC3PLLEN
443 VSF_HW_EN_ADC3PLLLP = VSF_HW_CLKRST_REGION(0x18, 13, 1),// M7ADC3PLLLPEN
444 VSF_HW_EN_ADC3SYS = VSF_HW_CLKRST_REGION(0x18, 11, 1),// M7ADC3SYSEN
445 VSF_HW_EN_ADC3SYSLP = VSF_HW_CLKRST_REGION(0x18, 9, 1),// M7ADC3SYSLPEN
446 VSF_HW_EN_ADC3BUS = VSF_HW_CLKRST_REGION(0x18, 3, 1),// M7ADC3BUSEN
447 VSF_HW_EN_ADC3BUSLP = VSF_HW_CLKRST_REGION(0x18, 1, 1),// M7ADC3BUSLPEN
448#endif
449
450 // AHB2
451 // RCC.AHB2EN1
452#if defined(CORE_CM4)
453 VSF_HW_EN_USB1 = VSF_HW_CLKRST_REGION(0x2C, 22, 1),// M4USB1EN
454 VSF_HW_EN_USB1LP = VSF_HW_CLKRST_REGION(0x2C, 20, 1),// M4USB1LPEN
455 VSF_HW_EN_ECCM2 = VSF_HW_CLKRST_REGION(0x2C, 14, 1),// M4ECCM2EN
456 VSF_HW_EN_ECCM2LP = VSF_HW_CLKRST_REGION(0x2C, 12, 1),// M4ECCM2LPEN
457 VSF_HW_EN_CORDIC = VSF_HW_CLKRST_REGION(0x2C, 10, 1),// M4CORDICEN
458 VSF_HW_EN_CORDICLP = VSF_HW_CLKRST_REGION(0x2C, 8, 1),// M4CORDICLPEN
459 VSF_HW_EN_SDPU = VSF_HW_CLKRST_REGION(0x2C, 6, 1),// M4SDPUEN
460 VSF_HW_EN_SDPULP = VSF_HW_CLKRST_REGION(0x2C, 4, 1),// M4SDPULPEN
461 VSF_HW_EN_FMAC = VSF_HW_CLKRST_REGION(0x2C, 2, 1),// M4FMACEN
462 VSF_HW_EN_FMACLP = VSF_HW_CLKRST_REGION(0x2C, 0, 1),// M4FMACLPEN
463#elif defined(CORE_CM7)
464 VSF_HW_EN_USB1 = VSF_HW_CLKRST_REGION(0x2C, 23, 1),// M7USB1EN
465 VSF_HW_EN_USB1LP = VSF_HW_CLKRST_REGION(0x2C, 21, 1),// M7USB1LPEN
466 VSF_HW_EN_ECCM2 = VSF_HW_CLKRST_REGION(0x2C, 15, 1),// M7ECCM2EN
467 VSF_HW_EN_ECCM2LP = VSF_HW_CLKRST_REGION(0x2C, 13, 1),// M7ECCM2LPEN
468 VSF_HW_EN_CORDIC = VSF_HW_CLKRST_REGION(0x2C, 11, 1),// M7CORDICEN
469 VSF_HW_EN_CORDICLP = VSF_HW_CLKRST_REGION(0x2C, 9, 1),// M7CORDICLPEN
470 VSF_HW_EN_SDPU = VSF_HW_CLKRST_REGION(0x2C, 7, 1),// M7SDPUEN
471 VSF_HW_EN_SDPULP = VSF_HW_CLKRST_REGION(0x2C, 5, 1),// M7SDPULPEN
472 VSF_HW_EN_FMAC = VSF_HW_CLKRST_REGION(0x2C, 3, 1),// M7FMACEN
473 VSF_HW_EN_FMACLP = VSF_HW_CLKRST_REGION(0x2C, 1, 1),// M7FMACLPEN
474#endif
475 // RCC.AHB2EN2
476#if defined(CORE_CM4)
477 VSF_HW_EN_DAC56 = VSF_HW_CLKRST_REGION(0x6D, 22, 1),// M4DAC56EN
478 VSF_HW_EN_DAC56LP = VSF_HW_CLKRST_REGION(0x6D, 20, 1),// M4DAC56LPEN
479 VSF_HW_EN_DAC34 = VSF_HW_CLKRST_REGION(0x6D, 18, 1),// M4DAC34EN
480 VSF_HW_EN_DAC34LP = VSF_HW_CLKRST_REGION(0x6D, 16, 1),// M4DAC34LPEN
481 VSF_HW_EN_ETH1TX = VSF_HW_CLKRST_REGION(0x6D, 10, 1),// M4ETH1TXEN
482 VSF_HW_EN_ETH1TXLP = VSF_HW_CLKRST_REGION(0x6D, 8, 1),// M4ETH1TXLPEN
483 VSF_HW_EN_ETH1RX = VSF_HW_CLKRST_REGION(0x6D, 6, 1),// M4ETH1RXEN
484 VSF_HW_EN_ETH1RXLP = VSF_HW_CLKRST_REGION(0x6D, 4, 1),// M4ETH1RXULPEN
485 VSF_HW_EN_ETH1MAC = VSF_HW_CLKRST_REGION(0x6D, 2, 1),// M4ETH1MACEN
486 VSF_HW_EN_ETH1MACLP = VSF_HW_CLKRST_REGION(0x6D, 0, 1),// M4ETH1MACLPEN
487#elif defined(CORE_CM7)
488 VSF_HW_EN_DAC56 = VSF_HW_CLKRST_REGION(0x6D, 23, 1),// M7DAC56EN
489 VSF_HW_EN_DAC56LP = VSF_HW_CLKRST_REGION(0x6D, 21, 1),// M7DAC56LPEN
490 VSF_HW_EN_DAC34 = VSF_HW_CLKRST_REGION(0x6D, 19, 1),// M7DAC34EN
491 VSF_HW_EN_DAC34LP = VSF_HW_CLKRST_REGION(0x6D, 17, 1),// M7DAC34LPEN
492 VSF_HW_EN_ETH1TX = VSF_HW_CLKRST_REGION(0x6D, 11, 1),// M7ETH1TXEN
493 VSF_HW_EN_ETH1TXLP = VSF_HW_CLKRST_REGION(0x6D, 9, 1),// M7ETH1TXLPEN
494 VSF_HW_EN_ETH1RX = VSF_HW_CLKRST_REGION(0x6D, 7, 1),// M7ETH1RXEN
495 VSF_HW_EN_ETH1RXLP = VSF_HW_CLKRST_REGION(0x6D, 5, 1),// M7ETH1RXULPEN
496 VSF_HW_EN_ETH1MAC = VSF_HW_CLKRST_REGION(0x6D, 3, 1),// M7ETH1MACEN
497 VSF_HW_EN_ETH1MACLP = VSF_HW_CLKRST_REGION(0x6D, 1, 1),// M7ETH1MACLPEN
498#endif
499
500 // AHB5
501 // RCC.AHB5EN1
502#if defined(CORE_CM4)
503 VSF_HW_EN_GPIOA = VSF_HW_CLKRST_REGION(0x39, 30, 1),// M4GPIOAEN
504 VSF_HW_EN_GPIOALP = VSF_HW_CLKRST_REGION(0x39, 28, 1),// M4GPIOALPEN
505 VSF_HW_EN_GPIOB = VSF_HW_CLKRST_REGION(0x39, 26, 1),// M4GPIOBEN
506 VSF_HW_EN_GPIOBLP = VSF_HW_CLKRST_REGION(0x39, 24, 1),// M4GPIOBLPEN
507 VSF_HW_EN_GPIOC = VSF_HW_CLKRST_REGION(0x39, 22, 1),// M4GPIOCEN
508 VSF_HW_EN_GPIOCLP = VSF_HW_CLKRST_REGION(0x39, 20, 1),// M4GPIOCLPEN
509 VSF_HW_EN_GPIOD = VSF_HW_CLKRST_REGION(0x39, 18, 1),// M4GPIODEN
510 VSF_HW_EN_GPIODLP = VSF_HW_CLKRST_REGION(0x39, 16, 1),// M4GPIODLPEN
511 VSF_HW_EN_GPIOE = VSF_HW_CLKRST_REGION(0x39, 14, 1),// M4GPIOEEN
512 VSF_HW_EN_GPIOELP = VSF_HW_CLKRST_REGION(0x39, 12, 1),// M4GPIOELPEN
513 VSF_HW_EN_GPIOF = VSF_HW_CLKRST_REGION(0x39, 10, 1),// M4GPIOFEN
514 VSF_HW_EN_GPIOFLP = VSF_HW_CLKRST_REGION(0x39, 8, 1),// M4GPIOFLPEN
515 VSF_HW_EN_GPIOG = VSF_HW_CLKRST_REGION(0x39, 6, 1),// M4GPIOGEN
516 VSF_HW_EN_GPIOGLP = VSF_HW_CLKRST_REGION(0x39, 4, 1),// M4GPIOGLPEN
517 VSF_HW_EN_GPIOH = VSF_HW_CLKRST_REGION(0x39, 2, 1),// M4GPIOHEN
518 VSF_HW_EN_GPIOHLP = VSF_HW_CLKRST_REGION(0x39, 0, 1),// M4GPIOHLPEN
519#elif defined(CORE_CM7)
520 VSF_HW_EN_GPIOA = VSF_HW_CLKRST_REGION(0x39, 31, 1),// M7GPIOAEN
521 VSF_HW_EN_GPIOALP = VSF_HW_CLKRST_REGION(0x39, 29, 1),// M7GPIOALPEN
522 VSF_HW_EN_GPIOB = VSF_HW_CLKRST_REGION(0x39, 27, 1),// M7GPIOBEN
523 VSF_HW_EN_GPIOBLP = VSF_HW_CLKRST_REGION(0x39, 25, 1),// M7GPIOBLPEN
524 VSF_HW_EN_GPIOC = VSF_HW_CLKRST_REGION(0x39, 23, 1),// M7GPIOCEN
525 VSF_HW_EN_GPIOCLP = VSF_HW_CLKRST_REGION(0x39, 21, 1),// M7GPIOCLPEN
526 VSF_HW_EN_GPIOD = VSF_HW_CLKRST_REGION(0x39, 19, 1),// M7GPIODEN
527 VSF_HW_EN_GPIODLP = VSF_HW_CLKRST_REGION(0x39, 17, 1),// M7GPIODLPEN
528 VSF_HW_EN_GPIOE = VSF_HW_CLKRST_REGION(0x39, 15, 1),// M7GPIOEEN
529 VSF_HW_EN_GPIOELP = VSF_HW_CLKRST_REGION(0x39, 13, 1),// M7GPIOELPEN
530 VSF_HW_EN_GPIOF = VSF_HW_CLKRST_REGION(0x39, 11, 1),// M7GPIOFEN
531 VSF_HW_EN_GPIOFLP = VSF_HW_CLKRST_REGION(0x39, 9, 1),// M7GPIOFLPEN
532 VSF_HW_EN_GPIOG = VSF_HW_CLKRST_REGION(0x39, 7, 1),// M7GPIOGEN
533 VSF_HW_EN_GPIOGLP = VSF_HW_CLKRST_REGION(0x39, 5, 1),// M7GPIOGLPEN
534 VSF_HW_EN_GPIOH = VSF_HW_CLKRST_REGION(0x39, 3, 1),// M7GPIOHEN
535 VSF_HW_EN_GPIOHLP = VSF_HW_CLKRST_REGION(0x39, 1, 1),// M7GPIOHLPEN
536#endif
537 // RCC.AHB5EN2
538#if defined(CORE_CM4)
539 VSF_HW_EN_GPIOI = VSF_HW_CLKRST_REGION(0x3A, 30, 1),// M4GPIOIEN
540 VSF_HW_EN_GPIOILP = VSF_HW_CLKRST_REGION(0x3A, 28, 1),// M4GPIOILPEN
541 VSF_HW_EN_GPIOJ = VSF_HW_CLKRST_REGION(0x3A, 26, 1),// M4GPIOJEN
542 VSF_HW_EN_GPIOJLP = VSF_HW_CLKRST_REGION(0x3A, 24, 1),// M4GPIOJLPEN
543 VSF_HW_EN_GPIOK = VSF_HW_CLKRST_REGION(0x3A, 22, 1),// M4GPIOKEN
544 VSF_HW_EN_GPIOKLP = VSF_HW_CLKRST_REGION(0x3A, 20, 1),// M4GPIOKLPEN
545 VSF_HW_EN_ECCM3 = VSF_HW_CLKRST_REGION(0x3A, 18, 1),// M4ECCM3EN
546 VSF_HW_EN_ECCM3LP = VSF_HW_CLKRST_REGION(0x3A, 16, 1),// M4ECCM3LPEN
547
548 VSF_HW_EN_CRC = VSF_HW_CLKRST_REGION(0x3A, 10, 1),// M4CRCEN
549 VSF_HW_EN_CRCLP = VSF_HW_CLKRST_REGION(0x3A, 8, 1),// M4CRCLPEN
550 VSF_HW_EN_SEMA4 = VSF_HW_CLKRST_REGION(0x3A, 6, 1),// M4SEMA4EN
551 VSF_HW_EN_SEMA4LP = VSF_HW_CLKRST_REGION(0x3A, 4, 1),// M4SEMA4LPEN
552 VSF_HW_EN_AFIO = VSF_HW_CLKRST_REGION(0x3A, 2, 1),// M4AFIOEN
553 VSF_HW_EN_AFIOLP = VSF_HW_CLKRST_REGION(0x3A, 0, 1),// M4AFIOLPEN
554#elif defined(CORE_CM7)
555 VSF_HW_EN_GPIOI = VSF_HW_CLKRST_REGION(0x3A, 31, 1),// M7GPIOIEN
556 VSF_HW_EN_GPIOILP = VSF_HW_CLKRST_REGION(0x3A, 29, 1),// M7GPIOILPEN
557 VSF_HW_EN_GPIOJ = VSF_HW_CLKRST_REGION(0x3A, 27, 1),// M7GPIOJEN
558 VSF_HW_EN_GPIOJLP = VSF_HW_CLKRST_REGION(0x3A, 25, 1),// M7GPIOJLPEN
559 VSF_HW_EN_GPIOK = VSF_HW_CLKRST_REGION(0x3A, 23, 1),// M7GPIOKEN
560 VSF_HW_EN_GPIOKLP = VSF_HW_CLKRST_REGION(0x3A, 21, 1),// M7GPIOKLPEN
561 VSF_HW_EN_ECCM3 = VSF_HW_CLKRST_REGION(0x3A, 19, 1),// M7ECCM3EN
562 VSF_HW_EN_ECCM3LP = VSF_HW_CLKRST_REGION(0x3A, 17, 1),// M7ECCM3LPEN
563
564 VSF_HW_EN_PWR = VSF_HW_CLKRST_REGION(0x3A, 15, 1),// PWREN
565 VSF_HW_EN_PWRLP = VSF_HW_CLKRST_REGION(0x3A, 13, 1),// PWRLPEN
566
567 VSF_HW_EN_CRC = VSF_HW_CLKRST_REGION(0x3A, 11, 1),// M7CRCEN
568 VSF_HW_EN_CRCLP = VSF_HW_CLKRST_REGION(0x3A, 9, 1),// M7CRCLPEN
569 VSF_HW_EN_SEMA4 = VSF_HW_CLKRST_REGION(0x3A, 7, 1),// M7SEMA4EN
570 VSF_HW_EN_SEMA4LP = VSF_HW_CLKRST_REGION(0x3A, 5, 1),// M7SEMA4LPEN
571 VSF_HW_EN_AFIO = VSF_HW_CLKRST_REGION(0x3A, 3, 1),// M7AFIOEN
572 VSF_HW_EN_AFIOLP = VSF_HW_CLKRST_REGION(0x3A, 1, 1),// M7AFIOLPEN
573#endif
574
575 // AHB9
576 // RCC.AHB9EN1
577#if defined(CORE_CM4)
578 VSF_HW_EN_ESC = VSF_HW_CLKRST_REGION(0x70, 2, 1),// M4ESCEN
579 VSF_HW_EN_ESCLP = VSF_HW_CLKRST_REGION(0x70, 0, 1),// M4ESCLPEN
580#elif defined(CORE_CM7)
581 VSF_HW_EN_ESC = VSF_HW_CLKRST_REGION(0x70, 3, 1),// M7ESCEN
582 VSF_HW_EN_ESCLP = VSF_HW_CLKRST_REGION(0x70, 1, 1),// M7ESCLPEN
583#endif
584
585 // APB1
586 // RCC.APB1EN1
587#if defined(CORE_CM4)
588 VSF_HW_EN_BTIM1 = VSF_HW_CLKRST_REGION(0x20, 30, 1),// M4BTIM1EN
589 VSF_HW_EN_BTIM1LP = VSF_HW_CLKRST_REGION(0x20, 28, 1),// M4BTIM1LPEN
590 VSF_HW_EN_BTIM2 = VSF_HW_CLKRST_REGION(0x20, 26, 1),// M4BTIM2EN
591 VSF_HW_EN_BTIM2LP = VSF_HW_CLKRST_REGION(0x20, 24, 1),// M4BTIM2LPEN
592 VSF_HW_EN_BTIM3 = VSF_HW_CLKRST_REGION(0x20, 22, 1),// M4BTIM3EN
593 VSF_HW_EN_BTIM3LP = VSF_HW_CLKRST_REGION(0x20, 20, 1),// M4BTIM3LPEN
594 VSF_HW_EN_BTIM4 = VSF_HW_CLKRST_REGION(0x20, 18, 1),// M4BTIM4EN
595 VSF_HW_EN_BTIM4LP = VSF_HW_CLKRST_REGION(0x20, 16, 1),// M4BTIM4LPEN
596 VSF_HW_EN_GTIMB1 = VSF_HW_CLKRST_REGION(0x20, 14, 1),// M4GTIMB1EN
597 VSF_HW_EN_GTIMB1LP = VSF_HW_CLKRST_REGION(0x20, 12, 1),// M4GTIMB1LPEN
598 VSF_HW_EN_GTIMB2 = VSF_HW_CLKRST_REGION(0x20, 10, 1),// M4GTIMB2EN
599 VSF_HW_EN_GTIMB2LP = VSF_HW_CLKRST_REGION(0x20, 8, 1),// M4GTIMB2LPEN
600 VSF_HW_EN_GTIMB3 = VSF_HW_CLKRST_REGION(0x20, 6, 1),// M4GTIMB3EN
601 VSF_HW_EN_GTIMB3LP = VSF_HW_CLKRST_REGION(0x20, 4, 1),// M4GTIMB3LPEN
602 VSF_HW_EN_GTIMA4 = VSF_HW_CLKRST_REGION(0x20, 2, 1),// M4GTIMA4EN
603 VSF_HW_EN_GTIMA4LP = VSF_HW_CLKRST_REGION(0x20, 0, 1),// M4GTIMA4LPEN
604#elif defined(CORE_CM7)
605 VSF_HW_EN_BTIM1 = VSF_HW_CLKRST_REGION(0x20, 31, 1),// M7BTIM1EN
606 VSF_HW_EN_BTIM1LP = VSF_HW_CLKRST_REGION(0x20, 29, 1),// M7BTIM1LPEN
607 VSF_HW_EN_BTIM2 = VSF_HW_CLKRST_REGION(0x20, 27, 1),// M7BTIM2EN
608 VSF_HW_EN_BTIM2LP = VSF_HW_CLKRST_REGION(0x20, 25, 1),// M7BTIM2LPEN
609 VSF_HW_EN_BTIM3 = VSF_HW_CLKRST_REGION(0x20, 23, 1),// M7BTIM3EN
610 VSF_HW_EN_BTIM3LP = VSF_HW_CLKRST_REGION(0x20, 21, 1),// M7BTIM3LPEN
611 VSF_HW_EN_BTIM4 = VSF_HW_CLKRST_REGION(0x20, 19, 1),// M7BTIM4EN
612 VSF_HW_EN_BTIM4LP = VSF_HW_CLKRST_REGION(0x20, 17, 1),// M7BTIM4LPEN
613 VSF_HW_EN_GTIMB1 = VSF_HW_CLKRST_REGION(0x20, 15, 1),// M7GTIMB1EN
614 VSF_HW_EN_GTIMB1LP = VSF_HW_CLKRST_REGION(0x20, 13, 1),// M7GTIMB1LPEN
615 VSF_HW_EN_GTIMB2 = VSF_HW_CLKRST_REGION(0x20, 11, 1),// M7GTIMB2EN
616 VSF_HW_EN_GTIMB2LP = VSF_HW_CLKRST_REGION(0x20, 9, 1),// M7GTIMB2LPEN
617 VSF_HW_EN_GTIMB3 = VSF_HW_CLKRST_REGION(0x20, 7, 1),// M7GTIMB3EN
618 VSF_HW_EN_GTIMB3LP = VSF_HW_CLKRST_REGION(0x20, 5, 1),// M7GTIMB3LPEN
619 VSF_HW_EN_GTIMA4 = VSF_HW_CLKRST_REGION(0x20, 3, 1),// M7GTIMA4EN
620 VSF_HW_EN_GTIMA4LP = VSF_HW_CLKRST_REGION(0x20, 1, 1),// M7GTIMA4LPEN
621#endif
622 // RCC.APB1EN2
623#if defined(CORE_CM4)
624 VSF_HW_EN_GTIMA5 = VSF_HW_CLKRST_REGION(0x21, 30, 1),// M4GTIMA5EN
625 VSF_HW_EN_GTIMA5LP = VSF_HW_CLKRST_REGION(0x21, 28, 1),// M4GTIMA5LPEN
626 VSF_HW_EN_GTIMA6 = VSF_HW_CLKRST_REGION(0x21, 26, 1),// M4GTIMA6EN
627 VSF_HW_EN_GTIMA6LP = VSF_HW_CLKRST_REGION(0x21, 24, 1),// M4GTIMA6LPEN
628 VSF_HW_EN_GTIMA7 = VSF_HW_CLKRST_REGION(0x21, 22, 1),// M4GTIMA7EN
629 VSF_HW_EN_GTIMA7LP = VSF_HW_CLKRST_REGION(0x21, 20, 1),// M4GTIMA7LPEN
630 VSF_HW_EN_SPI3 = VSF_HW_CLKRST_REGION(0x21, 18, 1),// M4SPI3EN
631 VSF_HW_EN_SPI3LP = VSF_HW_CLKRST_REGION(0x21, 16, 1),// M4SPI3LPEN
632 VSF_HW_EN_DAC12 = VSF_HW_CLKRST_REGION(0x21, 14, 1),// M4DAC12EN
633 VSF_HW_EN_DAC12LP = VSF_HW_CLKRST_REGION(0x21, 12, 1),// M4DAC12LPEN
634 VSF_HW_EN_WWDG2 = VSF_HW_CLKRST_REGION(0x21, 6, 1),// M4WWDG2EN
635 VSF_HW_EN_WWDG2LP = VSF_HW_CLKRST_REGION(0x21, 4, 1),// M4WWDG2LPEN
636#elif defined(CORE_CM7)
637 VSF_HW_EN_GTIMA5 = VSF_HW_CLKRST_REGION(0x21, 31, 1),// M7GTIMA5EN
638 VSF_HW_EN_GTIMA5LP = VSF_HW_CLKRST_REGION(0x21, 29, 1),// M7GTIMA5LPEN
639 VSF_HW_EN_GTIMA6 = VSF_HW_CLKRST_REGION(0x21, 27, 1),// M7GTIMA6EN
640 VSF_HW_EN_GTIMA6LP = VSF_HW_CLKRST_REGION(0x21, 25, 1),// M7GTIMA6LPEN
641 VSF_HW_EN_GTIMA7 = VSF_HW_CLKRST_REGION(0x21, 23, 1),// M7GTIMA7EN
642 VSF_HW_EN_GTIMA7LP = VSF_HW_CLKRST_REGION(0x21, 21, 1),// M7GTIMA7LPEN
643 VSF_HW_EN_SPI3 = VSF_HW_CLKRST_REGION(0x21, 19, 1),// M7SPI3EN
644 VSF_HW_EN_SPI3LP = VSF_HW_CLKRST_REGION(0x21, 17, 1),// M7SPI3LPEN
645 VSF_HW_EN_DAC12 = VSF_HW_CLKRST_REGION(0x21, 15, 1),// M7DAC12EN
646 VSF_HW_EN_DAC12LP = VSF_HW_CLKRST_REGION(0x21, 13, 1),// M7DAC12LPEN
647 VSF_HW_EN_WWDG2 = VSF_HW_CLKRST_REGION(0x21, 7, 1),// M7WWDG2EN
648 VSF_HW_EN_WWDG2LP = VSF_HW_CLKRST_REGION(0x21, 5, 1),// M7WWDG2LPEN
649#endif
650 // RCC.APB1EN3
651#if defined(CORE_CM4)
652 VSF_HW_EN_USART1 = VSF_HW_CLKRST_REGION(0x22, 30, 1),// M4USART1EN
653 VSF_HW_EN_USART1LP = VSF_HW_CLKRST_REGION(0x22, 28, 1),// M4USART1LPEN
654 VSF_HW_EN_USART2 = VSF_HW_CLKRST_REGION(0x22, 26, 1),// M4USART2EN
655 VSF_HW_EN_USART2LP = VSF_HW_CLKRST_REGION(0x22, 24, 1),// M4USART2LPEN
656 VSF_HW_EN_USART3 = VSF_HW_CLKRST_REGION(0x22, 22, 1),// M4USART3EN
657 VSF_HW_EN_USART3LP = VSF_HW_CLKRST_REGION(0x22, 20, 1),// M4USART3LPEN
658 VSF_HW_EN_USART4 = VSF_HW_CLKRST_REGION(0x22, 18, 1),// M4USART4EN
659 VSF_HW_EN_USART4LP = VSF_HW_CLKRST_REGION(0x22, 16, 1),// M4USART4LPEN
660 VSF_HW_EN_UART9 = VSF_HW_CLKRST_REGION(0x22, 14, 1),// M4UART9EN
661 VSF_HW_EN_UART9LP = VSF_HW_CLKRST_REGION(0x22, 12, 1),// M4UART9LPEN
662 VSF_HW_EN_UART10 = VSF_HW_CLKRST_REGION(0x22, 10, 1),// M4UART10EN
663 VSF_HW_EN_UART10LP = VSF_HW_CLKRST_REGION(0x22, 8, 1),// M4UART10LPEN
664 VSF_HW_EN_UART11 = VSF_HW_CLKRST_REGION(0x22, 6, 1),// M4UART11EN
665 VSF_HW_EN_UART11LP = VSF_HW_CLKRST_REGION(0x22, 4, 1),// M4UART11LPEN
666 VSF_HW_EN_UART12 = VSF_HW_CLKRST_REGION(0x22, 2, 1),// M4UART12EN
667 VSF_HW_EN_UART12LP = VSF_HW_CLKRST_REGION(0x22, 0, 1),// M4UART12LPEN
668#elif defined(CORE_CM7)
669 VSF_HW_EN_USART1 = VSF_HW_CLKRST_REGION(0x22, 31, 1),// M7USART1EN
670 VSF_HW_EN_USART1LP = VSF_HW_CLKRST_REGION(0x22, 29, 1),// M7USART1LPEN
671 VSF_HW_EN_USART2 = VSF_HW_CLKRST_REGION(0x22, 27, 1),// M7USART2EN
672 VSF_HW_EN_USART2LP = VSF_HW_CLKRST_REGION(0x22, 25, 1),// M7USART2LPEN
673 VSF_HW_EN_USART3 = VSF_HW_CLKRST_REGION(0x22, 23, 1),// M7USART3EN
674 VSF_HW_EN_USART3LP = VSF_HW_CLKRST_REGION(0x22, 21, 1),// M7USART3LPEN
675 VSF_HW_EN_USART4 = VSF_HW_CLKRST_REGION(0x22, 19, 1),// M7USART4EN
676 VSF_HW_EN_USART4LP = VSF_HW_CLKRST_REGION(0x22, 17, 1),// M7USART4LPEN
677 VSF_HW_EN_UART9 = VSF_HW_CLKRST_REGION(0x22, 15, 1),// M7UART9EN
678 VSF_HW_EN_UART9LP = VSF_HW_CLKRST_REGION(0x22, 13, 1),// M7UART9LPEN
679 VSF_HW_EN_UART10 = VSF_HW_CLKRST_REGION(0x22, 11, 1),// M7UART10EN
680 VSF_HW_EN_UART10LP = VSF_HW_CLKRST_REGION(0x22, 9, 1),// M7UART10LPEN
681 VSF_HW_EN_UART11 = VSF_HW_CLKRST_REGION(0x22, 7, 1),// M7UART11EN
682 VSF_HW_EN_UART11LP = VSF_HW_CLKRST_REGION(0x22, 5, 1),// M7UART11LPEN
683 VSF_HW_EN_UART12 = VSF_HW_CLKRST_REGION(0x22, 3, 1),// M7UART12EN
684 VSF_HW_EN_UART12LP = VSF_HW_CLKRST_REGION(0x22, 1, 1),// M7UART12LPEN
685#endif
686 // RCC.APB1EN4
687#if defined(CORE_CM4)
688 VSF_HW_EN_I2S3 = VSF_HW_CLKRST_REGION(0x23, 30, 1),// M4I2S3EN
689 VSF_HW_EN_I2S3LP = VSF_HW_CLKRST_REGION(0x23, 28, 1),// M4I2S3LPEN
690 VSF_HW_EN_I2S4 = VSF_HW_CLKRST_REGION(0x23, 26, 1),// M4I2S4EN
691 VSF_HW_EN_I2S4LP = VSF_HW_CLKRST_REGION(0x23, 24, 1),// M4I2S4LPEN
692 VSF_HW_EN_I2C1 = VSF_HW_CLKRST_REGION(0x23, 22, 1),// M4I2C1EN
693 VSF_HW_EN_I2C1LP = VSF_HW_CLKRST_REGION(0x23, 20, 1),// M4I2C1LPEN
694 VSF_HW_EN_I2C2 = VSF_HW_CLKRST_REGION(0x23, 18, 1),// M4I2C2EN
695 VSF_HW_EN_I2C2LP = VSF_HW_CLKRST_REGION(0x23, 16, 1),// M4I2C2LPEN
696 VSF_HW_EN_I2C3 = VSF_HW_CLKRST_REGION(0x23, 14, 1),// M4I2C3EN
697 VSF_HW_EN_I2C3LP = VSF_HW_CLKRST_REGION(0x23, 12, 1),// M4I2C3LPEN
698#elif defined(CORE_CM7)
699 VSF_HW_EN_I2S3 = VSF_HW_CLKRST_REGION(0x23, 31, 1),// M7I2S3EN
700 VSF_HW_EN_I2S3LP = VSF_HW_CLKRST_REGION(0x23, 29, 1),// M7I2S3LPEN
701 VSF_HW_EN_I2S4 = VSF_HW_CLKRST_REGION(0x23, 27, 1),// M7I2S4EN
702 VSF_HW_EN_I2S4LP = VSF_HW_CLKRST_REGION(0x23, 25, 1),// M7I2S4LPEN
703 VSF_HW_EN_I2C1 = VSF_HW_CLKRST_REGION(0x23, 23, 1),// M7I2C1EN
704 VSF_HW_EN_I2C1LP = VSF_HW_CLKRST_REGION(0x23, 21, 1),// M7I2C1LPEN
705 VSF_HW_EN_I2C2 = VSF_HW_CLKRST_REGION(0x23, 19, 1),// M7I2C2EN
706 VSF_HW_EN_I2C2LP = VSF_HW_CLKRST_REGION(0x23, 17, 1),// M7I2C2LPEN
707 VSF_HW_EN_I2C3 = VSF_HW_CLKRST_REGION(0x23, 15, 1),// M7I2C3EN
708 VSF_HW_EN_I2C3LP = VSF_HW_CLKRST_REGION(0x23, 13, 1),// M7I2C3LPEN
709#endif
710 // RCC.APB1EN5
711#if defined(CORE_CM4)
712 VSF_HW_EN_FDCAN1 = VSF_HW_CLKRST_REGION(0x24, 30, 1),// M4FDCAN1EN
713 VSF_HW_EN_FDCAN1LP = VSF_HW_CLKRST_REGION(0x24, 28, 1),// M4FDCAN1LPEN
714 VSF_HW_EN_FDCAN2 = VSF_HW_CLKRST_REGION(0x24, 26, 1),// M4FDCAN2EN
715 VSF_HW_EN_FDCAN2LP = VSF_HW_CLKRST_REGION(0x24, 24, 1),// M4FDCAN2LPEN
716 VSF_HW_EN_FDCAN5 = VSF_HW_CLKRST_REGION(0x24, 22, 1),// M4FDCAN5EN
717 VSF_HW_EN_FDCAN5LP = VSF_HW_CLKRST_REGION(0x24, 20, 1),// M4FDCAN5LPEN
718 VSF_HW_EN_FDCAN6 = VSF_HW_CLKRST_REGION(0x24, 18, 1),// M4FDCAN6EN
719 VSF_HW_EN_FDCAN6LP = VSF_HW_CLKRST_REGION(0x24, 16, 1),// M4FDCAN6LPEN
720#elif defined(CORE_CM7)
721 VSF_HW_EN_FDCAN1 = VSF_HW_CLKRST_REGION(0x24, 31, 1),// M7FDCAN1EN
722 VSF_HW_EN_FDCAN1LP = VSF_HW_CLKRST_REGION(0x24, 29, 1),// M7FDCAN1LPEN
723 VSF_HW_EN_FDCAN2 = VSF_HW_CLKRST_REGION(0x24, 27, 1),// M7FDCAN2EN
724 VSF_HW_EN_FDCAN2LP = VSF_HW_CLKRST_REGION(0x24, 25, 1),// M7FDCAN2LPEN
725 VSF_HW_EN_FDCAN5 = VSF_HW_CLKRST_REGION(0x24, 23, 1),// M7FDCAN5EN
726 VSF_HW_EN_FDCAN5LP = VSF_HW_CLKRST_REGION(0x24, 21, 1),// M7FDCAN5LPEN
727 VSF_HW_EN_FDCAN6 = VSF_HW_CLKRST_REGION(0x24, 19, 1),// M7FDCAN6EN
728 VSF_HW_EN_FDCAN6LP = VSF_HW_CLKRST_REGION(0x24, 17, 1),// M7FDCAN6LPEN
729#endif
730
731 // APB2
732 // RCC.APB2EN1
733#if defined(CORE_CM4)
734 VSF_HW_EN_ATIM1 = VSF_HW_CLKRST_REGION(0x31, 30, 1),// M4ATIM1EN
735 VSF_HW_EN_ATIM1LP = VSF_HW_CLKRST_REGION(0x31, 28, 1),// M4ATIM1LPEN
736 VSF_HW_EN_ATIM2 = VSF_HW_CLKRST_REGION(0x31, 26, 1),// M4ATIM2EN
737 VSF_HW_EN_ATIM2LP = VSF_HW_CLKRST_REGION(0x31, 24, 1),// M4ATIM2LPEN
738 VSF_HW_EN_GTIMA1 = VSF_HW_CLKRST_REGION(0x31, 22, 1),// M4GTIMA1EN
739 VSF_HW_EN_GTIMA1LP = VSF_HW_CLKRST_REGION(0x31, 20, 1),// M4GTIMA1LPEN
740 VSF_HW_EN_GTIMA2 = VSF_HW_CLKRST_REGION(0x31, 18, 1),// M4GTIMA2EN
741 VSF_HW_EN_GTIMA2LP = VSF_HW_CLKRST_REGION(0x31, 16, 1),// M4GTIMA2LPEN
742 VSF_HW_EN_GTIMA3 = VSF_HW_CLKRST_REGION(0x31, 14, 1),// M4GTIMA3EN
743 VSF_HW_EN_GTIMA3LP = VSF_HW_CLKRST_REGION(0x31, 12, 1),// M4GTIMA3LPEN
744 VSF_HW_EN_SHRTIM1 = VSF_HW_CLKRST_REGION(0x31, 10, 1),// M4SHRTIM1EN
745 VSF_HW_EN_SHRTIM1LP = VSF_HW_CLKRST_REGION(0x31, 8, 1),// M4SHRTIM1LPEN
746 VSF_HW_EN_SHRTIM2 = VSF_HW_CLKRST_REGION(0x31, 6, 1),// M4SHRTIM2EN
747 VSF_HW_EN_SHRTIM2LP = VSF_HW_CLKRST_REGION(0x31, 4, 1),// M4SHRTIM2LPEN
748#elif defined(CORE_CM7)
749 VSF_HW_EN_ATIM1 = VSF_HW_CLKRST_REGION(0x31, 31, 1),// M7ATIM1EN
750 VSF_HW_EN_ATIM1LP = VSF_HW_CLKRST_REGION(0x31, 29, 1),// M7ATIM1LPEN
751 VSF_HW_EN_ATIM2 = VSF_HW_CLKRST_REGION(0x31, 27, 1),// M7ATIM2EN
752 VSF_HW_EN_ATIM2LP = VSF_HW_CLKRST_REGION(0x31, 25, 1),// M7ATIM2LPEN
753 VSF_HW_EN_GTIMA1 = VSF_HW_CLKRST_REGION(0x31, 23, 1),// M7GTIMA1EN
754 VSF_HW_EN_GTIMA1LP = VSF_HW_CLKRST_REGION(0x31, 21, 1),// M7GTIMA1LPEN
755 VSF_HW_EN_GTIMA2 = VSF_HW_CLKRST_REGION(0x31, 19, 1),// M7GTIMA2EN
756 VSF_HW_EN_GTIMA2LP = VSF_HW_CLKRST_REGION(0x31, 17, 1),// M7GTIMA2LPEN
757 VSF_HW_EN_GTIMA3 = VSF_HW_CLKRST_REGION(0x31, 15, 1),// M7GTIMA3EN
758 VSF_HW_EN_GTIMA3LP = VSF_HW_CLKRST_REGION(0x31, 13, 1),// M7GTIMA3LPEN
759 VSF_HW_EN_SHRTIM1 = VSF_HW_CLKRST_REGION(0x31, 11, 1),// M7SHRTIM1EN
760 VSF_HW_EN_SHRTIM1LP = VSF_HW_CLKRST_REGION(0x31, 9, 1),// M7SHRTIM1LPEN
761 VSF_HW_EN_SHRTIM2 = VSF_HW_CLKRST_REGION(0x31, 7, 1),// M7SHRTIM2EN
762 VSF_HW_EN_SHRTIM2LP = VSF_HW_CLKRST_REGION(0x31, 5, 1),// M7SHRTIM2LPEN
763#endif
764 // RCC.APB2EN2
765#if defined(CORE_CM4)
766 VSF_HW_EN_I2S1 = VSF_HW_CLKRST_REGION(0x32, 30, 1),// M4I2S1EN
767 VSF_HW_EN_I2S1LP = VSF_HW_CLKRST_REGION(0x32, 28, 1),// M4I2S1LPEN
768 VSF_HW_EN_I2S2 = VSF_HW_CLKRST_REGION(0x32, 26, 1),// M4I2S2EN
769 VSF_HW_EN_I2S2LP = VSF_HW_CLKRST_REGION(0x32, 24, 1),// M4I2S2LPEN
770 VSF_HW_EN_SPI1 = VSF_HW_CLKRST_REGION(0x32, 22, 1),// M4SPI1EN
771 VSF_HW_EN_SPI1LP = VSF_HW_CLKRST_REGION(0x32, 20, 1),// M4SPI1LPEN
772 VSF_HW_EN_SPI2 = VSF_HW_CLKRST_REGION(0x32, 18, 1),// M4SPI2EN
773 VSF_HW_EN_SPI2LP = VSF_HW_CLKRST_REGION(0x32, 16, 1),// M4SPI2LPEN
774 VSF_HW_EN_DSMU = VSF_HW_CLKRST_REGION(0x32, 14, 1),// M4DSMUEN
775 VSF_HW_EN_DSMULP = VSF_HW_CLKRST_REGION(0x32, 12, 1),// M4DSMULPEN
776 VSF_HW_EN_I2C4 = VSF_HW_CLKRST_REGION(0x32, 10, 1),// M4I2C4EN
777 VSF_HW_EN_I2C4LP = VSF_HW_CLKRST_REGION(0x32, 8, 1),// M4I2C4LPEN
778 VSF_HW_EN_I2C5 = VSF_HW_CLKRST_REGION(0x32, 6, 1),// M4I2C5EN
779 VSF_HW_EN_I2C5LP = VSF_HW_CLKRST_REGION(0x32, 4, 1),// M4I2C5LPEN
780 VSF_HW_EN_I2C6 = VSF_HW_CLKRST_REGION(0x32, 2, 1),// M4I2C6EN
781 VSF_HW_EN_I2C6LP = VSF_HW_CLKRST_REGION(0x32, 0, 1),// M4I2C6LPEN
782#elif defined(CORE_CM7)
783 VSF_HW_EN_I2S1 = VSF_HW_CLKRST_REGION(0x32, 31, 1),// M7I2S1EN
784 VSF_HW_EN_I2S1LP = VSF_HW_CLKRST_REGION(0x32, 29, 1),// M7I2S1LPEN
785 VSF_HW_EN_I2S2 = VSF_HW_CLKRST_REGION(0x32, 27, 1),// M7I2S2EN
786 VSF_HW_EN_I2S2LP = VSF_HW_CLKRST_REGION(0x32, 25, 1),// M7I2S2LPEN
787 VSF_HW_EN_SPI1 = VSF_HW_CLKRST_REGION(0x32, 23, 1),// M7SPI1EN
788 VSF_HW_EN_SPI1LP = VSF_HW_CLKRST_REGION(0x32, 21, 1),// M7SPI1LPEN
789 VSF_HW_EN_SPI2 = VSF_HW_CLKRST_REGION(0x32, 19, 1),// M7SPI2EN
790 VSF_HW_EN_SPI2LP = VSF_HW_CLKRST_REGION(0x32, 17, 1),// M7SPI2LPEN
791 VSF_HW_EN_DSMU = VSF_HW_CLKRST_REGION(0x32, 15, 1),// M7DSMUEN
792 VSF_HW_EN_DSMULP = VSF_HW_CLKRST_REGION(0x32, 13, 1),// M7DSMULPEN
793 VSF_HW_EN_I2C4 = VSF_HW_CLKRST_REGION(0x32, 11, 1),// M7I2C4EN
794 VSF_HW_EN_I2C4LP = VSF_HW_CLKRST_REGION(0x32, 9, 1),// M7I2C4LPEN
795 VSF_HW_EN_I2C5 = VSF_HW_CLKRST_REGION(0x32, 7, 1),// M7I2C5EN
796 VSF_HW_EN_I2C5LP = VSF_HW_CLKRST_REGION(0x32, 5, 1),// M7I2C5LPEN
797 VSF_HW_EN_I2C6 = VSF_HW_CLKRST_REGION(0x32, 3, 1),// M7I2C6EN
798 VSF_HW_EN_I2C6LP = VSF_HW_CLKRST_REGION(0x32, 1, 1),// M7I2C6LPEN
799#endif
800 // RCC.APB2EN3
801#if defined(CORE_CM4)
802 VSF_HW_EN_USART5 = VSF_HW_CLKRST_REGION(0x33, 30, 1),// M4USART5EN
803 VSF_HW_EN_USART5LP = VSF_HW_CLKRST_REGION(0x33, 28, 1),// M4USART5LPEN
804 VSF_HW_EN_USART6 = VSF_HW_CLKRST_REGION(0x33, 26, 1),// M4USART6EN
805 VSF_HW_EN_USART6LP = VSF_HW_CLKRST_REGION(0x33, 24, 1),// M4USART6LPEN
806 VSF_HW_EN_USART7 = VSF_HW_CLKRST_REGION(0x33, 22, 1),// M4USART7EN
807 VSF_HW_EN_USART7LP = VSF_HW_CLKRST_REGION(0x33, 20, 1),// M4USART7LPEN
808 VSF_HW_EN_USART8 = VSF_HW_CLKRST_REGION(0x33, 18, 1),// M4USART8EN
809 VSF_HW_EN_USART8LP = VSF_HW_CLKRST_REGION(0x33, 16, 1),// M4USART8LPEN
810 VSF_HW_EN_UART13 = VSF_HW_CLKRST_REGION(0x33, 14, 1),// M4UART13EN
811 VSF_HW_EN_UART13LP = VSF_HW_CLKRST_REGION(0x33, 12, 1),// M4UART13LPEN
812 VSF_HW_EN_UART14 = VSF_HW_CLKRST_REGION(0x33, 10, 1),// M4UART14EN
813 VSF_HW_EN_UART14LP = VSF_HW_CLKRST_REGION(0x33, 8, 1),// M4UART14LPEN
814 VSF_HW_EN_UART15 = VSF_HW_CLKRST_REGION(0x33, 6, 1),// M4UART15EN
815 VSF_HW_EN_UART15LP = VSF_HW_CLKRST_REGION(0x33, 4, 1),// M4UART15LPEN
816#elif defined(CORE_CM7)
817 VSF_HW_EN_USART5 = VSF_HW_CLKRST_REGION(0x33, 31, 1),// M7USART5EN
818 VSF_HW_EN_USART5LP = VSF_HW_CLKRST_REGION(0x33, 29, 1),// M7USART5LPEN
819 VSF_HW_EN_USART6 = VSF_HW_CLKRST_REGION(0x33, 27, 1),// M7USART6EN
820 VSF_HW_EN_USART6LP = VSF_HW_CLKRST_REGION(0x33, 25, 1),// M7USART6LPEN
821 VSF_HW_EN_USART7 = VSF_HW_CLKRST_REGION(0x33, 23, 1),// M7USART7EN
822 VSF_HW_EN_USART7LP = VSF_HW_CLKRST_REGION(0x33, 21, 1),// M7USART7LPEN
823 VSF_HW_EN_USART8 = VSF_HW_CLKRST_REGION(0x33, 19, 1),// M7USART8EN
824 VSF_HW_EN_USART8LP = VSF_HW_CLKRST_REGION(0x33, 17, 1),// M7USART8LPEN
825 VSF_HW_EN_UART13 = VSF_HW_CLKRST_REGION(0x33, 15, 1),// M7UART13EN
826 VSF_HW_EN_UART13LP = VSF_HW_CLKRST_REGION(0x33, 13, 1),// M7UART13LPEN
827 VSF_HW_EN_UART14 = VSF_HW_CLKRST_REGION(0x33, 11, 1),// M7UART14EN
828 VSF_HW_EN_UART14LP = VSF_HW_CLKRST_REGION(0x33, 9, 1),// M7UART14LPEN
829 VSF_HW_EN_UART15 = VSF_HW_CLKRST_REGION(0x33, 7, 1),// M7UART15EN
830 VSF_HW_EN_UART15LP = VSF_HW_CLKRST_REGION(0x33, 5, 1),// M7UART15LPEN
831#endif
832 // RCC.APB2EN4
833#if defined(CORE_CM4)
834 VSF_HW_EN_FDCAN3 = VSF_HW_CLKRST_REGION(0x34, 30, 1),// M4FDCAN3EN
835 VSF_HW_EN_FDCAN3LP = VSF_HW_CLKRST_REGION(0x34, 28, 1),// M4FDCAN3LPEN
836 VSF_HW_EN_FDCAN4 = VSF_HW_CLKRST_REGION(0x34, 26, 1),// M4FDCAN4EN
837 VSF_HW_EN_FDCAN4LP = VSF_HW_CLKRST_REGION(0x34, 24, 1),// M4FDCAN4LPEN
838 VSF_HW_EN_FDCAN7 = VSF_HW_CLKRST_REGION(0x34, 22, 1),// M4FDCAN7EN
839 VSF_HW_EN_FDCAN7LP = VSF_HW_CLKRST_REGION(0x34, 20, 1),// M4FDCAN7LPEN
840 VSF_HW_EN_FDCAN8 = VSF_HW_CLKRST_REGION(0x34, 18, 1),// M4FDCAN8EN
841 VSF_HW_EN_FDCAN8LP = VSF_HW_CLKRST_REGION(0x34, 16, 1),// M4FDCAN8LPEN
842#elif defined(CORE_CM7)
843 VSF_HW_EN_FDCAN3 = VSF_HW_CLKRST_REGION(0x34, 31, 1),// M7FDCAN3EN
844 VSF_HW_EN_FDCAN3LP = VSF_HW_CLKRST_REGION(0x34, 29, 1),// M7FDCAN3LPEN
845 VSF_HW_EN_FDCAN4 = VSF_HW_CLKRST_REGION(0x34, 27, 1),// M7FDCAN4EN
846 VSF_HW_EN_FDCAN4LP = VSF_HW_CLKRST_REGION(0x34, 25, 1),// M7FDCAN4LPEN
847 VSF_HW_EN_FDCAN7 = VSF_HW_CLKRST_REGION(0x34, 23, 1),// M7FDCAN7EN
848 VSF_HW_EN_FDCAN7LP = VSF_HW_CLKRST_REGION(0x34, 21, 1),// M7FDCAN7LPEN
849 VSF_HW_EN_FDCAN8 = VSF_HW_CLKRST_REGION(0x34, 19, 1),// M7FDCAN8EN
850 VSF_HW_EN_FDCAN8LP = VSF_HW_CLKRST_REGION(0x34, 17, 1),// M7FDCAN8LPEN
851#endif
852
853 // APB5
854 // RCC.APB5EN1
855#if defined(CORE_CM4)
856 VSF_HW_EN_ATIM3 = VSF_HW_CLKRST_REGION(0x3F, 30, 1),// M4ATIM3EN
857 VSF_HW_EN_ATIM3LP = VSF_HW_CLKRST_REGION(0x3F, 28, 1),// M4ATIM3LPEN
858 VSF_HW_EN_ATIM4 = VSF_HW_CLKRST_REGION(0x3F, 26, 1),// M4ATIM4EN
859 VSF_HW_EN_ATIM4LP = VSF_HW_CLKRST_REGION(0x3F, 24, 1),// M4ATIM4LPEN
860 VSF_HW_EN_AFEC = VSF_HW_CLKRST_REGION(0x3F, 22, 1),// M4AFECEN
861 VSF_HW_EN_AFECLP = VSF_HW_CLKRST_REGION(0x3F, 20, 1),// M4AFECLPEN
862 VSF_HW_EN_SPI4 = VSF_HW_CLKRST_REGION(0x3F, 14, 1),// M4SPI4EN
863 VSF_HW_EN_SPI4LP = VSF_HW_CLKRST_REGION(0x3F, 12, 1),// M4SPI4LPEN
864 VSF_HW_EN_SPI5 = VSF_HW_CLKRST_REGION(0x3F, 10, 1),// M4SPI5EN
865 VSF_HW_EN_SPI5LP = VSF_HW_CLKRST_REGION(0x3F, 8, 1),// M4SPI5LPEN
866 VSF_HW_EN_SPI6 = VSF_HW_CLKRST_REGION(0x3F, 6, 1),// M4SPI6EN
867 VSF_HW_EN_SPI6LP = VSF_HW_CLKRST_REGION(0x3F, 4, 1),// M4SPI6LPEN
868 VSF_HW_EN_SPI7 = VSF_HW_CLKRST_REGION(0x3F, 2, 1),// M4SPI7EN
869 VSF_HW_EN_SPI7LP = VSF_HW_CLKRST_REGION(0x3F, 0, 1),// M4SPI7LPEN
870#elif defined(CORE_CM7)
871 VSF_HW_EN_ATIM3 = VSF_HW_CLKRST_REGION(0x3F, 30, 1),// M7ATIM3EN
872 VSF_HW_EN_ATIM3LP = VSF_HW_CLKRST_REGION(0x3F, 28, 1),// M7ATIM3LPEN
873 VSF_HW_EN_ATIM4 = VSF_HW_CLKRST_REGION(0x3F, 26, 1),// M7ATIM4EN
874 VSF_HW_EN_ATIM4LP = VSF_HW_CLKRST_REGION(0x3F, 24, 1),// M7ATIM4LPEN
875 VSF_HW_EN_AFEC = VSF_HW_CLKRST_REGION(0x3F, 22, 1),// M7AFECEN
876 VSF_HW_EN_AFECLP = VSF_HW_CLKRST_REGION(0x3F, 20, 1),// M7AFECLPEN
877 VSF_HW_EN_SPI4 = VSF_HW_CLKRST_REGION(0x3F, 14, 1),// M7SPI4EN
878 VSF_HW_EN_SPI4LP = VSF_HW_CLKRST_REGION(0x3F, 12, 1),// M7SPI4LPEN
879 VSF_HW_EN_SPI5 = VSF_HW_CLKRST_REGION(0x3F, 10, 1),// M7SPI5EN
880 VSF_HW_EN_SPI5LP = VSF_HW_CLKRST_REGION(0x3F, 8, 1),// M7SPI5LPEN
881 VSF_HW_EN_SPI6 = VSF_HW_CLKRST_REGION(0x3F, 6, 1),// M7SPI6EN
882 VSF_HW_EN_SPI6LP = VSF_HW_CLKRST_REGION(0x3F, 4, 1),// M7SPI6LPEN
883 VSF_HW_EN_SPI7 = VSF_HW_CLKRST_REGION(0x3F, 2, 1),// M7SPI7EN
884 VSF_HW_EN_SPI7LP = VSF_HW_CLKRST_REGION(0x3F, 0, 1),// M7SPI7LPEN
885#endif
886 // RCC.APB5EN2
887#if defined(CORE_CM4)
888 VSF_HW_EN_I2C7 = VSF_HW_CLKRST_REGION(0x40, 30, 1),// M4I2C7EN
889 VSF_HW_EN_I2C7LP = VSF_HW_CLKRST_REGION(0x40, 28, 1),// M4I2C7LPEN
890 VSF_HW_EN_I2C8 = VSF_HW_CLKRST_REGION(0x40, 26, 1),// M4I2C8EN
891 VSF_HW_EN_I2C8LP = VSF_HW_CLKRST_REGION(0x40, 24, 1),// M4I2C8LPEN
892 VSF_HW_EN_I2C9 = VSF_HW_CLKRST_REGION(0x40, 22, 1),// M4I2C9EN
893 VSF_HW_EN_I2C9LP = VSF_HW_CLKRST_REGION(0x40, 20, 1),// M4I2C9LPEN
894 VSF_HW_EN_I2C10 = VSF_HW_CLKRST_REGION(0x40, 18, 1),// M4I2C10EN
895 VSF_HW_EN_I2C10LP = VSF_HW_CLKRST_REGION(0x40, 16, 1),// M4I2C10LPEN
896
897 VSF_HW_EN_RTCPCLK = VSF_HW_CLKRST_REGION(0x40, 10, 1),// M4RTCPCLKEN
898 VSF_HW_EN_RTCPCLKLP = VSF_HW_CLKRST_REGION(0x40, 8, 1),// M4RTCPCLKLPEN
899#elif defined(CORE_CM7)
900 VSF_HW_EN_I2C7 = VSF_HW_CLKRST_REGION(0x40, 31, 1),// M7I2C7EN
901 VSF_HW_EN_I2C7LP = VSF_HW_CLKRST_REGION(0x40, 29, 1),// M7I2C7LPEN
902 VSF_HW_EN_I2C8 = VSF_HW_CLKRST_REGION(0x40, 27, 1),// M7I2C8EN
903 VSF_HW_EN_I2C8LP = VSF_HW_CLKRST_REGION(0x40, 25, 1),// M7I2C8LPEN
904 VSF_HW_EN_I2C9 = VSF_HW_CLKRST_REGION(0x40, 23, 1),// M7I2C9EN
905 VSF_HW_EN_I2C9LP = VSF_HW_CLKRST_REGION(0x40, 21, 1),// M7I2C9LPEN
906 VSF_HW_EN_I2C10 = VSF_HW_CLKRST_REGION(0x40, 19, 1),// M7I2C10EN
907 VSF_HW_EN_I2C10LP = VSF_HW_CLKRST_REGION(0x40, 17, 1),// M7I2C10LPEN
908
909 VSF_HW_EN_EXTI = VSF_HW_CLKRST_REGION(0x40, 15, 1),// EXTIEN
910 VSF_HW_EN_EXTILP = VSF_HW_CLKRST_REGION(0x40, 13, 1),// EXTILPEN
911 VSF_HW_EN_IWDG1PCLK = VSF_HW_CLKRST_REGION(0x40, 7, 1),// IWDG1PCLKEN
912 VSF_HW_EN_IWDG1PCLKLP = VSF_HW_CLKRST_REGION(0x40, 5, 1),// IWDG1PCLKLPEN
913 VSF_HW_EN_IWDG2PCLK = VSF_HW_CLKRST_REGION(0x40, 3, 1),// IWDG2PCLKEN
914 VSF_HW_EN_IWDG2PCLKLP = VSF_HW_CLKRST_REGION(0x40, 1, 1),// IWDG2PCLKLPEN
915
916 VSF_HW_EN_RTCPCLK = VSF_HW_CLKRST_REGION(0x40, 11, 1),// M7RTCPCLKEN
917 VSF_HW_EN_RTCPCLKLP = VSF_HW_CLKRST_REGION(0x40, 9, 1),// M7RTCPCLKLPEN
918#endif
919
920 // Retention domain
921 // RCC.RDEN1
922#if defined(CORE_CM4)
923 VSF_HW_EN_LPTIM1 = VSF_HW_CLKRST_REGION(0x45, 30, 1),// M4LPTIM1EN
924 VSF_HW_EN_LPTIM1LP = VSF_HW_CLKRST_REGION(0x45, 28, 1),// M4LPTIM1LPEN
925 VSF_HW_EN_LPTIM2 = VSF_HW_CLKRST_REGION(0x45, 26, 1),// M4LPTIM2EN
926 VSF_HW_EN_LPTIM2LP = VSF_HW_CLKRST_REGION(0x45, 24, 1),// M4LPTIM2LPEN
927 VSF_HW_EN_LPTIM3 = VSF_HW_CLKRST_REGION(0x45, 22, 1),// M4LPTIM3EN
928 VSF_HW_EN_LPTIM3LP = VSF_HW_CLKRST_REGION(0x45, 20, 1),// M4LPTIM3LPEN
929 VSF_HW_EN_LPTIM4 = VSF_HW_CLKRST_REGION(0x45, 18, 1),// M4LPTIM4EN
930 VSF_HW_EN_LPTIM4LP = VSF_HW_CLKRST_REGION(0x45, 16, 1),// M4LPTIM4LPEN
931 VSF_HW_EN_LPTIM5 = VSF_HW_CLKRST_REGION(0x45, 14, 1),// M4LPTIM5EN
932 VSF_HW_EN_LPTIM5LP = VSF_HW_CLKRST_REGION(0x45, 12, 1),// M4LPTIM5LPEN
933 VSF_HW_EN_LPUART1 = VSF_HW_CLKRST_REGION(0x45, 10, 1),// M4LPUART1EN
934 VSF_HW_EN_LPUART1LP = VSF_HW_CLKRST_REGION(0x45, 8, 1),// M4LPUART1LPEN
935 VSF_HW_EN_LPUART2 = VSF_HW_CLKRST_REGION(0x45, 6, 1),// M4LPUART2EN
936 VSF_HW_EN_LPUART2LP = VSF_HW_CLKRST_REGION(0x45, 4, 1),// M4LPUART2LPEN
937#elif defined(CORE_CM7)
938 VSF_HW_EN_LPTIM1 = VSF_HW_CLKRST_REGION(0x45, 31, 1),// M7LPTIM1EN
939 VSF_HW_EN_LPTIM1LP = VSF_HW_CLKRST_REGION(0x45, 29, 1),// M7LPTIM1LPEN
940 VSF_HW_EN_LPTIM2 = VSF_HW_CLKRST_REGION(0x45, 27, 1),// M7LPTIM2EN
941 VSF_HW_EN_LPTIM2LP = VSF_HW_CLKRST_REGION(0x45, 25, 1),// M7LPTIM2LPEN
942 VSF_HW_EN_LPTIM3 = VSF_HW_CLKRST_REGION(0x45, 23, 1),// M7LPTIM3EN
943 VSF_HW_EN_LPTIM3LP = VSF_HW_CLKRST_REGION(0x45, 21, 1),// M7LPTIM3LPEN
944 VSF_HW_EN_LPTIM4 = VSF_HW_CLKRST_REGION(0x45, 19, 1),// M7LPTIM4EN
945 VSF_HW_EN_LPTIM4LP = VSF_HW_CLKRST_REGION(0x45, 17, 1),// M7LPTIM4LPEN
946 VSF_HW_EN_LPTIM5 = VSF_HW_CLKRST_REGION(0x45, 15, 1),// M7LPTIM5EN
947 VSF_HW_EN_LPTIM5LP = VSF_HW_CLKRST_REGION(0x45, 13, 1),// M7LPTIM5LPEN
948 VSF_HW_EN_LPUART1 = VSF_HW_CLKRST_REGION(0x45, 11, 1),// M7LPUART1EN
949 VSF_HW_EN_LPUART1LP = VSF_HW_CLKRST_REGION(0x45, 9, 1),// M7LPUART1LPEN
950 VSF_HW_EN_LPUART2 = VSF_HW_CLKRST_REGION(0x45, 7, 1),// M7LPUART2EN
951 VSF_HW_EN_LPUART2LP = VSF_HW_CLKRST_REGION(0x45, 5, 1),// M7LPUART2LPEN
952#endif
953 // RCC.RDEN1
954#if defined(CORE_CM4)
955 VSF_HW_EN_COMP = VSF_HW_CLKRST_REGION(0x46, 30, 1),// M4COMPEN
956 VSF_HW_EN_COMPLP = VSF_HW_CLKRST_REGION(0x46, 28, 1),// M4COMPLPEN
957#elif defined(CORE_CM7)
958 VSF_HW_EN_COMP = VSF_HW_CLKRST_REGION(0x46, 31, 1),// M7COMPEN
959 VSF_HW_EN_COMPLP = VSF_HW_CLKRST_REGION(0x46, 29, 1),// M7COMPLPEN
960#endif
962
966
967/*============================ GLOBAL VARIABLES ==============================*/
968
969extern const vsf_hw_clk_t VSF_HW_CLK_HSE;
970 extern const vsf_hw_clk_t VSF_HW_CLK_HSE_CG;
972extern const vsf_hw_clk_t VSF_HW_CLK_LSE;
973extern const vsf_hw_clk_t VSF_HW_CLK_HSI;
974 extern const vsf_hw_clk_t VSF_HW_CLK_HSI_CG;
976extern const vsf_hw_clk_t VSF_HW_CLK_MSI;
977 extern const vsf_hw_clk_t VSF_HW_CLK_MSI_CG;
979extern const vsf_hw_clk_t VSF_HW_CLK_LSI;
980
981extern const vsf_hw_clk_t VSF_HW_CLK_PLL1;
982 extern const vsf_hw_clk_t VSF_HW_CLK_PLL1A;
983 extern const vsf_hw_clk_t VSF_HW_CLK_PLL1B;
984 extern const vsf_hw_clk_t VSF_HW_CLK_PLL1C;
985extern const vsf_hw_clk_t VSF_HW_CLK_PLL2;
986 extern const vsf_hw_clk_t VSF_HW_CLK_PLL2A;
987 extern const vsf_hw_clk_t VSF_HW_CLK_PLL2B;
988 extern const vsf_hw_clk_t VSF_HW_CLK_PLL2C;
989extern const vsf_hw_clk_t VSF_HW_CLK_PLL3;
990 extern const vsf_hw_clk_t VSF_HW_CLK_PLL3A;
991 extern const vsf_hw_clk_t VSF_HW_CLK_PLL3B;
992 extern const vsf_hw_clk_t VSF_HW_CLK_PLL3C;
994
997
998extern const vsf_hw_clk_t VSF_HW_CLK_SYS;
1000extern const vsf_hw_clk_t VSF_HW_CLK_CPU;
1001extern const vsf_hw_clk_t VSF_HW_CLK_SYSTICK;
1002extern const vsf_hw_clk_t VSF_HW_CLK_AXI;
1003#define VSF_HW_CLK_AHB1 VSF_HW_CLK_SYSBUS
1004#define VSF_HW_CLK_AHB2 VSF_HW_CLK_SYSBUS
1005#define VSF_HW_CLK_AHB5 VSF_HW_CLK_SYSBUS
1006#define VSF_HW_CLK_AHB6 VSF_HW_CLK_AXI
1007#define VSF_HW_CLK_AHB9 VSF_HW_CLK_SYSBUS
1008extern const vsf_hw_clk_t VSF_HW_CLK_APB1;
1009extern const vsf_hw_clk_t VSF_HW_CLK_APB2;
1010extern const vsf_hw_clk_t VSF_HW_CLK_APB5;
1011extern const vsf_hw_clk_t VSF_HW_CLK_APB6;
1012extern const vsf_hw_clk_t VSF_HW_CLK_PERI;
1013
1014extern const vsf_hw_clk_t VSF_HW_CLK_SDRAM;
1015
1016#if VSF_HAL_USE_SDIO == ENABLED
1017# define VSF_HW_CLK_SDMMC1_BUS VSF_HW_CLK_AHB6
1018extern const vsf_hw_clk_t VSF_HW_CLK_SDMMC1;
1019
1020# define VSF_HW_CLK_SDMMC2_BUS VSF_HW_CLK_AHB1
1021extern const vsf_hw_clk_t VSF_HW_CLK_SDMMC2;
1022#endif
1023
1024#if VSF_HAL_USE_USART == ENABLED
1026# define VSF_HW_CLK_USART3_4 VSF_HW_CLK_APB1
1027# define VSF_HW_CLK_USART5_6_7_8 VSF_HW_CLK_APB2
1028# define VSF_HW_CLK_UART9_10_11_12 VSF_HW_CLK_APB1
1029# define VSF_HW_CLK_UART13_14_15 VSF_HW_CLK_APB2
1030
1031# define VSF_HW_CLK_USART1 VSF_HW_CLK_USART1_2
1032# define VSF_HW_CLK_USART2 VSF_HW_CLK_USART1_2
1033# define VSF_HW_CLK_USART3 VSF_HW_CLK_USART3_4
1034# define VSF_HW_CLK_USART4 VSF_HW_CLK_USART3_4
1035# define VSF_HW_CLK_USART5 VSF_HW_CLK_USART5_6_7_8
1036# define VSF_HW_CLK_USART6 VSF_HW_CLK_USART5_6_7_8
1037# define VSF_HW_CLK_USART7 VSF_HW_CLK_USART5_6_7_8
1038# define VSF_HW_CLK_USART8 VSF_HW_CLK_USART5_6_7_8
1039# define VSF_HW_CLK_UART9 VSF_HW_CLK_UART9_10_11_12
1040# define VSF_HW_CLK_UART10 VSF_HW_CLK_UART9_10_11_12
1041# define VSF_HW_CLK_UART11 VSF_HW_CLK_UART9_10_11_12
1042# define VSF_HW_CLK_UART12 VSF_HW_CLK_UART9_10_11_12
1043# define VSF_HW_CLK_UART13 VSF_HW_CLK_UART13_14_15
1044# define VSF_HW_CLK_UART14 VSF_HW_CLK_UART13_14_15
1045# define VSF_HW_CLK_UART15 VSF_HW_CLK_UART13_14_15
1046#endif
1047
1048#if VSF_HAL_USE_SPI == ENABLED
1049# define VSF_HW_CLK_SPI1_2 VSF_HW_CLK_APB2
1050# define VSF_HW_CLK_SPI3 VSF_HW_CLK_APB1
1051# define VSF_HW_CLK_SPI4_5_6_7 VSF_HW_CLK_APB5
1052
1053# define VSF_HW_CLK_SPI1 VSF_HW_CLK_SPI1_2
1054# define VSF_HW_CLK_SPI2 VSF_HW_CLK_SPI1_2
1055# define VSF_HW_CLK_SPI4 VSF_HW_CLK_SPI4_5_6_7
1056# define VSF_HW_CLK_SPI5 VSF_HW_CLK_SPI4_5_6_7
1057# define VSF_HW_CLK_SPI6 VSF_HW_CLK_SPI4_5_6_7
1058# define VSF_HW_CLK_SPI7 VSF_HW_CLK_SPI4_5_6_7
1059#endif
1060
1061#if VSF_HAL_USE_USBD == ENABLED || VSF_HAL_USE_USBH == ENABLED
1062extern const vsf_hw_clk_t VSF_HW_CLK_USBREF;
1063#endif
1064
1065// power
1066
1075
1076extern const vsf_hw_pwr_t VSF_HW_PWR_GPU;
1077extern const vsf_hw_pwr_t VSF_HW_PWR_LCDC;
1078extern const vsf_hw_pwr_t VSF_HW_PWR_JPEG;
1079extern const vsf_hw_pwr_t VSF_HW_PWR_DSI;
1080extern const vsf_hw_pwr_t VSF_HW_PWR_DVP;
1081extern const vsf_hw_pwr_t VSF_HW_PWR_ETH2;
1082extern const vsf_hw_pwr_t VSF_HW_PWR_USB2;
1083extern const vsf_hw_pwr_t VSF_HW_PWR_SDMMC2;
1084extern const vsf_hw_pwr_t VSF_HW_PWR_ETH1;
1085extern const vsf_hw_pwr_t VSF_HW_PWR_USB1;
1086extern const vsf_hw_pwr_t VSF_HW_PWR_SDMMC1;
1087extern const vsf_hw_pwr_t VSF_HW_PWR_FMAC;
1088extern const vsf_hw_pwr_t VSF_HW_PWR_ESC;
1089
1090/*============================ LOCAL VARIABLES ===============================*/
1091/*============================ PROTOTYPES ====================================*/
1092
1095
1096extern void vsf_hw_clkrst_region_set_bit(uint32_t region);
1097extern void vsf_hw_clkrst_region_clear_bit(uint32_t region);
1099
1100extern const vsf_hw_clk_t * vsf_hw_clk_get_src(const vsf_hw_clk_t *clk);
1102extern void vsf_hw_clk_enable(const vsf_hw_clk_t *clk);
1103extern void vsf_hw_clk_disable(const vsf_hw_clk_t *clk);
1104extern bool vsf_hw_clk_is_enabled(const vsf_hw_clk_t *clk);
1105extern bool vsf_hw_clk_is_ready(const vsf_hw_clk_t *clk);
1106extern vsf_err_t vsf_hw_clk_config(const vsf_hw_clk_t *clk, const vsf_hw_clk_t *clksrc, uint16_t prescaler, uint32_t freq_hz);
1107
1125extern vsf_err_t vsf_hw_pll_config(const vsf_hw_clk_t *clk, uint32_t out_freq_hz);
1126
1127// power
1128
1132
1133extern void vsf_hw_power_enable(const vsf_hw_pwr_t *pwr);
1134extern void vsf_hw_power_disable(const vsf_hw_pwr_t *pwr);
1135
1136#endif
1137/* EOF */
vsf_err_t
Definition __type.h:42
vsf_hw_peripheral_rst_t
Definition common.h:58
@ VSF_HW_RST_SPI5
Definition common.h:144
@ VSF_HW_RST_DMA1
Definition common.h:63
@ VSF_HW_RST_SPI4
Definition common.h:145
@ VSF_HW_RST_SPI2
Definition common.h:117
@ VSF_HW_RST_GPIOJ
Definition common.h:92
@ VSF_HW_RST_GPIOA
Definition common.h:100
@ VSF_HW_RST_GPIOG
Definition common.h:94
@ VSF_HW_RST_USART2
Definition common.h:114
@ VSF_HW_RST_GPIOH
Definition common.h:93
@ VSF_HW_RST_I2C2
Definition common.h:109
@ VSF_HW_RST_MDMA
Definition common.h:83
@ VSF_HW_RST_GPIOE
Definition common.h:96
@ VSF_HW_RST_SPI1
Definition common.h:118
@ VSF_HW_RST_GPIOK
Definition common.h:91
@ VSF_HW_RST_GPIOF
Definition common.h:95
@ VSF_HW_RST_GPIOC
Definition common.h:98
@ VSF_HW_RST_I2C1
Definition common.h:110
@ VSF_HW_RST_GPIOB
Definition common.h:99
@ VSF_HW_RST_USART1
Definition common.h:115
@ VSF_HW_RST_CRC
Definition common.h:90
@ VSF_HW_RST_USART5
Definition common.h:155
@ VSF_HW_RST_GPIOD
Definition common.h:97
@ VSF_HW_RST_I2C3
Definition common.h:108
@ VSF_HW_RST_SPI3
Definition common.h:150
#define VSF_HW_CLKRST_REGION(__WORD_OFFSET, __BIT_OFFSET, __BIT_LENGTH)
Definition common.h:32
bool vsf_hw_clk_is_ready(const vsf_hw_clk_t *clk)
Definition driver.c:667
vsf_err_t vsf_hw_clk_config(const vsf_hw_clk_t *clk, const vsf_hw_clk_t *clksrc, uint16_t prescaler, uint32_t freq_hz)
Definition driver.c:675
void vsf_hw_clk_disable(const vsf_hw_clk_t *clk)
Definition driver.c:651
vsf_hw_peripheral_en_t
Definition common.h:172
@ VSF_HW_EN_MDMA
Definition common.h:208
@ VSF_HW_EN_GPIOH
Definition common.h:219
@ VSF_HW_EN_SPI2
Definition common.h:243
@ VSF_HW_EN_SPI1
Definition common.h:244
@ VSF_HW_EN_USART2
Definition common.h:240
@ VSF_HW_EN_SPI4
Definition common.h:271
@ VSF_HW_EN_I2C1
Definition common.h:236
@ VSF_HW_EN_CRC
Definition common.h:215
@ VSF_HW_EN_SPI3
Definition common.h:276
@ VSF_HW_EN_DMA1
Definition common.h:181
@ VSF_HW_EN_USART5
Definition common.h:281
@ VSF_HW_EN_GPIOG
Definition common.h:220
@ VSF_HW_EN_USART1
Definition common.h:241
@ VSF_HW_EN_I2C2
Definition common.h:235
@ VSF_HW_EN_GPIOJ
Definition common.h:218
@ VSF_HW_EN_GPIOK
Definition common.h:217
@ VSF_HW_EN_I2C3
Definition common.h:234
@ VSF_HW_EN_GPIOF
Definition common.h:221
@ VSF_HW_EN_SPI5
Definition common.h:270
bool vsf_hw_clk_is_enabled(const vsf_hw_clk_t *clk)
Definition driver.c:659
void vsf_hw_clk_enable(const vsf_hw_clk_t *clk)
Definition driver.c:640
const vsf_hw_pwr_domain_t VSF_HW_PWR_DOMAIN_SHR1
Definition driver.c:706
const vsf_hw_clk_t VSF_HW_CLK_APB6
Definition driver.c:518
@ VSF_HW_RST_USB1
Definition common.h:105
@ VSF_HW_RST_USART3
Definition common.h:156
@ VSF_HW_RST_SDHOST2
Definition common.h:82
@ VSF_HW_RST_SHRTIM1
Definition common.h:183
@ VSF_HW_RST_DSI
Definition common.h:65
@ VSF_HW_RST_SPI7
Definition common.h:215
@ VSF_HW_RST_OTPC
Definition common.h:62
@ VSF_HW_RST_FDCAN2
Definition common.h:170
@ VSF_HW_RST_I2C8
Definition common.h:218
@ VSF_HW_RST_GPU
Definition common.h:71
@ VSF_HW_RST_BTIM1
Definition common.h:138
@ VSF_HW_RST_DVP2
Definition common.h:68
@ VSF_HW_RST_SDHOST1
Definition common.h:60
@ VSF_HW_RST_ETH2
Definition common.h:89
@ VSF_HW_RST_ADC3
Definition common.h:97
@ VSF_HW_RST_DAC34
Definition common.h:102
@ VSF_HW_RST_GTIMA6
Definition common.h:148
@ VSF_HW_RST_FDCAN1
Definition common.h:169
@ VSF_HW_RST_DVP1
Definition common.h:67
@ VSF_HW_RST_SEMA4
Definition common.h:129
@ VSF_HW_RST_DMAMUX1
Definition common.h:86
@ VSF_HW_RST_UART11
Definition common.h:160
@ VSF_HW_RST_UART15
Definition common.h:201
@ VSF_HW_RST_ECCM1
Definition common.h:61
@ VSF_HW_RST_ECCM3
Definition common.h:126
@ VSF_HW_RST_I2C4
Definition common.h:191
@ VSF_HW_RST_DMA2
Definition common.h:93
@ VSF_HW_RST_COMP
Definition common.h:232
@ VSF_HW_RST_I2S3
Definition common.h:163
@ VSF_HW_RST_USART7
Definition common.h:197
@ VSF_HW_RST_ATIM2
Definition common.h:179
@ VSF_HW_RST_FDCAN3
Definition common.h:203
@ VSF_HW_RST_GTIMB1
Definition common.h:142
@ VSF_HW_RST_SHRTIM2
Definition common.h:184
@ VSF_HW_RST_GTIMA2
Definition common.h:181
@ VSF_HW_RST_USART4
Definition common.h:157
@ VSF_HW_RST_DMAMUX2
Definition common.h:57
@ VSF_HW_RST_GTIMA1
Definition common.h:180
@ VSF_HW_RST_ATIM4
Definition common.h:211
@ VSF_HW_RST_I2C7
Definition common.h:217
@ VSF_HW_RST_UART10
Definition common.h:159
@ VSF_HW_RST_FDCAN7
Definition common.h:205
@ VSF_HW_RST_USB1WRAP
Definition common.h:103
@ VSF_HW_RST_FDCAN8
Definition common.h:206
@ VSF_HW_RST_USB2
Definition common.h:85
@ VSF_HW_RST_GTIMB2
Definition common.h:143
@ VSF_HW_RST_LCD
Definition common.h:66
@ VSF_HW_RST_GPIOI
Definition common.h:123
@ VSF_HW_RST_GTIMB3
Definition common.h:144
@ VSF_HW_RST_I2C9
Definition common.h:219
@ VSF_HW_RST_DMA3
Definition common.h:94
@ VSF_HW_RST_I2C10
Definition common.h:220
@ VSF_HW_RST_GTIMA5
Definition common.h:147
@ VSF_HW_RST_USART8
Definition common.h:198
@ VSF_HW_RST_PWR
Definition common.h:127
@ VSF_HW_RST_FEMCCFG
Definition common.h:75
@ VSF_HW_RST_SDRAM
Definition common.h:77
@ VSF_HW_RST_FDCAN6
Definition common.h:172
@ VSF_HW_RST_UART13
Definition common.h:199
@ VSF_HW_RST_CAHD
Definition common.h:174
@ VSF_HW_RST_I2C5
Definition common.h:192
@ VSF_HW_RST_XSPI2
Definition common.h:74
@ VSF_HW_RST_FEMC
Definition common.h:76
@ VSF_HW_RST_DAC56
Definition common.h:101
@ VSF_HW_RST_ECCM2
Definition common.h:107
@ VSF_HW_RST_SDPU
Definition common.h:109
@ VSF_HW_RST_FDCAN5
Definition common.h:171
@ VSF_HW_RST_DSMU
Definition common.h:190
@ VSF_HW_RST_WWDG1
Definition common.h:69
@ VSF_HW_RST_USB1POR
Definition common.h:104
@ VSF_HW_RST_UART9
Definition common.h:158
@ VSF_HW_RST_I2S1
Definition common.h:186
@ VSF_HW_RST_UART14
Definition common.h:200
@ VSF_HW_RST_DSICFG
Definition common.h:64
@ VSF_HW_RST_JPEGD
Definition common.h:55
@ VSF_HW_RST_CAHI
Definition common.h:173
@ VSF_HW_RST_GTIMA7
Definition common.h:149
@ VSF_HW_RST_DAC12
Definition common.h:151
@ VSF_HW_RST_AFIO
Definition common.h:130
@ VSF_HW_RST_ESC
Definition common.h:134
@ VSF_HW_RST_SDMMC1
Definition common.h:59
@ VSF_HW_RST_I2S2
Definition common.h:187
@ VSF_HW_RST_I2C6
Definition common.h:193
@ VSF_HW_RST_ATIM1
Definition common.h:178
@ VSF_HW_RST_GTIMA3
Definition common.h:182
@ VSF_HW_RST_BTIM4
Definition common.h:141
@ VSF_HW_RST_I2S4
Definition common.h:164
@ VSF_HW_RST_ADC2
Definition common.h:96
@ VSF_HW_RST_FMAC
Definition common.h:110
@ VSF_HW_RST_FDCAN4
Definition common.h:204
@ VSF_HW_RST_WWDG2
Definition common.h:152
@ VSF_HW_RST_ATIM3
Definition common.h:210
@ VSF_HW_RST_XSPI1
Definition common.h:73
@ VSF_HW_RST_UART12
Definition common.h:161
@ VSF_HW_RST_BTIM3
Definition common.h:140
@ VSF_HW_RST_JPEGE
Definition common.h:56
@ VSF_HW_RST_USB2WRAP
Definition common.h:83
@ VSF_HW_RST_BTIM2
Definition common.h:139
@ VSF_HW_RST_GTIMA4
Definition common.h:145
@ VSF_HW_RST_USB2POR
Definition common.h:84
@ VSF_HW_RST_ADC1
Definition common.h:87
@ VSF_HW_RST_ECCMAC
Definition common.h:91
@ VSF_HW_RST_LPUART2
Definition common.h:230
const vsf_hw_clk_t VSF_HW_CLK_HSI_CG
Definition driver.c:164
const vsf_hw_pwr_t VSF_HW_PWR_JPEG
Definition driver.c:723
const vsf_hw_clk_t VSF_HW_CLK_CPU
const vsf_hw_clk_t VSF_HW_CLK_PLL1
Definition driver.c:231
const vsf_hw_pwr_t VSF_HW_PWR_ESC
Definition driver.c:763
const vsf_hw_clk_t VSF_HW_CLK_PLL1A
Definition driver.c:272
const vsf_hw_clk_t VSF_HW_CLK_AXI
Definition driver.c:471
const vsf_hw_clk_t VSF_HW_CLK_APB2
Definition driver.c:496
const vsf_hw_clk_t VSF_HW_CLK_SDMMC1
Definition driver.c:578
const vsf_hw_clk_t VSF_HW_CLK_MSI_CG
Definition driver.c:202
const vsf_hw_pwr_t VSF_HW_PWR_ETH2
Definition driver.c:735
const vsf_hw_pwr_t VSF_HW_PWR_GPU
Definition driver.c:715
const vsf_hw_pwr_domain_t VSF_HW_PWR_DOMAIN_HCS1
Definition driver.c:638
const vsf_hw_clk_t VSF_HW_CLK_HSE_KER_CG
const vsf_hw_pwr_t VSF_HW_PWR_USB1
Definition driver.c:751
const vsf_hw_pwr_t VSF_HW_PWR_SDMMC2
Definition driver.c:743
const vsf_hw_pwr_domain_t VSF_HW_PWR_DOMAIN_GRC
Definition driver.c:660
const vsf_hw_pwr_domain_t VSF_HW_PWR_DOMAIN_HCS2
Definition driver.c:649
const vsf_hw_clk_t VSF_HW_CLK_PERI
Definition driver.c:533
const vsf_hw_clk_t VSF_HW_CLK_PLL3
Definition driver.c:251
const vsf_hw_clk_t VSF_HW_CLK_PLL2C
Definition driver.c:323
const vsf_hw_clk_t VSF_HW_CLK_SHRPLL
Definition driver.c:261
const vsf_hw_pwr_t VSF_HW_PWR_LCDC
Definition driver.c:719
const vsf_hw_pwr_domain_t VSF_HW_PWR_DOMAIN_SHRA
Definition driver.c:690
const vsf_hw_pwr_t VSF_HW_PWR_ETH1
Definition driver.c:747
const vsf_hw_clk_t VSF_HW_CLK_USBREF
Definition driver.c:621
vsf_err_t vsf_hw_pll_config(const vsf_hw_clk_t *clk, uint32_t out_freq_hz)
configure frequency range of pll input/output clocks
Definition driver.c:1119
bool vsf_hw_power_domain_is_ready(const vsf_hw_pwr_domain_t *domain)
Definition driver.c:1208
const vsf_hw_clk_t VSF_HW_CLK_AXIHYP
Definition driver.c:456
const vsf_hw_clk_t VSF_HW_CLK_PLL2B
Definition driver.c:313
const vsf_hw_clk_t VSF_HW_CLK_PLL1C
Definition driver.c:292
const vsf_hw_clk_t VSF_HW_CLK_PLL3B
Definition driver.c:344
const vsf_hw_pwr_t VSF_HW_PWR_SDMMC1
Definition driver.c:755
const vsf_hw_clk_t VSF_HW_CLK_SDRAM
Definition driver.c:555
const vsf_hw_clk_t VSF_HW_CLK_MSI_KER_CG
Definition driver.c:209
const vsf_hw_clk_t VSF_HW_CLK_APB5
Definition driver.c:507
const vsf_hw_pwr_domain_t VSF_HW_PWR_DOMAIN_SHR2
Definition driver.c:698
const vsf_hw_pwr_t VSF_HW_PWR_DSI
Definition driver.c:727
const vsf_hw_clk_t VSF_HW_CLK_PLL1B
Definition driver.c:282
const vsf_hw_clk_t VSF_HW_CLK_PLL2A
Definition driver.c:303
const vsf_hw_pwr_t VSF_HW_PWR_USB2
Definition driver.c:739
const vsf_hw_pwr_t VSF_HW_PWR_FMAC
Definition driver.c:759
const vsf_hw_clk_t VSF_HW_CLK_PLL3A
Definition driver.c:334
const vsf_hw_clk_t VSF_HW_CLK_HSE_CG
const vsf_hw_clk_t VSF_HW_CLK_HSI_KER_CG
Definition driver.c:171
const vsf_hw_clk_t VSF_HW_CLK_SYSBUS
Definition driver.c:381
void vsf_hw_power_domain_disable(const vsf_hw_pwr_domain_t *domain)
Definition driver.c:1199
const vsf_hw_clk_t VSF_HW_CLK_SYSTICK
const vsf_hw_clk_t VSF_HW_CLK_APB1
Definition driver.c:485
const vsf_hw_clk_t VSF_HW_CLK_SDMMC2
Definition driver.c:589
const vsf_hw_clk_t VSF_HW_CLK_MSI
Definition driver.c:178
const vsf_hw_clk_t VSF_HW_CLK_PLL2
Definition driver.c:241
const vsf_hw_pwr_domain_t VSF_HW_PWR_DOMAIN_ESC
Definition driver.c:673
const vsf_hw_pwr_domain_t VSF_HW_PWR_DOMAIN_MDMA
Definition driver.c:682
const vsf_hw_pwr_t VSF_HW_PWR_DVP
Definition driver.c:731
const vsf_hw_clk_t VSF_HW_CLK_PLL3C
Definition driver.c:354
const vsf_hw_clk_t VSF_HW_CLK_USART1_2
Definition driver.c:602
void vsf_hw_power_domain_enable(const vsf_hw_pwr_domain_t *domain)
Definition driver.c:1189
const vsf_hw_clk_t VSF_HW_CLK_AXISYS
Definition driver.c:393
@ VSF_HW_RST_LPTIM2
Definition common.h:154
@ VSF_HW_RST_LPTIM3
Definition common.h:153
@ VSF_HW_RST_LPTIM1
Definition common.h:118
@ VSF_HW_RST_ETH1
Definition common.h:60
@ VSF_HW_RST_SDMMC2
Definition common.h:66
@ VSF_HW_RST_SPI6
Definition common.h:155
@ VSF_HW_RST_LPTIM4
Definition common.h:152
@ VSF_HW_RST_LPUART1
Definition common.h:156
@ VSF_HW_RST_CORDIC
Definition common.h:65
@ VSF_HW_RST_LPTIM5
Definition common.h:151
#define vsf_hw_power_enable
Definition common.h:47
@ VSF_HW_EN_LPTIM3
Definition common.h:271
@ VSF_HW_EN_LPTIM2
Definition common.h:272
@ VSF_HW_EN_ETH1RX
Definition common.h:171
@ VSF_HW_EN_ETH1MAC
Definition common.h:173
@ VSF_HW_EN_USART3
Definition common.h:229
@ VSF_HW_EN_XSPI1
Definition common.h:213
@ VSF_HW_EN_CORDIC
Definition common.h:180
@ VSF_HW_EN_LPTIM1
Definition common.h:235
@ VSF_HW_EN_ETH1TX
Definition common.h:172
@ VSF_HW_EN_LPTIM5
Definition common.h:269
@ VSF_HW_EN_LPTIM4
Definition common.h:270
@ VSF_HW_EN_SPI6
Definition common.h:273
@ VSF_HW_EN_SDMMC2
Definition common.h:181
@ VSF_HW_EN_LPUART1
Definition common.h:274
@ VSF_HW_EN_XSPI2
Definition common.h:211
#define vsf_hw_power_disable
Definition common.h:48
const vsf_hw_clk_t VSF_HW_CLK_SYS
Definition driver.c:326
@ VSF_HW_RST_USART6
Definition common.h:55
const vsf_hw_clk_t VSF_HW_CLK_LSI
Definition driver.c:216
const vsf_hw_clk_t VSF_HW_CLK_LSE
Definition driver.c:195
const vsf_hw_clk_t VSF_HW_CLK_HSI
Definition driver.c:138
uint32_t vsf_hw_clk_get_freq_hz(const vsf_hw_clk_t *clk)
Definition driver.c:594
@ VSF_HW_EN_USART6
Definition common.h:81
@ VSF_HW_EN_GPIOE
Definition common.h:68
@ VSF_HW_EN_GPIOB
Definition common.h:65
@ VSF_HW_EN_GPIOC
Definition common.h:66
@ VSF_HW_EN_GPIOD
Definition common.h:67
@ VSF_HW_EN_GPIOA
Definition common.h:64
@ VSF_HW_EN_GPIOI
Definition common.h:72
@ VSF_HW_EN_SDMMC1
Definition common.h:85
uint_fast8_t vsf_hw_clkrst_region_get(uint32_t region)
Definition driver.c:498
const vsf_hw_clk_t VSF_HW_CLK_HSE
Definition driver.c:180
void vsf_hw_clkrst_region_set(uint32_t region, uint_fast8_t value)
Definition driver.c:485
const vsf_hw_clk_t * vsf_hw_clk_get_src(const vsf_hw_clk_t *clk)
Definition driver.c:556
vsf_hw_peripheral_rst_t
Definition common.h:76
void vsf_hw_clkrst_region_clear_bit(uint32_t region)
Definition driver.c:518
void vsf_hw_clkrst_region_set_bit(uint32_t region)
Definition driver.c:506
vsf_hw_peripheral_en_t
Definition common.h:131
uint_fast8_t vsf_hw_clkrst_region_get_bit(uint32_t region)
Definition driver.c:530
unsigned short uint16_t
Definition stdint.h:7
unsigned char uint_fast8_t
Definition stdint.h:23
unsigned uint32_t
Definition stdint.h:9
Definition driver.c:80
Definition driver.c:71
Definition driver.c:81
const vsf_hw_pwr_domain_t * domain
Definition driver.c:82
vk_av_control_value_t value
Definition vsf_audio.h:171
Generated from commit: vsfteam/vsf@cfd571b