• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2021-2023 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_X                   5       /* GPIO0_X IRQ */
19 #define IRQn_GPIO0_Y                   6       /* GPIO0_Y IRQ */
20 #define IRQn_GPIO0_Z                   7       /* GPIO0_Z IRQ */
21 #define IRQn_ADC0                      8       /* ADC0 IRQ */
22 #define IRQn_ADC1                      9       /* ADC1 IRQ */
23 #define IRQn_ADC2                      10      /* ADC2 IRQ */
24 #define IRQn_DAC                       11      /* DAC IRQ */
25 #define IRQn_ACMP_0                    12      /* ACMP[0] IRQ */
26 #define IRQn_ACMP_1                    13      /* ACMP[1] IRQ */
27 #define IRQn_SPI0                      14      /* SPI0 IRQ */
28 #define IRQn_SPI1                      15      /* SPI1 IRQ */
29 #define IRQn_SPI2                      16      /* SPI2 IRQ */
30 #define IRQn_SPI3                      17      /* SPI3 IRQ */
31 #define IRQn_UART0                     18      /* UART0 IRQ */
32 #define IRQn_UART1                     19      /* UART1 IRQ */
33 #define IRQn_UART2                     20      /* UART2 IRQ */
34 #define IRQn_UART3                     21      /* UART3 IRQ */
35 #define IRQn_UART4                     22      /* UART4 IRQ */
36 #define IRQn_UART5                     23      /* UART5 IRQ */
37 #define IRQn_UART6                     24      /* UART6 IRQ */
38 #define IRQn_UART7                     25      /* UART7 IRQ */
39 #define IRQn_CAN0                      26      /* CAN0 IRQ */
40 #define IRQn_CAN1                      27      /* CAN1 IRQ */
41 #define IRQn_PTPC                      28      /* PTPC IRQ */
42 #define IRQn_WDG0                      29      /* WDG0 IRQ */
43 #define IRQn_WDG1                      30      /* WDG1 IRQ */
44 #define IRQn_TSNS                      31      /* TSNS IRQ */
45 #define IRQn_MBX0A                     32      /* MBX0A IRQ */
46 #define IRQn_MBX0B                     33      /* MBX0B IRQ */
47 #define IRQn_GPTMR0                    34      /* GPTMR0 IRQ */
48 #define IRQn_GPTMR1                    35      /* GPTMR1 IRQ */
49 #define IRQn_GPTMR2                    36      /* GPTMR2 IRQ */
50 #define IRQn_GPTMR3                    37      /* GPTMR3 IRQ */
51 #define IRQn_I2C0                      38      /* I2C0 IRQ */
52 #define IRQn_I2C1                      39      /* I2C1 IRQ */
53 #define IRQn_I2C2                      40      /* I2C2 IRQ */
54 #define IRQn_I2C3                      41      /* I2C3 IRQ */
55 #define IRQn_PWM0                      42      /* PWM0 IRQ */
56 #define IRQn_HALL0                     43      /* HALL0 IRQ */
57 #define IRQn_QEI0                      44      /* QEI0 IRQ */
58 #define IRQn_PWM1                      45      /* PWM1 IRQ */
59 #define IRQn_HALL1                     46      /* HALL1 IRQ */
60 #define IRQn_QEI1                      47      /* QEI1 IRQ */
61 #define IRQn_SDP                       48      /* SDP IRQ */
62 #define IRQn_XPI0                      49      /* XPI0 IRQ */
63 #define IRQn_XPI1                      50      /* XPI1 IRQ */
64 #define IRQn_XDMA                      51      /* XDMA IRQ */
65 #define IRQn_HDMA                      52      /* HDMA IRQ */
66 #define IRQn_FEMC                      53      /* FEMC IRQ */
67 #define IRQn_RNG                       54      /* RNG IRQ */
68 #define IRQn_I2S0                      55      /* I2S0 IRQ */
69 #define IRQn_I2S1                      56      /* I2S1 IRQ */
70 #define IRQn_DAO                       57      /* DAO IRQ */
71 #define IRQn_PDM                       58      /* PDM IRQ */
72 #define IRQn_FFA                       59      /* FFA IRQ */
73 #define IRQn_NTMR0                     60      /* NTMR0 IRQ */
74 #define IRQn_USB0                      61      /* USB0 IRQ */
75 #define IRQn_ENET0                     62      /* ENET0 IRQ */
76 #define IRQn_SDXC0                     63      /* SDXC0 IRQ */
77 #define IRQn_PSEC                      64      /* PSEC IRQ */
78 #define IRQn_PGPIO                     65      /* PGPIO IRQ */
79 #define IRQn_PWDG                      66      /* PWDG IRQ */
80 #define IRQn_PTMR                      67      /* PTMR IRQ */
81 #define IRQn_PUART                     68      /* PUART IRQ */
82 #define IRQn_FUSE                      69      /* FUSE IRQ */
83 #define IRQn_SECMON                    70      /* SECMON IRQ */
84 #define IRQn_RTC                       71      /* RTC IRQ */
85 #define IRQn_BUTN                      72      /* BUTN IRQ */
86 #define IRQn_BGPIO                     73      /* BGPIO IRQ */
87 #define IRQn_BVIO                      74      /* BVIO IRQ */
88 #define IRQn_BROWNOUT                  75      /* BROWNOUT IRQ */
89 #define IRQn_SYSCTL                    76      /* SYSCTL IRQ */
90 #define IRQn_DEBUG_0                   77      /* DEBUG[0] IRQ */
91 #define IRQn_DEBUG_1                   78      /* DEBUG[1] IRQ */
92 
93 #include "hpm_common.h"
94 
95 #include "hpm_gpio_regs.h"
96 /* Address of GPIO instances */
97 /* FGPIO base address */
98 #define HPM_FGPIO_BASE (0xC0000UL)
99 /* FGPIO base pointer */
100 #define HPM_FGPIO ((GPIO_Type *) HPM_FGPIO_BASE)
101 /* GPIO0 base address */
102 #define HPM_GPIO0_BASE (0xF0000000UL)
103 /* GPIO0 base pointer */
104 #define HPM_GPIO0 ((GPIO_Type *) HPM_GPIO0_BASE)
105 /* PGPIO base address */
106 #define HPM_PGPIO_BASE (0xF40DC000UL)
107 /* PGPIO base pointer */
108 #define HPM_PGPIO ((GPIO_Type *) HPM_PGPIO_BASE)
109 /* BGPIO base address */
110 #define HPM_BGPIO_BASE (0xF5014000UL)
111 /* BGPIO base pointer */
112 #define HPM_BGPIO ((GPIO_Type *) HPM_BGPIO_BASE)
113 
114 /* Address of DM instances */
115 /* DM base address */
116 #define HPM_DM_BASE (0x30000000UL)
117 
118 #include "hpm_plic_regs.h"
119 /* Address of PLIC instances */
120 /* PLIC base address */
121 #define HPM_PLIC_BASE (0xE4000000UL)
122 /* PLIC base pointer */
123 #define HPM_PLIC ((PLIC_Type *) HPM_PLIC_BASE)
124 
125 #include "hpm_mchtmr_regs.h"
126 /* Address of MCHTMR instances */
127 /* MCHTMR base address */
128 #define HPM_MCHTMR_BASE (0xE6000000UL)
129 /* MCHTMR base pointer */
130 #define HPM_MCHTMR ((MCHTMR_Type *) HPM_MCHTMR_BASE)
131 
132 #include "hpm_plic_sw_regs.h"
133 /* Address of PLICSW instances */
134 /* PLICSW base address */
135 #define HPM_PLICSW_BASE (0xE6400000UL)
136 /* PLICSW base pointer */
137 #define HPM_PLICSW ((PLIC_SW_Type *) HPM_PLICSW_BASE)
138 
139 #include "hpm_gpiom_regs.h"
140 /* Address of GPIOM instances */
141 /* GPIOM base address */
142 #define HPM_GPIOM_BASE (0xF0008000UL)
143 /* GPIOM base pointer */
144 #define HPM_GPIOM ((GPIOM_Type *) HPM_GPIOM_BASE)
145 
146 #include "hpm_adc16_regs.h"
147 /* Address of ADC16 instances */
148 /* ADC0 base address */
149 #define HPM_ADC0_BASE (0xF0010000UL)
150 /* ADC0 base pointer */
151 #define HPM_ADC0 ((ADC16_Type *) HPM_ADC0_BASE)
152 /* ADC1 base address */
153 #define HPM_ADC1_BASE (0xF0014000UL)
154 /* ADC1 base pointer */
155 #define HPM_ADC1 ((ADC16_Type *) HPM_ADC1_BASE)
156 /* ADC2 base address */
157 #define HPM_ADC2_BASE (0xF0018000UL)
158 /* ADC2 base pointer */
159 #define HPM_ADC2 ((ADC16_Type *) HPM_ADC2_BASE)
160 
161 #include "hpm_acmp_regs.h"
162 /* Address of ACMP instances */
163 /* ACMP base address */
164 #define HPM_ACMP_BASE (0xF0020000UL)
165 /* ACMP base pointer */
166 #define HPM_ACMP ((ACMP_Type *) HPM_ACMP_BASE)
167 
168 #include "hpm_dac_regs.h"
169 /* Address of DAC instances */
170 /* DAC base address */
171 #define HPM_DAC_BASE (0xF0024000UL)
172 /* DAC base pointer */
173 #define HPM_DAC ((DAC_Type *) HPM_DAC_BASE)
174 
175 #include "hpm_spi_regs.h"
176 /* Address of SPI instances */
177 /* SPI0 base address */
178 #define HPM_SPI0_BASE (0xF0030000UL)
179 /* SPI0 base pointer */
180 #define HPM_SPI0 ((SPI_Type *) HPM_SPI0_BASE)
181 /* SPI1 base address */
182 #define HPM_SPI1_BASE (0xF0034000UL)
183 /* SPI1 base pointer */
184 #define HPM_SPI1 ((SPI_Type *) HPM_SPI1_BASE)
185 /* SPI2 base address */
186 #define HPM_SPI2_BASE (0xF0038000UL)
187 /* SPI2 base pointer */
188 #define HPM_SPI2 ((SPI_Type *) HPM_SPI2_BASE)
189 /* SPI3 base address */
190 #define HPM_SPI3_BASE (0xF003C000UL)
191 /* SPI3 base pointer */
192 #define HPM_SPI3 ((SPI_Type *) HPM_SPI3_BASE)
193 
194 #include "hpm_uart_regs.h"
195 /* Address of UART instances */
196 /* UART0 base address */
197 #define HPM_UART0_BASE (0xF0040000UL)
198 /* UART0 base pointer */
199 #define HPM_UART0 ((UART_Type *) HPM_UART0_BASE)
200 /* UART1 base address */
201 #define HPM_UART1_BASE (0xF0044000UL)
202 /* UART1 base pointer */
203 #define HPM_UART1 ((UART_Type *) HPM_UART1_BASE)
204 /* UART2 base address */
205 #define HPM_UART2_BASE (0xF0048000UL)
206 /* UART2 base pointer */
207 #define HPM_UART2 ((UART_Type *) HPM_UART2_BASE)
208 /* UART3 base address */
209 #define HPM_UART3_BASE (0xF004C000UL)
210 /* UART3 base pointer */
211 #define HPM_UART3 ((UART_Type *) HPM_UART3_BASE)
212 /* UART4 base address */
213 #define HPM_UART4_BASE (0xF0050000UL)
214 /* UART4 base pointer */
215 #define HPM_UART4 ((UART_Type *) HPM_UART4_BASE)
216 /* UART5 base address */
217 #define HPM_UART5_BASE (0xF0054000UL)
218 /* UART5 base pointer */
219 #define HPM_UART5 ((UART_Type *) HPM_UART5_BASE)
220 /* UART6 base address */
221 #define HPM_UART6_BASE (0xF0058000UL)
222 /* UART6 base pointer */
223 #define HPM_UART6 ((UART_Type *) HPM_UART6_BASE)
224 /* UART7 base address */
225 #define HPM_UART7_BASE (0xF005C000UL)
226 /* UART7 base pointer */
227 #define HPM_UART7 ((UART_Type *) HPM_UART7_BASE)
228 /* PUART base address */
229 #define HPM_PUART_BASE (0xF40E4000UL)
230 /* PUART base pointer */
231 #define HPM_PUART ((UART_Type *) HPM_PUART_BASE)
232 
233 #include "hpm_can_regs.h"
234 /* Address of CAN instances */
235 /* CAN0 base address */
236 #define HPM_CAN0_BASE (0xF0080000UL)
237 /* CAN0 base pointer */
238 #define HPM_CAN0 ((CAN_Type *) HPM_CAN0_BASE)
239 /* CAN1 base address */
240 #define HPM_CAN1_BASE (0xF0084000UL)
241 /* CAN1 base pointer */
242 #define HPM_CAN1 ((CAN_Type *) HPM_CAN1_BASE)
243 
244 #include "hpm_wdg_regs.h"
245 /* Address of WDOG instances */
246 /* WDG0 base address */
247 #define HPM_WDG0_BASE (0xF0090000UL)
248 /* WDG0 base pointer */
249 #define HPM_WDG0 ((WDG_Type *) HPM_WDG0_BASE)
250 /* WDG1 base address */
251 #define HPM_WDG1_BASE (0xF0094000UL)
252 /* WDG1 base pointer */
253 #define HPM_WDG1 ((WDG_Type *) HPM_WDG1_BASE)
254 /* PWDG base address */
255 #define HPM_PWDG_BASE (0xF40E8000UL)
256 /* PWDG base pointer */
257 #define HPM_PWDG ((WDG_Type *) HPM_PWDG_BASE)
258 
259 #include "hpm_mbx_regs.h"
260 /* Address of MBX instances */
261 /* MBX0A base address */
262 #define HPM_MBX0A_BASE (0xF00A0000UL)
263 /* MBX0A base pointer */
264 #define HPM_MBX0A ((MBX_Type *) HPM_MBX0A_BASE)
265 /* MBX0B base address */
266 #define HPM_MBX0B_BASE (0xF00A4000UL)
267 /* MBX0B base pointer */
268 #define HPM_MBX0B ((MBX_Type *) HPM_MBX0B_BASE)
269 
270 #include "hpm_ptpc_regs.h"
271 /* Address of PTPC instances */
272 /* PTPC base address */
273 #define HPM_PTPC_BASE (0xF00B0000UL)
274 /* PTPC base pointer */
275 #define HPM_PTPC ((PTPC_Type *) HPM_PTPC_BASE)
276 
277 #include "hpm_dmamux_regs.h"
278 /* Address of DMAMUX instances */
279 /* DMAMUX base address */
280 #define HPM_DMAMUX_BASE (0xF00C0000UL)
281 /* DMAMUX base pointer */
282 #define HPM_DMAMUX ((DMAMUX_Type *) HPM_DMAMUX_BASE)
283 
284 #include "hpm_dma_regs.h"
285 /* Address of DMA instances */
286 /* HDMA base address */
287 #define HPM_HDMA_BASE (0xF00C4000UL)
288 /* HDMA base pointer */
289 #define HPM_HDMA ((DMA_Type *) HPM_HDMA_BASE)
290 /* XDMA base address */
291 #define HPM_XDMA_BASE (0xF3048000UL)
292 /* XDMA base pointer */
293 #define HPM_XDMA ((DMA_Type *) HPM_XDMA_BASE)
294 
295 #include "hpm_rng_regs.h"
296 /* Address of RNG instances */
297 /* RNG base address */
298 #define HPM_RNG_BASE (0xF00C8000UL)
299 /* RNG base pointer */
300 #define HPM_RNG ((RNG_Type *) HPM_RNG_BASE)
301 
302 #include "hpm_keym_regs.h"
303 /* Address of KEYM instances */
304 /* KEYM base address */
305 #define HPM_KEYM_BASE (0xF00CC000UL)
306 /* KEYM base pointer */
307 #define HPM_KEYM ((KEYM_Type *) HPM_KEYM_BASE)
308 
309 #include "hpm_i2s_regs.h"
310 /* Address of I2S instances */
311 /* I2S0 base address */
312 #define HPM_I2S0_BASE (0xF0100000UL)
313 /* I2S0 base pointer */
314 #define HPM_I2S0 ((I2S_Type *) HPM_I2S0_BASE)
315 /* I2S1 base address */
316 #define HPM_I2S1_BASE (0xF0104000UL)
317 /* I2S1 base pointer */
318 #define HPM_I2S1 ((I2S_Type *) HPM_I2S1_BASE)
319 
320 #include "hpm_dao_regs.h"
321 /* Address of DAO instances */
322 /* DAO base address */
323 #define HPM_DAO_BASE (0xF0110000UL)
324 /* DAO base pointer */
325 #define HPM_DAO ((DAO_Type *) HPM_DAO_BASE)
326 
327 #include "hpm_pdm_regs.h"
328 /* Address of PDM instances */
329 /* PDM base address */
330 #define HPM_PDM_BASE (0xF0114000UL)
331 /* PDM base pointer */
332 #define HPM_PDM ((PDM_Type *) HPM_PDM_BASE)
333 
334 #include "hpm_pwm_regs.h"
335 /* Address of PWM instances */
336 /* PWM0 base address */
337 #define HPM_PWM0_BASE (0xF0200000UL)
338 /* PWM0 base pointer */
339 #define HPM_PWM0 ((PWM_Type *) HPM_PWM0_BASE)
340 /* PWM1 base address */
341 #define HPM_PWM1_BASE (0xF0210000UL)
342 /* PWM1 base pointer */
343 #define HPM_PWM1 ((PWM_Type *) HPM_PWM1_BASE)
344 
345 #include "hpm_hall_regs.h"
346 /* Address of HALL instances */
347 /* HALL0 base address */
348 #define HPM_HALL0_BASE (0xF0204000UL)
349 /* HALL0 base pointer */
350 #define HPM_HALL0 ((HALL_Type *) HPM_HALL0_BASE)
351 /* HALL1 base address */
352 #define HPM_HALL1_BASE (0xF0214000UL)
353 /* HALL1 base pointer */
354 #define HPM_HALL1 ((HALL_Type *) HPM_HALL1_BASE)
355 
356 #include "hpm_qei_regs.h"
357 /* Address of QEI instances */
358 /* QEI0 base address */
359 #define HPM_QEI0_BASE (0xF0208000UL)
360 /* QEI0 base pointer */
361 #define HPM_QEI0 ((QEI_Type *) HPM_QEI0_BASE)
362 /* QEI1 base address */
363 #define HPM_QEI1_BASE (0xF0218000UL)
364 /* QEI1 base pointer */
365 #define HPM_QEI1 ((QEI_Type *) HPM_QEI1_BASE)
366 
367 #include "hpm_trgm_regs.h"
368 /* Address of TRGM instances */
369 /* TRGM0 base address */
370 #define HPM_TRGM0_BASE (0xF020C000UL)
371 /* TRGM0 base pointer */
372 #define HPM_TRGM0 ((TRGM_Type *) HPM_TRGM0_BASE)
373 /* TRGM1 base address */
374 #define HPM_TRGM1_BASE (0xF021C000UL)
375 /* TRGM1 base pointer */
376 #define HPM_TRGM1 ((TRGM_Type *) HPM_TRGM1_BASE)
377 
378 #include "hpm_synt_regs.h"
379 /* Address of SYNT instances */
380 /* SYNT base address */
381 #define HPM_SYNT_BASE (0xF0240000UL)
382 /* SYNT base pointer */
383 #define HPM_SYNT ((SYNT_Type *) HPM_SYNT_BASE)
384 
385 #include "hpm_enet_regs.h"
386 /* Address of ENET instances */
387 /* ENET0 base address */
388 #define HPM_ENET0_BASE (0xF2000000UL)
389 /* ENET0 base pointer */
390 #define HPM_ENET0 ((ENET_Type *) HPM_ENET0_BASE)
391 
392 #include "hpm_gptmr_regs.h"
393 /* Address of TMR instances */
394 /* NTMR0 base address */
395 #define HPM_NTMR0_BASE (0xF2010000UL)
396 /* NTMR0 base pointer */
397 #define HPM_NTMR0 ((GPTMR_Type *) HPM_NTMR0_BASE)
398 /* GPTMR0 base address */
399 #define HPM_GPTMR0_BASE (0xF3000000UL)
400 /* GPTMR0 base pointer */
401 #define HPM_GPTMR0 ((GPTMR_Type *) HPM_GPTMR0_BASE)
402 /* GPTMR1 base address */
403 #define HPM_GPTMR1_BASE (0xF3004000UL)
404 /* GPTMR1 base pointer */
405 #define HPM_GPTMR1 ((GPTMR_Type *) HPM_GPTMR1_BASE)
406 /* GPTMR2 base address */
407 #define HPM_GPTMR2_BASE (0xF3008000UL)
408 /* GPTMR2 base pointer */
409 #define HPM_GPTMR2 ((GPTMR_Type *) HPM_GPTMR2_BASE)
410 /* GPTMR3 base address */
411 #define HPM_GPTMR3_BASE (0xF300C000UL)
412 /* GPTMR3 base pointer */
413 #define HPM_GPTMR3 ((GPTMR_Type *) HPM_GPTMR3_BASE)
414 /* PTMR base address */
415 #define HPM_PTMR_BASE (0xF40E0000UL)
416 /* PTMR base pointer */
417 #define HPM_PTMR ((GPTMR_Type *) HPM_PTMR_BASE)
418 
419 #include "hpm_usb_regs.h"
420 /* Address of USB instances */
421 /* USB0 base address */
422 #define HPM_USB0_BASE (0xF2020000UL)
423 /* USB0 base pointer */
424 #define HPM_USB0 ((USB_Type *) HPM_USB0_BASE)
425 
426 #include "hpm_sdxc_regs.h"
427 /* Address of SDXC instances */
428 /* SDXC0 base address */
429 #define HPM_SDXC0_BASE (0xF2030000UL)
430 /* SDXC0 base pointer */
431 #define HPM_SDXC0 ((SDXC_Type *) HPM_SDXC0_BASE)
432 
433 #include "hpm_i2c_regs.h"
434 /* Address of I2C instances */
435 /* I2C0 base address */
436 #define HPM_I2C0_BASE (0xF3020000UL)
437 /* I2C0 base pointer */
438 #define HPM_I2C0 ((I2C_Type *) HPM_I2C0_BASE)
439 /* I2C1 base address */
440 #define HPM_I2C1_BASE (0xF3024000UL)
441 /* I2C1 base pointer */
442 #define HPM_I2C1 ((I2C_Type *) HPM_I2C1_BASE)
443 /* I2C2 base address */
444 #define HPM_I2C2_BASE (0xF3028000UL)
445 /* I2C2 base pointer */
446 #define HPM_I2C2 ((I2C_Type *) HPM_I2C2_BASE)
447 /* I2C3 base address */
448 #define HPM_I2C3_BASE (0xF302C000UL)
449 /* I2C3 base pointer */
450 #define HPM_I2C3 ((I2C_Type *) HPM_I2C3_BASE)
451 
452 #include "hpm_sdp_regs.h"
453 /* Address of SDP instances */
454 /* SDP base address */
455 #define HPM_SDP_BASE (0xF304C000UL)
456 /* SDP base pointer */
457 #define HPM_SDP ((SDP_Type *) HPM_SDP_BASE)
458 
459 #include "hpm_femc_regs.h"
460 /* Address of FEMC instances */
461 /* FEMC base address */
462 #define HPM_FEMC_BASE (0xF3050000UL)
463 /* FEMC base pointer */
464 #define HPM_FEMC ((FEMC_Type *) HPM_FEMC_BASE)
465 
466 /* Address of ROMC instances */
467 /* ROMC base address */
468 #define HPM_ROMC_BASE (0xF3054000UL)
469 
470 #include "hpm_ffa_regs.h"
471 /* Address of FFA instances */
472 /* FFA base address */
473 #define HPM_FFA_BASE (0xF3058000UL)
474 /* FFA base pointer */
475 #define HPM_FFA ((FFA_Type *) HPM_FFA_BASE)
476 
477 #include "hpm_sysctl_regs.h"
478 /* Address of SYSCTL instances */
479 /* SYSCTL base address */
480 #define HPM_SYSCTL_BASE (0xF4000000UL)
481 /* SYSCTL base pointer */
482 #define HPM_SYSCTL ((SYSCTL_Type *) HPM_SYSCTL_BASE)
483 
484 #include "hpm_ioc_regs.h"
485 /* Address of IOC instances */
486 /* IOC base address */
487 #define HPM_IOC_BASE (0xF4040000UL)
488 /* IOC base pointer */
489 #define HPM_IOC ((IOC_Type *) HPM_IOC_BASE)
490 /* PIOC base address */
491 #define HPM_PIOC_BASE (0xF40D8000UL)
492 /* PIOC base pointer */
493 #define HPM_PIOC ((IOC_Type *) HPM_PIOC_BASE)
494 /* BIOC base address */
495 #define HPM_BIOC_BASE (0xF5010000UL)
496 /* BIOC base pointer */
497 #define HPM_BIOC ((IOC_Type *) HPM_BIOC_BASE)
498 
499 #include "hpm_otp_regs.h"
500 /* Address of OTP instances */
501 /* OTPSHW base address */
502 #define HPM_OTPSHW_BASE (0xF4080000UL)
503 /* OTPSHW base pointer */
504 #define HPM_OTPSHW ((OTP_Type *) HPM_OTPSHW_BASE)
505 /* OTP base address */
506 #define HPM_OTP_BASE (0xF40C8000UL)
507 /* OTP base pointer */
508 #define HPM_OTP ((OTP_Type *) HPM_OTP_BASE)
509 
510 #include "hpm_ppor_regs.h"
511 /* Address of PPOR instances */
512 /* PPOR base address */
513 #define HPM_PPOR_BASE (0xF40C0000UL)
514 /* PPOR base pointer */
515 #define HPM_PPOR ((PPOR_Type *) HPM_PPOR_BASE)
516 
517 #include "hpm_pcfg_regs.h"
518 /* Address of PCFG instances */
519 /* PCFG base address */
520 #define HPM_PCFG_BASE (0xF40C4000UL)
521 /* PCFG base pointer */
522 #define HPM_PCFG ((PCFG_Type *) HPM_PCFG_BASE)
523 
524 #include "hpm_psec_regs.h"
525 /* Address of PSEC instances */
526 /* PSEC base address */
527 #define HPM_PSEC_BASE (0xF40CC000UL)
528 /* PSEC base pointer */
529 #define HPM_PSEC ((PSEC_Type *) HPM_PSEC_BASE)
530 
531 #include "hpm_pmon_regs.h"
532 /* Address of PMON instances */
533 /* PMON base address */
534 #define HPM_PMON_BASE (0xF40D0000UL)
535 /* PMON base pointer */
536 #define HPM_PMON ((PMON_Type *) HPM_PMON_BASE)
537 
538 #include "hpm_pgpr_regs.h"
539 /* Address of PGPR instances */
540 /* PGPR base address */
541 #define HPM_PGPR_BASE (0xF40D4000UL)
542 /* PGPR base pointer */
543 #define HPM_PGPR ((PGPR_Type *) HPM_PGPR_BASE)
544 
545 #include "hpm_pllctlv2_regs.h"
546 /* Address of PLLCTLV2 instances */
547 /* PLLCTLV2 base address */
548 #define HPM_PLLCTLV2_BASE (0xF4100000UL)
549 /* PLLCTLV2 base pointer */
550 #define HPM_PLLCTLV2 ((PLLCTLV2_Type *) HPM_PLLCTLV2_BASE)
551 
552 #include "hpm_tsns_regs.h"
553 /* Address of TSNS instances */
554 /* TSNS base address */
555 #define HPM_TSNS_BASE (0xF4104000UL)
556 /* TSNS base pointer */
557 #define HPM_TSNS ((TSNS_Type *) HPM_TSNS_BASE)
558 
559 #include "hpm_bacc_regs.h"
560 /* Address of BACC instances */
561 /* BACC base address */
562 #define HPM_BACC_BASE (0xF5000000UL)
563 /* BACC base pointer */
564 #define HPM_BACC ((BACC_Type *) HPM_BACC_BASE)
565 
566 #include "hpm_bpor_regs.h"
567 /* Address of BPOR instances */
568 /* BPOR base address */
569 #define HPM_BPOR_BASE (0xF5004000UL)
570 /* BPOR base pointer */
571 #define HPM_BPOR ((BPOR_Type *) HPM_BPOR_BASE)
572 
573 #include "hpm_bcfg_regs.h"
574 /* Address of BCFG instances */
575 /* BCFG base address */
576 #define HPM_BCFG_BASE (0xF5008000UL)
577 /* BCFG base pointer */
578 #define HPM_BCFG ((BCFG_Type *) HPM_BCFG_BASE)
579 
580 #include "hpm_butn_regs.h"
581 /* Address of BUTN instances */
582 /* BUTN base address */
583 #define HPM_BUTN_BASE (0xF500C000UL)
584 /* BUTN base pointer */
585 #define HPM_BUTN ((BUTN_Type *) HPM_BUTN_BASE)
586 
587 #include "hpm_bgpr_regs.h"
588 /* Address of BGPR instances */
589 /* BGPR base address */
590 #define HPM_BGPR_BASE (0xF5018000UL)
591 /* BGPR base pointer */
592 #define HPM_BGPR ((BGPR_Type *) HPM_BGPR_BASE)
593 
594 #include "hpm_bsec_regs.h"
595 /* Address of BSEC instances */
596 /* BSEC base address */
597 #define HPM_BSEC_BASE (0xF5040000UL)
598 /* BSEC base pointer */
599 #define HPM_BSEC ((BSEC_Type *) HPM_BSEC_BASE)
600 
601 #include "hpm_rtc_regs.h"
602 /* Address of RTC instances */
603 /* RTC base address */
604 #define HPM_RTC_BASE (0xF5044000UL)
605 /* RTC base pointer */
606 #define HPM_RTC ((RTC_Type *) HPM_RTC_BASE)
607 
608 #include "hpm_bkey_regs.h"
609 /* Address of BKEY instances */
610 /* BKEY base address */
611 #define HPM_BKEY_BASE (0xF5048000UL)
612 /* BKEY base pointer */
613 #define HPM_BKEY ((BKEY_Type *) HPM_BKEY_BASE)
614 
615 #include "hpm_bmon_regs.h"
616 /* Address of BMON instances */
617 /* BMON base address */
618 #define HPM_BMON_BASE (0xF504C000UL)
619 /* BMON base pointer */
620 #define HPM_BMON ((BMON_Type *) HPM_BMON_BASE)
621 
622 #include "hpm_tamp_regs.h"
623 /* Address of TAMP instances */
624 /* TAMP base address */
625 #define HPM_TAMP_BASE (0xF5050000UL)
626 /* TAMP base pointer */
627 #define HPM_TAMP ((TAMP_Type *) HPM_TAMP_BASE)
628 
629 #include "hpm_mono_regs.h"
630 /* Address of MONO instances */
631 /* MONO base address */
632 #define HPM_MONO_BASE (0xF5054000UL)
633 /* MONO base pointer */
634 #define HPM_MONO ((MONO_Type *) HPM_MONO_BASE)
635 
636 
637 #include "riscv/riscv_core.h"
638 #include "hpm_csr_regs.h"
639 #include "hpm_interrupt.h"
640 #include "hpm_misc.h"
641 #include "hpm_dmamux_src.h"
642 #include "hpm_trgmmux_src.h"
643 #include "hpm_iomux.h"
644 #include "hpm_pmic_iomux.h"
645 #include "hpm_batt_iomux.h"
646 #endif /* HPM_SOC_H */
647