HPM SDK
HPMicro Software Development Kit
hpm_soc.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2021-2024 HPMicro
3  *
4  * SPDX-License-Identifier: BSD-3-Clause
5  *
6  */
7 
8 
9 #ifndef HPM_SOC_H
10 #define HPM_SOC_H
11 
12 
13 /* List of external IRQs */
14 #define IRQn_GPIO0_A 1 /* GPIO0_A IRQ */
15 #define IRQn_GPIO0_B 2 /* GPIO0_B IRQ */
16 #define IRQn_GPIO0_C 3 /* GPIO0_C IRQ */
17 #define IRQn_GPIO0_D 4 /* GPIO0_D IRQ */
18 #define IRQn_GPIO0_E 5 /* GPIO0_E IRQ */
19 #define IRQn_GPIO0_F 6 /* GPIO0_F IRQ */
20 #define IRQn_GPIO0_X 7 /* GPIO0_X IRQ */
21 #define IRQn_GPIO0_Y 8 /* GPIO0_Y IRQ */
22 #define IRQn_GPIO0_Z 9 /* GPIO0_Z IRQ */
23 #define IRQn_MCAN0 10 /* MCAN0 IRQ */
24 #define IRQn_MCAN1 11 /* MCAN1 IRQ */
25 #define IRQn_MCAN2 12 /* MCAN2 IRQ */
26 #define IRQn_MCAN3 13 /* MCAN3 IRQ */
27 #define IRQn_MCAN4 14 /* MCAN4 IRQ */
28 #define IRQn_MCAN5 15 /* MCAN5 IRQ */
29 #define IRQn_MCAN6 16 /* MCAN6 IRQ */
30 #define IRQn_MCAN7 17 /* MCAN7 IRQ */
31 #define IRQn_PTPC 18 /* PTPC IRQ */
32 #define IRQn_UART0 27 /* UART0 IRQ */
33 #define IRQn_UART1 28 /* UART1 IRQ */
34 #define IRQn_UART2 29 /* UART2 IRQ */
35 #define IRQn_UART3 30 /* UART3 IRQ */
36 #define IRQn_UART4 31 /* UART4 IRQ */
37 #define IRQn_UART5 32 /* UART5 IRQ */
38 #define IRQn_UART6 33 /* UART6 IRQ */
39 #define IRQn_UART7 34 /* UART7 IRQ */
40 #define IRQn_I2C0 35 /* I2C0 IRQ */
41 #define IRQn_I2C1 36 /* I2C1 IRQ */
42 #define IRQn_I2C2 37 /* I2C2 IRQ */
43 #define IRQn_I2C3 38 /* I2C3 IRQ */
44 #define IRQn_SPI0 39 /* SPI0 IRQ */
45 #define IRQn_SPI1 40 /* SPI1 IRQ */
46 #define IRQn_SPI2 41 /* SPI2 IRQ */
47 #define IRQn_SPI3 42 /* SPI3 IRQ */
48 #define IRQn_GPTMR0 43 /* GPTMR0 IRQ */
49 #define IRQn_GPTMR1 44 /* GPTMR1 IRQ */
50 #define IRQn_GPTMR2 45 /* GPTMR2 IRQ */
51 #define IRQn_GPTMR3 46 /* GPTMR3 IRQ */
52 #define IRQn_GPTMR4 47 /* GPTMR4 IRQ */
53 #define IRQn_GPTMR5 48 /* GPTMR5 IRQ */
54 #define IRQn_GPTMR6 49 /* GPTMR6 IRQ */
55 #define IRQn_GPTMR7 50 /* GPTMR7 IRQ */
56 #define IRQn_EWDG0 51 /* EWDG0 IRQ */
57 #define IRQn_EWDG1 52 /* EWDG1 IRQ */
58 #define IRQn_MBX0A 53 /* MBX0A IRQ */
59 #define IRQn_MBX0B 54 /* MBX0B IRQ */
60 #define IRQn_MBX1A 55 /* MBX1A IRQ */
61 #define IRQn_MBX1B 56 /* MBX1B IRQ */
62 #define IRQn_RNG 57 /* RNG IRQ */
63 #define IRQn_HDMA 58 /* HDMA IRQ */
64 #define IRQn_ADC0 59 /* ADC0 IRQ */
65 #define IRQn_ADC1 60 /* ADC1 IRQ */
66 #define IRQn_SDM 61 /* SDM IRQ */
67 #define IRQn_OPAMP 62 /* OPAMP IRQ */
68 #define IRQn_I2S0 63 /* I2S0 IRQ */
69 #define IRQn_I2S1 64 /* I2S1 IRQ */
70 #define IRQn_I2S2 65 /* I2S2 IRQ */
71 #define IRQn_I2S3 66 /* I2S3 IRQ */
72 #define IRQn_DAO 67 /* DAO IRQ */
73 #define IRQn_PDM 68 /* PDM IRQ */
74 #define IRQn_SMIX_DMA 69 /* SMIX_DMA IRQ */
75 #define IRQn_SMIX_ASRC 70 /* SMIX_ASRC IRQ */
76 #define IRQn_GWCK0_FUNC 77 /* GWCK0_FUNC IRQ */
77 #define IRQn_GWCK0_ERR 78 /* GWCK0_ERR IRQ */
78 #define IRQn_GWCK1_FUNC 79 /* GWCK1_FUNC IRQ */
79 #define IRQn_GWCK1_ERR 80 /* GWCK1_ERR IRQ */
80 #define IRQn_ENET0 92 /* ENET0 IRQ */
81 #define IRQn_NTMR0 93 /* NTMR0 IRQ */
82 #define IRQn_USB0 94 /* USB0 IRQ */
83 #define IRQn_SDXC0 95 /* SDXC0 IRQ */
84 #define IRQn_SDXC1 96 /* SDXC1 IRQ */
85 #define IRQn_SDP 97 /* SDP IRQ */
86 #define IRQn_XPI0 98 /* XPI0 IRQ */
87 #define IRQn_XDMA 99 /* XDMA IRQ */
88 #define IRQn_DDR 100 /* DDR IRQ */
89 #define IRQn_FFA 101 /* FFA IRQ */
90 #define IRQn_PSEC 102 /* PSEC IRQ */
91 #define IRQn_TSNS 103 /* TSNS IRQ */
92 #define IRQn_VAD 104 /* VAD IRQ */
93 #define IRQn_PGPIO 105 /* PGPIO IRQ */
94 #define IRQn_PWDG 106 /* PWDG IRQ */
95 #define IRQn_PTMR 107 /* PTMR IRQ */
96 #define IRQn_PUART 108 /* PUART IRQ */
97 #define IRQn_FUSE 109 /* FUSE IRQ */
98 #define IRQn_SECMON 110 /* SECMON IRQ */
99 #define IRQn_RTC 111 /* RTC IRQ */
100 #define IRQn_BGPIO 112 /* BGPIO IRQ */
101 #define IRQn_BVIO 113 /* BVIO IRQ */
102 #define IRQn_BROWNOUT 114 /* BROWNOUT IRQ */
103 #define IRQn_SYSCTL 115 /* SYSCTL IRQ */
104 #define IRQn_DEBUG0 116 /* DEBUG0 IRQ */
105 #define IRQn_DEBUG1 117 /* DEBUG1 IRQ */
106 
107 #include "hpm_common.h"
108 
109 #include "hpm_gpio_regs.h"
110 /* Address of GPIO instances */
111 /* FGPIO base address */
112 #define HPM_FGPIO_BASE (0xC0000UL)
113 /* FGPIO base pointer */
114 #define HPM_FGPIO ((GPIO_Type *) HPM_FGPIO_BASE)
115 /* GPIO0 base address */
116 #define HPM_GPIO0_BASE (0xF00D0000UL)
117 /* GPIO0 base pointer */
118 #define HPM_GPIO0 ((GPIO_Type *) HPM_GPIO0_BASE)
119 /* PGPIO base address */
120 #define HPM_PGPIO_BASE (0xF411C000UL)
121 /* PGPIO base pointer */
122 #define HPM_PGPIO ((GPIO_Type *) HPM_PGPIO_BASE)
123 /* BGPIO base address */
124 #define HPM_BGPIO_BASE (0xF4214000UL)
125 /* BGPIO base pointer */
126 #define HPM_BGPIO ((GPIO_Type *) HPM_BGPIO_BASE)
127 
128 /* Address of DM instances */
129 /* DM base address */
130 #define HPM_DM_BASE (0x30000000UL)
131 
132 #include "hpm_plic_regs.h"
133 /* Address of PLIC instances */
134 /* PLIC base address */
135 #define HPM_PLIC_BASE (0xE4000000UL)
136 /* PLIC base pointer */
137 #define HPM_PLIC ((PLIC_Type *) HPM_PLIC_BASE)
138 
139 #include "hpm_mchtmr_regs.h"
140 /* Address of MCHTMR instances */
141 /* MCHTMR base address */
142 #define HPM_MCHTMR_BASE (0xE6000000UL)
143 /* MCHTMR base pointer */
144 #define HPM_MCHTMR ((MCHTMR_Type *) HPM_MCHTMR_BASE)
145 
146 #include "hpm_plic_sw_regs.h"
147 /* Address of PLICSW instances */
148 /* PLICSW base address */
149 #define HPM_PLICSW_BASE (0xE6400000UL)
150 /* PLICSW base pointer */
151 #define HPM_PLICSW ((PLIC_SW_Type *) HPM_PLICSW_BASE)
152 
153 #include "hpm_crc_regs.h"
154 /* Address of CRC instances */
155 /* CRC base address */
156 #define HPM_CRC_BASE (0xF000C000UL)
157 /* CRC base pointer */
158 #define HPM_CRC ((CRC_Type *) HPM_CRC_BASE)
159 
160 #include "hpm_uart_regs.h"
161 /* Address of UART instances */
162 /* UART0 base address */
163 #define HPM_UART0_BASE (0xF0040000UL)
164 /* UART0 base pointer */
165 #define HPM_UART0 ((UART_Type *) HPM_UART0_BASE)
166 /* UART1 base address */
167 #define HPM_UART1_BASE (0xF0044000UL)
168 /* UART1 base pointer */
169 #define HPM_UART1 ((UART_Type *) HPM_UART1_BASE)
170 /* UART2 base address */
171 #define HPM_UART2_BASE (0xF0048000UL)
172 /* UART2 base pointer */
173 #define HPM_UART2 ((UART_Type *) HPM_UART2_BASE)
174 /* UART3 base address */
175 #define HPM_UART3_BASE (0xF004C000UL)
176 /* UART3 base pointer */
177 #define HPM_UART3 ((UART_Type *) HPM_UART3_BASE)
178 /* UART4 base address */
179 #define HPM_UART4_BASE (0xF0050000UL)
180 /* UART4 base pointer */
181 #define HPM_UART4 ((UART_Type *) HPM_UART4_BASE)
182 /* UART5 base address */
183 #define HPM_UART5_BASE (0xF0054000UL)
184 /* UART5 base pointer */
185 #define HPM_UART5 ((UART_Type *) HPM_UART5_BASE)
186 /* UART6 base address */
187 #define HPM_UART6_BASE (0xF0058000UL)
188 /* UART6 base pointer */
189 #define HPM_UART6 ((UART_Type *) HPM_UART6_BASE)
190 /* UART7 base address */
191 #define HPM_UART7_BASE (0xF005C000UL)
192 /* UART7 base pointer */
193 #define HPM_UART7 ((UART_Type *) HPM_UART7_BASE)
194 /* PUART base address */
195 #define HPM_PUART_BASE (0xF4124000UL)
196 /* PUART base pointer */
197 #define HPM_PUART ((UART_Type *) HPM_PUART_BASE)
198 
199 #include "hpm_i2c_regs.h"
200 /* Address of I2C instances */
201 /* I2C0 base address */
202 #define HPM_I2C0_BASE (0xF0060000UL)
203 /* I2C0 base pointer */
204 #define HPM_I2C0 ((I2C_Type *) HPM_I2C0_BASE)
205 /* I2C1 base address */
206 #define HPM_I2C1_BASE (0xF0064000UL)
207 /* I2C1 base pointer */
208 #define HPM_I2C1 ((I2C_Type *) HPM_I2C1_BASE)
209 /* I2C2 base address */
210 #define HPM_I2C2_BASE (0xF0068000UL)
211 /* I2C2 base pointer */
212 #define HPM_I2C2 ((I2C_Type *) HPM_I2C2_BASE)
213 /* I2C3 base address */
214 #define HPM_I2C3_BASE (0xF006C000UL)
215 /* I2C3 base pointer */
216 #define HPM_I2C3 ((I2C_Type *) HPM_I2C3_BASE)
217 
218 #include "hpm_spi_regs.h"
219 /* Address of SPI instances */
220 /* SPI0 base address */
221 #define HPM_SPI0_BASE (0xF0070000UL)
222 /* SPI0 base pointer */
223 #define HPM_SPI0 ((SPI_Type *) HPM_SPI0_BASE)
224 /* SPI1 base address */
225 #define HPM_SPI1_BASE (0xF0074000UL)
226 /* SPI1 base pointer */
227 #define HPM_SPI1 ((SPI_Type *) HPM_SPI1_BASE)
228 /* SPI2 base address */
229 #define HPM_SPI2_BASE (0xF0078000UL)
230 /* SPI2 base pointer */
231 #define HPM_SPI2 ((SPI_Type *) HPM_SPI2_BASE)
232 /* SPI3 base address */
233 #define HPM_SPI3_BASE (0xF007C000UL)
234 /* SPI3 base pointer */
235 #define HPM_SPI3 ((SPI_Type *) HPM_SPI3_BASE)
236 
237 #include "hpm_gptmr_regs.h"
238 /* Address of TMR instances */
239 /* GPTMR0 base address */
240 #define HPM_GPTMR0_BASE (0xF0080000UL)
241 /* GPTMR0 base pointer */
242 #define HPM_GPTMR0 ((GPTMR_Type *) HPM_GPTMR0_BASE)
243 /* GPTMR1 base address */
244 #define HPM_GPTMR1_BASE (0xF0084000UL)
245 /* GPTMR1 base pointer */
246 #define HPM_GPTMR1 ((GPTMR_Type *) HPM_GPTMR1_BASE)
247 /* GPTMR2 base address */
248 #define HPM_GPTMR2_BASE (0xF0088000UL)
249 /* GPTMR2 base pointer */
250 #define HPM_GPTMR2 ((GPTMR_Type *) HPM_GPTMR2_BASE)
251 /* GPTMR3 base address */
252 #define HPM_GPTMR3_BASE (0xF008C000UL)
253 /* GPTMR3 base pointer */
254 #define HPM_GPTMR3 ((GPTMR_Type *) HPM_GPTMR3_BASE)
255 /* GPTMR4 base address */
256 #define HPM_GPTMR4_BASE (0xF0090000UL)
257 /* GPTMR4 base pointer */
258 #define HPM_GPTMR4 ((GPTMR_Type *) HPM_GPTMR4_BASE)
259 /* GPTMR5 base address */
260 #define HPM_GPTMR5_BASE (0xF0094000UL)
261 /* GPTMR5 base pointer */
262 #define HPM_GPTMR5 ((GPTMR_Type *) HPM_GPTMR5_BASE)
263 /* GPTMR6 base address */
264 #define HPM_GPTMR6_BASE (0xF0098000UL)
265 /* GPTMR6 base pointer */
266 #define HPM_GPTMR6 ((GPTMR_Type *) HPM_GPTMR6_BASE)
267 /* GPTMR7 base address */
268 #define HPM_GPTMR7_BASE (0xF009C000UL)
269 /* GPTMR7 base pointer */
270 #define HPM_GPTMR7 ((GPTMR_Type *) HPM_GPTMR7_BASE)
271 /* NTMR0 base address */
272 #define HPM_NTMR0_BASE (0xF1110000UL)
273 /* NTMR0 base pointer */
274 #define HPM_NTMR0 ((GPTMR_Type *) HPM_NTMR0_BASE)
275 /* PTMR base address */
276 #define HPM_PTMR_BASE (0xF4120000UL)
277 /* PTMR base pointer */
278 #define HPM_PTMR ((GPTMR_Type *) HPM_PTMR_BASE)
279 
280 #include "hpm_mbx_regs.h"
281 /* Address of MBX instances */
282 /* MBX0A base address */
283 #define HPM_MBX0A_BASE (0xF00A0000UL)
284 /* MBX0A base pointer */
285 #define HPM_MBX0A ((MBX_Type *) HPM_MBX0A_BASE)
286 /* MBX0B base address */
287 #define HPM_MBX0B_BASE (0xF00A4000UL)
288 /* MBX0B base pointer */
289 #define HPM_MBX0B ((MBX_Type *) HPM_MBX0B_BASE)
290 /* MBX1A base address */
291 #define HPM_MBX1A_BASE (0xF00A8000UL)
292 /* MBX1A base pointer */
293 #define HPM_MBX1A ((MBX_Type *) HPM_MBX1A_BASE)
294 /* MBX1B base address */
295 #define HPM_MBX1B_BASE (0xF00AC000UL)
296 /* MBX1B base pointer */
297 #define HPM_MBX1B ((MBX_Type *) HPM_MBX1B_BASE)
298 
299 #include "hpm_ewdg_regs.h"
300 /* Address of EWDG instances */
301 /* EWDG0 base address */
302 #define HPM_EWDG0_BASE (0xF00B0000UL)
303 /* EWDG0 base pointer */
304 #define HPM_EWDG0 ((EWDG_Type *) HPM_EWDG0_BASE)
305 /* EWDG1 base address */
306 #define HPM_EWDG1_BASE (0xF00B4000UL)
307 /* EWDG1 base pointer */
308 #define HPM_EWDG1 ((EWDG_Type *) HPM_EWDG1_BASE)
309 /* PEWDG base address */
310 #define HPM_PEWDG_BASE (0xF4128000UL)
311 /* PEWDG base pointer */
312 #define HPM_PEWDG ((EWDG_Type *) HPM_PEWDG_BASE)
313 
314 #include "hpm_dmamux_regs.h"
315 /* Address of DMAMUX instances */
316 /* DMAMUX base address */
317 #define HPM_DMAMUX_BASE (0xF00C4000UL)
318 /* DMAMUX base pointer */
319 #define HPM_DMAMUX ((DMAMUX_Type *) HPM_DMAMUX_BASE)
320 
321 #include "hpm_dmav2_regs.h"
322 /* Address of DMAV2 instances */
323 /* HDMA base address */
324 #define HPM_HDMA_BASE (0xF00C8000UL)
325 /* HDMA base pointer */
326 #define HPM_HDMA ((DMAV2_Type *) HPM_HDMA_BASE)
327 /* XDMA base address */
328 #define HPM_XDMA_BASE (0xF3008000UL)
329 /* XDMA base pointer */
330 #define HPM_XDMA ((DMAV2_Type *) HPM_XDMA_BASE)
331 
332 #include "hpm_gpiom_regs.h"
333 /* Address of GPIOM instances */
334 /* GPIOM base address */
335 #define HPM_GPIOM_BASE (0xF00D8000UL)
336 /* GPIOM base pointer */
337 #define HPM_GPIOM ((GPIOM_Type *) HPM_GPIOM_BASE)
338 
339 #include "hpm_adc16_regs.h"
340 /* Address of ADC16 instances */
341 /* ADC0 base address */
342 #define HPM_ADC0_BASE (0xF00E0000UL)
343 /* ADC0 base pointer */
344 #define HPM_ADC0 ((ADC16_Type *) HPM_ADC0_BASE)
345 
346 #include "hpm_i2s_regs.h"
347 /* Address of I2S instances */
348 /* I2S0 base address */
349 #define HPM_I2S0_BASE (0xF0200000UL)
350 /* I2S0 base pointer */
351 #define HPM_I2S0 ((I2S_Type *) HPM_I2S0_BASE)
352 /* I2S1 base address */
353 #define HPM_I2S1_BASE (0xF0204000UL)
354 /* I2S1 base pointer */
355 #define HPM_I2S1 ((I2S_Type *) HPM_I2S1_BASE)
356 /* I2S2 base address */
357 #define HPM_I2S2_BASE (0xF0208000UL)
358 /* I2S2 base pointer */
359 #define HPM_I2S2 ((I2S_Type *) HPM_I2S2_BASE)
360 /* I2S3 base address */
361 #define HPM_I2S3_BASE (0xF020C000UL)
362 /* I2S3 base pointer */
363 #define HPM_I2S3 ((I2S_Type *) HPM_I2S3_BASE)
364 
365 #include "hpm_dao_regs.h"
366 /* Address of DAO instances */
367 /* DAO base address */
368 #define HPM_DAO_BASE (0xF0210000UL)
369 /* DAO base pointer */
370 #define HPM_DAO ((DAO_Type *) HPM_DAO_BASE)
371 
372 #include "hpm_pdm_regs.h"
373 /* Address of PDM instances */
374 /* PDM base address */
375 #define HPM_PDM_BASE (0xF0214000UL)
376 /* PDM base pointer */
377 #define HPM_PDM ((PDM_Type *) HPM_PDM_BASE)
378 
379 #include "hpm_smix_regs.h"
380 /* Address of SMIX instances */
381 /* SMIX base address */
382 #define HPM_SMIX_BASE (0xF0218000UL)
383 /* SMIX base pointer */
384 #define HPM_SMIX ((SMIX_Type *) HPM_SMIX_BASE)
385 
386 #include "hpm_mcan_regs.h"
387 /* Address of MCAN instances */
388 /* MCAN0 base address */
389 #define HPM_MCAN0_BASE (0xF0280000UL)
390 /* MCAN0 base pointer */
391 #define HPM_MCAN0 ((MCAN_Type *) HPM_MCAN0_BASE)
392 /* MCAN1 base address */
393 #define HPM_MCAN1_BASE (0xF0284000UL)
394 /* MCAN1 base pointer */
395 #define HPM_MCAN1 ((MCAN_Type *) HPM_MCAN1_BASE)
396 /* MCAN2 base address */
397 #define HPM_MCAN2_BASE (0xF0288000UL)
398 /* MCAN2 base pointer */
399 #define HPM_MCAN2 ((MCAN_Type *) HPM_MCAN2_BASE)
400 /* MCAN3 base address */
401 #define HPM_MCAN3_BASE (0xF028C000UL)
402 /* MCAN3 base pointer */
403 #define HPM_MCAN3 ((MCAN_Type *) HPM_MCAN3_BASE)
404 /* MCAN4 base address */
405 #define HPM_MCAN4_BASE (0xF0290000UL)
406 /* MCAN4 base pointer */
407 #define HPM_MCAN4 ((MCAN_Type *) HPM_MCAN4_BASE)
408 /* MCAN5 base address */
409 #define HPM_MCAN5_BASE (0xF0294000UL)
410 /* MCAN5 base pointer */
411 #define HPM_MCAN5 ((MCAN_Type *) HPM_MCAN5_BASE)
412 /* MCAN6 base address */
413 #define HPM_MCAN6_BASE (0xF0298000UL)
414 /* MCAN6 base pointer */
415 #define HPM_MCAN6 ((MCAN_Type *) HPM_MCAN6_BASE)
416 /* MCAN7 base address */
417 #define HPM_MCAN7_BASE (0xF029C000UL)
418 /* MCAN7 base pointer */
419 #define HPM_MCAN7 ((MCAN_Type *) HPM_MCAN7_BASE)
420 
421 #include "hpm_ptpc_regs.h"
422 /* Address of PTPC instances */
423 /* PTPC base address */
424 #define HPM_PTPC_BASE (0xF02FC000UL)
425 /* PTPC base pointer */
426 #define HPM_PTPC ((PTPC_Type *) HPM_PTPC_BASE)
427 
428 #include "hpm_enet_regs.h"
429 /* Address of ENET instances */
430 /* ENET0 base address */
431 #define HPM_ENET0_BASE (0xF1100000UL)
432 /* ENET0 base pointer */
433 #define HPM_ENET0 ((ENET_Type *) HPM_ENET0_BASE)
434 
435 #include "hpm_usb_regs.h"
436 /* Address of USB instances */
437 /* USB0 base address */
438 #define HPM_USB0_BASE (0xF1120000UL)
439 /* USB0 base pointer */
440 #define HPM_USB0 ((USB_Type *) HPM_USB0_BASE)
441 
442 #include "hpm_sdxc_regs.h"
443 /* Address of SDXC instances */
444 /* SDXC0 base address */
445 #define HPM_SDXC0_BASE (0xF1130000UL)
446 /* SDXC0 base pointer */
447 #define HPM_SDXC0 ((SDXC_Type *) HPM_SDXC0_BASE)
448 /* SDXC1 base address */
449 #define HPM_SDXC1_BASE (0xF1134000UL)
450 /* SDXC1 base pointer */
451 #define HPM_SDXC1 ((SDXC_Type *) HPM_SDXC1_BASE)
452 
453 #include "hpm_ddrctl_regs.h"
454 /* Address of DDRCTL instances */
455 /* DDRCTL base address */
456 #define HPM_DDRCTL_BASE (0xF3010000UL)
457 /* DDRCTL base pointer */
458 #define HPM_DDRCTL ((DDRCTL_Type *) HPM_DDRCTL_BASE)
459 
460 /* Address of ROMC instances */
461 /* ROMC base address */
462 #define HPM_ROMC_BASE (0xF3014000UL)
463 
464 #include "hpm_ffa_regs.h"
465 /* Address of FFA instances */
466 /* FFA base address */
467 #define HPM_FFA_BASE (0xF3018000UL)
468 /* FFA base pointer */
469 #define HPM_FFA ((FFA_Type *) HPM_FFA_BASE)
470 
471 #include "hpm_sdp_regs.h"
472 /* Address of SDP instances */
473 /* SDP base address */
474 #define HPM_SDP_BASE (0xF3040000UL)
475 /* SDP base pointer */
476 #define HPM_SDP ((SDP_Type *) HPM_SDP_BASE)
477 
478 #include "hpm_sec_regs.h"
479 /* Address of SEC instances */
480 /* SEC base address */
481 #define HPM_SEC_BASE (0xF3044000UL)
482 /* SEC base pointer */
483 #define HPM_SEC ((SEC_Type *) HPM_SEC_BASE)
484 
485 #include "hpm_mon_regs.h"
486 /* Address of MON instances */
487 /* MON base address */
488 #define HPM_MON_BASE (0xF3048000UL)
489 /* MON base pointer */
490 #define HPM_MON ((MON_Type *) HPM_MON_BASE)
491 
492 #include "hpm_rng_regs.h"
493 /* Address of RNG instances */
494 /* RNG base address */
495 #define HPM_RNG_BASE (0xF304C000UL)
496 /* RNG base pointer */
497 #define HPM_RNG ((RNG_Type *) HPM_RNG_BASE)
498 
499 #include "hpm_otp_regs.h"
500 /* Address of OTP instances */
501 /* OTP base address */
502 #define HPM_OTP_BASE (0xF3050000UL)
503 /* OTP base pointer */
504 #define HPM_OTP ((OTP_Type *) HPM_OTP_BASE)
505 
506 #include "hpm_keym_regs.h"
507 /* Address of KEYM instances */
508 /* KEYM base address */
509 #define HPM_KEYM_BASE (0xF3054000UL)
510 /* KEYM base pointer */
511 #define HPM_KEYM ((KEYM_Type *) HPM_KEYM_BASE)
512 
513 #include "hpm_sysctl_regs.h"
514 /* Address of SYSCTL instances */
515 /* SYSCTL base address */
516 #define HPM_SYSCTL_BASE (0xF4000000UL)
517 /* SYSCTL base pointer */
518 #define HPM_SYSCTL ((SYSCTL_Type *) HPM_SYSCTL_BASE)
519 
520 #include "hpm_ioc_regs.h"
521 /* Address of IOC instances */
522 /* IOC base address */
523 #define HPM_IOC_BASE (0xF4040000UL)
524 /* IOC base pointer */
525 #define HPM_IOC ((IOC_Type *) HPM_IOC_BASE)
526 /* PIOC base address */
527 #define HPM_PIOC_BASE (0xF4118000UL)
528 /* PIOC base pointer */
529 #define HPM_PIOC ((IOC_Type *) HPM_PIOC_BASE)
530 /* BIOC base address */
531 #define HPM_BIOC_BASE (0xF4210000UL)
532 /* BIOC base pointer */
533 #define HPM_BIOC ((IOC_Type *) HPM_BIOC_BASE)
534 
535 #include "hpm_pllctlv2_regs.h"
536 /* Address of PLLCTLV2 instances */
537 /* PLLCTLV2 base address */
538 #define HPM_PLLCTLV2_BASE (0xF40C0000UL)
539 /* PLLCTLV2 base pointer */
540 #define HPM_PLLCTLV2 ((PLLCTLV2_Type *) HPM_PLLCTLV2_BASE)
541 
542 #include "hpm_ppor_regs.h"
543 /* Address of PPOR instances */
544 /* PPOR base address */
545 #define HPM_PPOR_BASE (0xF4100000UL)
546 /* PPOR base pointer */
547 #define HPM_PPOR ((PPOR_Type *) HPM_PPOR_BASE)
548 
549 #include "hpm_pcfg_regs.h"
550 /* Address of PCFG instances */
551 /* PCFG base address */
552 #define HPM_PCFG_BASE (0xF4104000UL)
553 /* PCFG base pointer */
554 #define HPM_PCFG ((PCFG_Type *) HPM_PCFG_BASE)
555 
556 #include "hpm_pgpr_regs.h"
557 /* Address of PGPR instances */
558 /* PGPR0 base address */
559 #define HPM_PGPR0_BASE (0xF4110000UL)
560 /* PGPR0 base pointer */
561 #define HPM_PGPR0 ((PGPR_Type *) HPM_PGPR0_BASE)
562 /* PGPR1 base address */
563 #define HPM_PGPR1_BASE (0xF4114000UL)
564 /* PGPR1 base pointer */
565 #define HPM_PGPR1 ((PGPR_Type *) HPM_PGPR1_BASE)
566 
567 #include "hpm_vad_regs.h"
568 /* Address of VAD instances */
569 /* VAD base address */
570 #define HPM_VAD_BASE (0xF412C000UL)
571 /* VAD base pointer */
572 #define HPM_VAD ((VAD_Type *) HPM_VAD_BASE)
573 
574 #include "hpm_ddrphy_regs.h"
575 /* Address of DDRPHY instances */
576 /* DDRPHY base address */
577 #define HPM_DDRPHY_BASE (0xF4150000UL)
578 /* DDRPHY base pointer */
579 #define HPM_DDRPHY ((DDRPHY_Type *) HPM_DDRPHY_BASE)
580 
581 #include "hpm_tsns_regs.h"
582 /* Address of TSNS instances */
583 /* TSNS base address */
584 #define HPM_TSNS_BASE (0xF4154000UL)
585 /* TSNS base pointer */
586 #define HPM_TSNS ((TSNS_Type *) HPM_TSNS_BASE)
587 
588 #include "hpm_bacc_regs.h"
589 /* Address of BACC instances */
590 /* BACC base address */
591 #define HPM_BACC_BASE (0xF4200000UL)
592 /* BACC base pointer */
593 #define HPM_BACC ((BACC_Type *) HPM_BACC_BASE)
594 
595 #include "hpm_bpor_regs.h"
596 /* Address of BPOR instances */
597 /* BPOR base address */
598 #define HPM_BPOR_BASE (0xF4204000UL)
599 /* BPOR base pointer */
600 #define HPM_BPOR ((BPOR_Type *) HPM_BPOR_BASE)
601 
602 #include "hpm_bcfg_regs.h"
603 /* Address of BCFG instances */
604 /* BCFG base address */
605 #define HPM_BCFG_BASE (0xF4208000UL)
606 /* BCFG base pointer */
607 #define HPM_BCFG ((BCFG_Type *) HPM_BCFG_BASE)
608 
609 #include "hpm_butn_regs.h"
610 /* Address of BUTN instances */
611 /* BUTN base address */
612 #define HPM_BUTN_BASE (0xF420C000UL)
613 /* BUTN base pointer */
614 #define HPM_BUTN ((BUTN_Type *) HPM_BUTN_BASE)
615 
616 #include "hpm_bgpr_regs.h"
617 /* Address of BGPR instances */
618 /* BGPR base address */
619 #define HPM_BGPR_BASE (0xF4218000UL)
620 /* BGPR base pointer */
621 #define HPM_BGPR ((BGPR_Type *) HPM_BGPR_BASE)
622 
623 #include "hpm_rtc_regs.h"
624 /* Address of RTC instances */
625 /* RTCSHW base address */
626 #define HPM_RTCSHW_BASE (0xF421C000UL)
627 /* RTCSHW base pointer */
628 #define HPM_RTCSHW ((RTC_Type *) HPM_RTCSHW_BASE)
629 /* RTC base address */
630 #define HPM_RTC_BASE (0xF4244000UL)
631 /* RTC base pointer */
632 #define HPM_RTC ((RTC_Type *) HPM_RTC_BASE)
633 
634 #include "hpm_bsec_regs.h"
635 /* Address of BSEC instances */
636 /* BSEC base address */
637 #define HPM_BSEC_BASE (0xF4240000UL)
638 /* BSEC base pointer */
639 #define HPM_BSEC ((BSEC_Type *) HPM_BSEC_BASE)
640 
641 #include "hpm_bkey_regs.h"
642 /* Address of BKEY instances */
643 /* BKEY base address */
644 #define HPM_BKEY_BASE (0xF4248000UL)
645 /* BKEY base pointer */
646 #define HPM_BKEY ((BKEY_Type *) HPM_BKEY_BASE)
647 
648 #include "hpm_bmon_regs.h"
649 /* Address of BMON instances */
650 /* BMON base address */
651 #define HPM_BMON_BASE (0xF424C000UL)
652 /* BMON base pointer */
653 #define HPM_BMON ((BMON_Type *) HPM_BMON_BASE)
654 
655 #include "hpm_tamp_regs.h"
656 /* Address of TAMP instances */
657 /* TAMP base address */
658 #define HPM_TAMP_BASE (0xF4250000UL)
659 /* TAMP base pointer */
660 #define HPM_TAMP ((TAMP_Type *) HPM_TAMP_BASE)
661 
662 #include "hpm_mono_regs.h"
663 /* Address of MONO instances */
664 /* MONO base address */
665 #define HPM_MONO_BASE (0xF4254000UL)
666 /* MONO base pointer */
667 #define HPM_MONO ((MONO_Type *) HPM_MONO_BASE)
668 
669 
670 #include "riscv/riscv_core.h"
671 #include "hpm_csr_regs.h"
672 #include "hpm_interrupt.h"
673 #include "hpm_misc.h"
674 #include "hpm_dmamux_src.h"
675 #include "hpm_iomux.h"
676 #include "hpm_pmic_iomux.h"
677 #include "hpm_batt_iomux.h"
678 #endif /* HPM_SOC_H */