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_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_GPIO1_A 8
/* GPIO1_A IRQ */
22
#define IRQn_GPIO1_B 9
/* GPIO1_B IRQ */
23
#define IRQn_GPIO1_C 10
/* GPIO1_C IRQ */
24
#define IRQn_GPIO1_D 11
/* GPIO1_D IRQ */
25
#define IRQn_GPIO1_X 12
/* GPIO1_X IRQ */
26
#define IRQn_GPIO1_Y 13
/* GPIO1_Y IRQ */
27
#define IRQn_GPIO1_Z 14
/* GPIO1_Z IRQ */
28
#define IRQn_ADC0 15
/* ADC0 IRQ */
29
#define IRQn_ADC1 16
/* ADC1 IRQ */
30
#define IRQn_ADC2 17
/* ADC2 IRQ */
31
#define IRQn_SDFM 18
/* SDFM IRQ */
32
#define IRQn_DAC0 19
/* DAC0 IRQ */
33
#define IRQn_DAC1 20
/* DAC1 IRQ */
34
#define IRQn_ACMP_0 21
/* ACMP[0] IRQ */
35
#define IRQn_ACMP_1 22
/* ACMP[1] IRQ */
36
#define IRQn_ACMP_2 23
/* ACMP[2] IRQ */
37
#define IRQn_ACMP_3 24
/* ACMP[3] IRQ */
38
#define IRQn_SPI0 25
/* SPI0 IRQ */
39
#define IRQn_SPI1 26
/* SPI1 IRQ */
40
#define IRQn_SPI2 27
/* SPI2 IRQ */
41
#define IRQn_SPI3 28
/* SPI3 IRQ */
42
#define IRQn_UART0 29
/* UART0 IRQ */
43
#define IRQn_UART1 30
/* UART1 IRQ */
44
#define IRQn_UART2 31
/* UART2 IRQ */
45
#define IRQn_UART3 32
/* UART3 IRQ */
46
#define IRQn_UART4 33
/* UART4 IRQ */
47
#define IRQn_UART5 34
/* UART5 IRQ */
48
#define IRQn_UART6 35
/* UART6 IRQ */
49
#define IRQn_UART7 36
/* UART7 IRQ */
50
#define IRQn_MCAN0 37
/* MCAN0 IRQ */
51
#define IRQn_MCAN1 38
/* MCAN1 IRQ */
52
#define IRQn_MCAN2 39
/* MCAN2 IRQ */
53
#define IRQn_MCAN3 40
/* MCAN3 IRQ */
54
#define IRQn_PTPC 41
/* PTPC IRQ */
55
#define IRQn_WDG0 42
/* WDG0 IRQ */
56
#define IRQn_WDG1 43
/* WDG1 IRQ */
57
#define IRQn_TSNS 44
/* TSNS IRQ */
58
#define IRQn_MBX0A 45
/* MBX0A IRQ */
59
#define IRQn_MBX0B 46
/* MBX0B IRQ */
60
#define IRQn_MBX1A 47
/* MBX1A IRQ */
61
#define IRQn_MBX1B 48
/* MBX1B IRQ */
62
#define IRQn_GPTMR0 49
/* GPTMR0 IRQ */
63
#define IRQn_GPTMR1 50
/* GPTMR1 IRQ */
64
#define IRQn_GPTMR2 51
/* GPTMR2 IRQ */
65
#define IRQn_GPTMR3 52
/* GPTMR3 IRQ */
66
#define IRQn_I2C0 53
/* I2C0 IRQ */
67
#define IRQn_I2C1 54
/* I2C1 IRQ */
68
#define IRQn_I2C2 55
/* I2C2 IRQ */
69
#define IRQn_I2C3 56
/* I2C3 IRQ */
70
#define IRQn_PWM0 57
/* PWM0 IRQ */
71
#define IRQn_HALL0 58
/* HALL0 IRQ */
72
#define IRQn_QEI0 59
/* QEI0 IRQ */
73
#define IRQn_PWM1 60
/* PWM1 IRQ */
74
#define IRQn_HALL1 61
/* HALL1 IRQ */
75
#define IRQn_QEI1 62
/* QEI1 IRQ */
76
#define IRQn_PWM2 63
/* PWM2 IRQ */
77
#define IRQn_HALL2 64
/* HALL2 IRQ */
78
#define IRQn_QEI2 65
/* QEI2 IRQ */
79
#define IRQn_PWM3 66
/* PWM3 IRQ */
80
#define IRQn_HALL3 67
/* HALL3 IRQ */
81
#define IRQn_QEI3 68
/* QEI3 IRQ */
82
#define IRQn_SDP 69
/* SDP IRQ */
83
#define IRQn_XPI0 70
/* XPI0 IRQ */
84
#define IRQn_XDMA 71
/* XDMA IRQ */
85
#define IRQn_HDMA 72
/* HDMA IRQ */
86
#define IRQn_RNG 73
/* RNG IRQ */
87
#define IRQn_USB0 74
/* USB0 IRQ */
88
#define IRQn_PSEC 75
/* PSEC IRQ */
89
#define IRQn_PGPIO 76
/* PGPIO IRQ */
90
#define IRQn_PWDG 77
/* PWDG IRQ */
91
#define IRQn_PTMR 78
/* PTMR IRQ */
92
#define IRQn_PUART 79
/* PUART IRQ */
93
#define IRQn_FUSE 80
/* FUSE IRQ */
94
#define IRQn_SECMON 81
/* SECMON IRQ */
95
#define IRQn_RTC 82
/* RTC IRQ */
96
#define IRQn_BUTN 83
/* BUTN IRQ */
97
#define IRQn_BGPIO 84
/* BGPIO IRQ */
98
#define IRQn_BVIO 85
/* BVIO IRQ */
99
#define IRQn_BROWNOUT 86
/* BROWNOUT IRQ */
100
#define IRQn_SYSCTL 87
/* SYSCTL IRQ */
101
#define IRQn_DEBUG_0 88
/* DEBUG[0] IRQ */
102
#define IRQn_DEBUG_1 89
/* DEBUG[1] IRQ */
103
#define IRQn_LIN0 90
/* LIN0 IRQ */
104
#define IRQn_LIN1 91
/* LIN1 IRQ */
105
#define IRQn_LIN2 92
/* LIN2 IRQ */
106
#define IRQn_LIN3 93
/* LIN3 IRQ */
107
108
#include "
hpm_common.h
"
109
110
#include "hpm_gpio_regs.h"
111
/* Address of GPIO instances */
112
/* FGPIO base address */
113
#define HPM_FGPIO_BASE (0xC0000UL)
114
/* FGPIO base pointer */
115
#define HPM_FGPIO ((GPIO_Type *) HPM_FGPIO_BASE)
116
/* GPIO0 base address */
117
#define HPM_GPIO0_BASE (0xF0000000UL)
118
/* GPIO0 base pointer */
119
#define HPM_GPIO0 ((GPIO_Type *) HPM_GPIO0_BASE)
120
/* GPIO1 base address */
121
#define HPM_GPIO1_BASE (0xF0004000UL)
122
/* GPIO1 base pointer */
123
#define HPM_GPIO1 ((GPIO_Type *) HPM_GPIO1_BASE)
124
/* PGPIO base address */
125
#define HPM_PGPIO_BASE (0xF40DC000UL)
126
/* PGPIO base pointer */
127
#define HPM_PGPIO ((GPIO_Type *) HPM_PGPIO_BASE)
128
/* BGPIO base address */
129
#define HPM_BGPIO_BASE (0xF5014000UL)
130
/* BGPIO base pointer */
131
#define HPM_BGPIO ((GPIO_Type *) HPM_BGPIO_BASE)
132
133
/* Address of DM instances */
134
/* DM base address */
135
#define HPM_DM_BASE (0x30000000UL)
136
137
#include "hpm_plic_regs.h"
138
/* Address of PLIC instances */
139
/* PLIC base address */
140
#define HPM_PLIC_BASE (0xE4000000UL)
141
/* PLIC base pointer */
142
#define HPM_PLIC ((PLIC_Type *) HPM_PLIC_BASE)
143
144
#include "hpm_mchtmr_regs.h"
145
/* Address of MCHTMR instances */
146
/* MCHTMR base address */
147
#define HPM_MCHTMR_BASE (0xE6000000UL)
148
/* MCHTMR base pointer */
149
#define HPM_MCHTMR ((MCHTMR_Type *) HPM_MCHTMR_BASE)
150
151
#include "hpm_plic_sw_regs.h"
152
/* Address of PLICSW instances */
153
/* PLICSW base address */
154
#define HPM_PLICSW_BASE (0xE6400000UL)
155
/* PLICSW base pointer */
156
#define HPM_PLICSW ((PLIC_SW_Type *) HPM_PLICSW_BASE)
157
158
#include "hpm_gpiom_regs.h"
159
/* Address of GPIOM instances */
160
/* GPIOM base address */
161
#define HPM_GPIOM_BASE (0xF0008000UL)
162
/* GPIOM base pointer */
163
#define HPM_GPIOM ((GPIOM_Type *) HPM_GPIOM_BASE)
164
165
#include "hpm_adc16_regs.h"
166
/* Address of ADC16 instances */
167
/* ADC0 base address */
168
#define HPM_ADC0_BASE (0xF0010000UL)
169
/* ADC0 base pointer */
170
#define HPM_ADC0 ((ADC16_Type *) HPM_ADC0_BASE)
171
/* ADC1 base address */
172
#define HPM_ADC1_BASE (0xF0014000UL)
173
/* ADC1 base pointer */
174
#define HPM_ADC1 ((ADC16_Type *) HPM_ADC1_BASE)
175
/* ADC2 base address */
176
#define HPM_ADC2_BASE (0xF0018000UL)
177
/* ADC2 base pointer */
178
#define HPM_ADC2 ((ADC16_Type *) HPM_ADC2_BASE)
179
180
#include "hpm_sdm_regs.h"
181
/* Address of SDM instances */
182
/* SDM base address */
183
#define HPM_SDM_BASE (0xF001C000UL)
184
/* SDM base pointer */
185
#define HPM_SDM ((SDM_Type *) HPM_SDM_BASE)
186
187
#include "hpm_acmp_regs.h"
188
/* Address of ACMP instances */
189
/* ACMP base address */
190
#define HPM_ACMP_BASE (0xF0020000UL)
191
/* ACMP base pointer */
192
#define HPM_ACMP ((ACMP_Type *) HPM_ACMP_BASE)
193
194
#include "hpm_dac_regs.h"
195
/* Address of DAC instances */
196
/* DAC0 base address */
197
#define HPM_DAC0_BASE (0xF0024000UL)
198
/* DAC0 base pointer */
199
#define HPM_DAC0 ((DAC_Type *) HPM_DAC0_BASE)
200
/* DAC1 base address */
201
#define HPM_DAC1_BASE (0xF0028000UL)
202
/* DAC1 base pointer */
203
#define HPM_DAC1 ((DAC_Type *) HPM_DAC1_BASE)
204
205
#include "hpm_spi_regs.h"
206
/* Address of SPI instances */
207
/* SPI0 base address */
208
#define HPM_SPI0_BASE (0xF0030000UL)
209
/* SPI0 base pointer */
210
#define HPM_SPI0 ((SPI_Type *) HPM_SPI0_BASE)
211
/* SPI1 base address */
212
#define HPM_SPI1_BASE (0xF0034000UL)
213
/* SPI1 base pointer */
214
#define HPM_SPI1 ((SPI_Type *) HPM_SPI1_BASE)
215
/* SPI2 base address */
216
#define HPM_SPI2_BASE (0xF0038000UL)
217
/* SPI2 base pointer */
218
#define HPM_SPI2 ((SPI_Type *) HPM_SPI2_BASE)
219
/* SPI3 base address */
220
#define HPM_SPI3_BASE (0xF003C000UL)
221
/* SPI3 base pointer */
222
#define HPM_SPI3 ((SPI_Type *) HPM_SPI3_BASE)
223
224
#include "hpm_uart_regs.h"
225
/* Address of UART instances */
226
/* UART0 base address */
227
#define HPM_UART0_BASE (0xF0040000UL)
228
/* UART0 base pointer */
229
#define HPM_UART0 ((UART_Type *) HPM_UART0_BASE)
230
/* UART1 base address */
231
#define HPM_UART1_BASE (0xF0044000UL)
232
/* UART1 base pointer */
233
#define HPM_UART1 ((UART_Type *) HPM_UART1_BASE)
234
/* UART2 base address */
235
#define HPM_UART2_BASE (0xF0048000UL)
236
/* UART2 base pointer */
237
#define HPM_UART2 ((UART_Type *) HPM_UART2_BASE)
238
/* UART3 base address */
239
#define HPM_UART3_BASE (0xF004C000UL)
240
/* UART3 base pointer */
241
#define HPM_UART3 ((UART_Type *) HPM_UART3_BASE)
242
/* UART4 base address */
243
#define HPM_UART4_BASE (0xF0050000UL)
244
/* UART4 base pointer */
245
#define HPM_UART4 ((UART_Type *) HPM_UART4_BASE)
246
/* UART5 base address */
247
#define HPM_UART5_BASE (0xF0054000UL)
248
/* UART5 base pointer */
249
#define HPM_UART5 ((UART_Type *) HPM_UART5_BASE)
250
/* UART6 base address */
251
#define HPM_UART6_BASE (0xF0058000UL)
252
/* UART6 base pointer */
253
#define HPM_UART6 ((UART_Type *) HPM_UART6_BASE)
254
/* UART7 base address */
255
#define HPM_UART7_BASE (0xF005C000UL)
256
/* UART7 base pointer */
257
#define HPM_UART7 ((UART_Type *) HPM_UART7_BASE)
258
/* PUART base address */
259
#define HPM_PUART_BASE (0xF40E4000UL)
260
/* PUART base pointer */
261
#define HPM_PUART ((UART_Type *) HPM_PUART_BASE)
262
263
#include "hpm_mcan_regs.h"
264
/* Address of MCAN instances */
265
/* MCAN0 base address */
266
#define HPM_MCAN0_BASE (0xF0080000UL)
267
/* MCAN0 base pointer */
268
#define HPM_MCAN0 ((MCAN_Type *) HPM_MCAN0_BASE)
269
/* MCAN1 base address */
270
#define HPM_MCAN1_BASE (0xF0084000UL)
271
/* MCAN1 base pointer */
272
#define HPM_MCAN1 ((MCAN_Type *) HPM_MCAN1_BASE)
273
/* MCAN2 base address */
274
#define HPM_MCAN2_BASE (0xF0088000UL)
275
/* MCAN2 base pointer */
276
#define HPM_MCAN2 ((MCAN_Type *) HPM_MCAN2_BASE)
277
/* MCAN3 base address */
278
#define HPM_MCAN3_BASE (0xF008C000UL)
279
/* MCAN3 base pointer */
280
#define HPM_MCAN3 ((MCAN_Type *) HPM_MCAN3_BASE)
281
282
#include "hpm_wdg_regs.h"
283
/* Address of WDOG instances */
284
/* WDG0 base address */
285
#define HPM_WDG0_BASE (0xF0090000UL)
286
/* WDG0 base pointer */
287
#define HPM_WDG0 ((WDG_Type *) HPM_WDG0_BASE)
288
/* WDG1 base address */
289
#define HPM_WDG1_BASE (0xF0094000UL)
290
/* WDG1 base pointer */
291
#define HPM_WDG1 ((WDG_Type *) HPM_WDG1_BASE)
292
/* PWDG base address */
293
#define HPM_PWDG_BASE (0xF40E8000UL)
294
/* PWDG base pointer */
295
#define HPM_PWDG ((WDG_Type *) HPM_PWDG_BASE)
296
297
#include "hpm_mbx_regs.h"
298
/* Address of MBX instances */
299
/* MBX0A base address */
300
#define HPM_MBX0A_BASE (0xF00A0000UL)
301
/* MBX0A base pointer */
302
#define HPM_MBX0A ((MBX_Type *) HPM_MBX0A_BASE)
303
/* MBX0B base address */
304
#define HPM_MBX0B_BASE (0xF00A4000UL)
305
/* MBX0B base pointer */
306
#define HPM_MBX0B ((MBX_Type *) HPM_MBX0B_BASE)
307
/* MBX1A base address */
308
#define HPM_MBX1A_BASE (0xF00A8000UL)
309
/* MBX1A base pointer */
310
#define HPM_MBX1A ((MBX_Type *) HPM_MBX1A_BASE)
311
/* MBX1B base address */
312
#define HPM_MBX1B_BASE (0xF00AC000UL)
313
/* MBX1B base pointer */
314
#define HPM_MBX1B ((MBX_Type *) HPM_MBX1B_BASE)
315
316
#include "hpm_ptpc_regs.h"
317
/* Address of PTPC instances */
318
/* PTPC base address */
319
#define HPM_PTPC_BASE (0xF00B0000UL)
320
/* PTPC base pointer */
321
#define HPM_PTPC ((PTPC_Type *) HPM_PTPC_BASE)
322
323
#include "hpm_crc_regs.h"
324
/* Address of CRC instances */
325
/* CRC base address */
326
#define HPM_CRC_BASE (0xF00B8000UL)
327
/* CRC base pointer */
328
#define HPM_CRC ((CRC_Type *) HPM_CRC_BASE)
329
330
#include "hpm_dmamux_regs.h"
331
/* Address of DMAMUX instances */
332
/* DMAMUX base address */
333
#define HPM_DMAMUX_BASE (0xF00C0000UL)
334
/* DMAMUX base pointer */
335
#define HPM_DMAMUX ((DMAMUX_Type *) HPM_DMAMUX_BASE)
336
337
#include "hpm_dma_regs.h"
338
/* Address of DMA instances */
339
/* HDMA base address */
340
#define HPM_HDMA_BASE (0xF00C4000UL)
341
/* HDMA base pointer */
342
#define HPM_HDMA ((DMA_Type *) HPM_HDMA_BASE)
343
/* XDMA base address */
344
#define HPM_XDMA_BASE (0xF3048000UL)
345
/* XDMA base pointer */
346
#define HPM_XDMA ((DMA_Type *) HPM_XDMA_BASE)
347
348
#include "hpm_rng_regs.h"
349
/* Address of RNG instances */
350
/* RNG base address */
351
#define HPM_RNG_BASE (0xF00C8000UL)
352
/* RNG base pointer */
353
#define HPM_RNG ((RNG_Type *) HPM_RNG_BASE)
354
355
#include "hpm_keym_regs.h"
356
/* Address of KEYM instances */
357
/* KEYM base address */
358
#define HPM_KEYM_BASE (0xF00CC000UL)
359
/* KEYM base pointer */
360
#define HPM_KEYM ((KEYM_Type *) HPM_KEYM_BASE)
361
362
#include "hpm_pwm_regs.h"
363
/* Address of PWM instances */
364
/* PWM0 base address */
365
#define HPM_PWM0_BASE (0xF0200000UL)
366
/* PWM0 base pointer */
367
#define HPM_PWM0 ((PWM_Type *) HPM_PWM0_BASE)
368
/* PWM1 base address */
369
#define HPM_PWM1_BASE (0xF0210000UL)
370
/* PWM1 base pointer */
371
#define HPM_PWM1 ((PWM_Type *) HPM_PWM1_BASE)
372
/* PWM2 base address */
373
#define HPM_PWM2_BASE (0xF0220000UL)
374
/* PWM2 base pointer */
375
#define HPM_PWM2 ((PWM_Type *) HPM_PWM2_BASE)
376
/* PWM3 base address */
377
#define HPM_PWM3_BASE (0xF0230000UL)
378
/* PWM3 base pointer */
379
#define HPM_PWM3 ((PWM_Type *) HPM_PWM3_BASE)
380
381
#include "hpm_hall_regs.h"
382
/* Address of HALL instances */
383
/* HALL0 base address */
384
#define HPM_HALL0_BASE (0xF0204000UL)
385
/* HALL0 base pointer */
386
#define HPM_HALL0 ((HALL_Type *) HPM_HALL0_BASE)
387
/* HALL1 base address */
388
#define HPM_HALL1_BASE (0xF0214000UL)
389
/* HALL1 base pointer */
390
#define HPM_HALL1 ((HALL_Type *) HPM_HALL1_BASE)
391
/* HALL2 base address */
392
#define HPM_HALL2_BASE (0xF0224000UL)
393
/* HALL2 base pointer */
394
#define HPM_HALL2 ((HALL_Type *) HPM_HALL2_BASE)
395
/* HALL3 base address */
396
#define HPM_HALL3_BASE (0xF0234000UL)
397
/* HALL3 base pointer */
398
#define HPM_HALL3 ((HALL_Type *) HPM_HALL3_BASE)
399
400
#include "hpm_qei_regs.h"
401
/* Address of QEI instances */
402
/* QEI0 base address */
403
#define HPM_QEI0_BASE (0xF0208000UL)
404
/* QEI0 base pointer */
405
#define HPM_QEI0 ((QEI_Type *) HPM_QEI0_BASE)
406
/* QEI1 base address */
407
#define HPM_QEI1_BASE (0xF0218000UL)
408
/* QEI1 base pointer */
409
#define HPM_QEI1 ((QEI_Type *) HPM_QEI1_BASE)
410
/* QEI2 base address */
411
#define HPM_QEI2_BASE (0xF0228000UL)
412
/* QEI2 base pointer */
413
#define HPM_QEI2 ((QEI_Type *) HPM_QEI2_BASE)
414
/* QEI3 base address */
415
#define HPM_QEI3_BASE (0xF0238000UL)
416
/* QEI3 base pointer */
417
#define HPM_QEI3 ((QEI_Type *) HPM_QEI3_BASE)
418
419
#include "hpm_trgm_regs.h"
420
/* Address of TRGM instances */
421
/* TRGM0 base address */
422
#define HPM_TRGM0_BASE (0xF020C000UL)
423
/* TRGM0 base pointer */
424
#define HPM_TRGM0 ((TRGM_Type *) HPM_TRGM0_BASE)
425
/* TRGM1 base address */
426
#define HPM_TRGM1_BASE (0xF021C000UL)
427
/* TRGM1 base pointer */
428
#define HPM_TRGM1 ((TRGM_Type *) HPM_TRGM1_BASE)
429
/* TRGM2 base address */
430
#define HPM_TRGM2_BASE (0xF022C000UL)
431
/* TRGM2 base pointer */
432
#define HPM_TRGM2 ((TRGM_Type *) HPM_TRGM2_BASE)
433
/* TRGM3 base address */
434
#define HPM_TRGM3_BASE (0xF023C000UL)
435
/* TRGM3 base pointer */
436
#define HPM_TRGM3 ((TRGM_Type *) HPM_TRGM3_BASE)
437
438
#include "
hpm_pla_regs.h
"
439
/* Address of PLA instances */
440
/* PLA0 base address */
441
#define HPM_PLA0_BASE (0xF020E000UL)
442
/* PLA0 base pointer */
443
#define HPM_PLA0 ((PLA_Type *) HPM_PLA0_BASE)
444
/* PLA1 base address */
445
#define HPM_PLA1_BASE (0xF021E000UL)
446
/* PLA1 base pointer */
447
#define HPM_PLA1 ((PLA_Type *) HPM_PLA1_BASE)
448
449
#include "hpm_synt_regs.h"
450
/* Address of SYNT instances */
451
/* SYNT base address */
452
#define HPM_SYNT_BASE (0xF0240000UL)
453
/* SYNT base pointer */
454
#define HPM_SYNT ((SYNT_Type *) HPM_SYNT_BASE)
455
456
#include "hpm_usb_regs.h"
457
/* Address of USB instances */
458
/* USB0 base address */
459
#define HPM_USB0_BASE (0xF2020000UL)
460
/* USB0 base pointer */
461
#define HPM_USB0 ((USB_Type *) HPM_USB0_BASE)
462
463
#include "hpm_gptmr_regs.h"
464
/* Address of GPTMR instances */
465
/* GPTMR0 base address */
466
#define HPM_GPTMR0_BASE (0xF3000000UL)
467
/* GPTMR0 base pointer */
468
#define HPM_GPTMR0 ((GPTMR_Type *) HPM_GPTMR0_BASE)
469
/* GPTMR1 base address */
470
#define HPM_GPTMR1_BASE (0xF3004000UL)
471
/* GPTMR1 base pointer */
472
#define HPM_GPTMR1 ((GPTMR_Type *) HPM_GPTMR1_BASE)
473
/* GPTMR2 base address */
474
#define HPM_GPTMR2_BASE (0xF3008000UL)
475
/* GPTMR2 base pointer */
476
#define HPM_GPTMR2 ((GPTMR_Type *) HPM_GPTMR2_BASE)
477
/* GPTMR3 base address */
478
#define HPM_GPTMR3_BASE (0xF300C000UL)
479
/* GPTMR3 base pointer */
480
#define HPM_GPTMR3 ((GPTMR_Type *) HPM_GPTMR3_BASE)
481
/* PTMR base address */
482
#define HPM_PTMR_BASE (0xF40E0000UL)
483
/* PTMR base pointer */
484
#define HPM_PTMR ((GPTMR_Type *) HPM_PTMR_BASE)
485
486
#include "hpm_i2c_regs.h"
487
/* Address of I2C instances */
488
/* I2C0 base address */
489
#define HPM_I2C0_BASE (0xF3020000UL)
490
/* I2C0 base pointer */
491
#define HPM_I2C0 ((I2C_Type *) HPM_I2C0_BASE)
492
/* I2C1 base address */
493
#define HPM_I2C1_BASE (0xF3024000UL)
494
/* I2C1 base pointer */
495
#define HPM_I2C1 ((I2C_Type *) HPM_I2C1_BASE)
496
/* I2C2 base address */
497
#define HPM_I2C2_BASE (0xF3028000UL)
498
/* I2C2 base pointer */
499
#define HPM_I2C2 ((I2C_Type *) HPM_I2C2_BASE)
500
/* I2C3 base address */
501
#define HPM_I2C3_BASE (0xF302C000UL)
502
/* I2C3 base pointer */
503
#define HPM_I2C3 ((I2C_Type *) HPM_I2C3_BASE)
504
505
#include "
hpm_lin_regs.h
"
506
/* Address of LIN instances */
507
/* LIN0 base address */
508
#define HPM_LIN0_BASE (0xF3030000UL)
509
/* LIN0 base pointer */
510
#define HPM_LIN0 ((LIN_Type *) HPM_LIN0_BASE)
511
/* LIN1 base address */
512
#define HPM_LIN1_BASE (0xF3034000UL)
513
/* LIN1 base pointer */
514
#define HPM_LIN1 ((LIN_Type *) HPM_LIN1_BASE)
515
/* LIN2 base address */
516
#define HPM_LIN2_BASE (0xF3038000UL)
517
/* LIN2 base pointer */
518
#define HPM_LIN2 ((LIN_Type *) HPM_LIN2_BASE)
519
/* LIN3 base address */
520
#define HPM_LIN3_BASE (0xF303C000UL)
521
/* LIN3 base pointer */
522
#define HPM_LIN3 ((LIN_Type *) HPM_LIN3_BASE)
523
524
#include "hpm_sdp_regs.h"
525
/* Address of SDP instances */
526
/* SDP base address */
527
#define HPM_SDP_BASE (0xF304C000UL)
528
/* SDP base pointer */
529
#define HPM_SDP ((SDP_Type *) HPM_SDP_BASE)
530
531
/* Address of ROMC instances */
532
/* ROMC base address */
533
#define HPM_ROMC_BASE (0xF3054000UL)
534
535
#include "hpm_sysctl_regs.h"
536
/* Address of SYSCTL instances */
537
/* SYSCTL base address */
538
#define HPM_SYSCTL_BASE (0xF4000000UL)
539
/* SYSCTL base pointer */
540
#define HPM_SYSCTL ((SYSCTL_Type *) HPM_SYSCTL_BASE)
541
542
#include "hpm_ioc_regs.h"
543
/* Address of IOC instances */
544
/* IOC base address */
545
#define HPM_IOC_BASE (0xF4040000UL)
546
/* IOC base pointer */
547
#define HPM_IOC ((IOC_Type *) HPM_IOC_BASE)
548
/* PIOC base address */
549
#define HPM_PIOC_BASE (0xF40D8000UL)
550
/* PIOC base pointer */
551
#define HPM_PIOC ((IOC_Type *) HPM_PIOC_BASE)
552
/* BIOC base address */
553
#define HPM_BIOC_BASE (0xF5010000UL)
554
/* BIOC base pointer */
555
#define HPM_BIOC ((IOC_Type *) HPM_BIOC_BASE)
556
557
#include "hpm_otp_regs.h"
558
/* Address of OTP instances */
559
/* OTPSHW base address */
560
#define HPM_OTPSHW_BASE (0xF4080000UL)
561
/* OTPSHW base pointer */
562
#define HPM_OTPSHW ((OTP_Type *) HPM_OTPSHW_BASE)
563
/* OTP base address */
564
#define HPM_OTP_BASE (0xF40C8000UL)
565
/* OTP base pointer */
566
#define HPM_OTP ((OTP_Type *) HPM_OTP_BASE)
567
568
#include "hpm_ppor_regs.h"
569
/* Address of PPOR instances */
570
/* PPOR base address */
571
#define HPM_PPOR_BASE (0xF40C0000UL)
572
/* PPOR base pointer */
573
#define HPM_PPOR ((PPOR_Type *) HPM_PPOR_BASE)
574
575
#include "hpm_pcfg_regs.h"
576
/* Address of PCFG instances */
577
/* PCFG base address */
578
#define HPM_PCFG_BASE (0xF40C4000UL)
579
/* PCFG base pointer */
580
#define HPM_PCFG ((PCFG_Type *) HPM_PCFG_BASE)
581
582
#include "hpm_psec_regs.h"
583
/* Address of PSEC instances */
584
/* PSEC base address */
585
#define HPM_PSEC_BASE (0xF40CC000UL)
586
/* PSEC base pointer */
587
#define HPM_PSEC ((PSEC_Type *) HPM_PSEC_BASE)
588
589
#include "hpm_pmon_regs.h"
590
/* Address of PMON instances */
591
/* PMON base address */
592
#define HPM_PMON_BASE (0xF40D0000UL)
593
/* PMON base pointer */
594
#define HPM_PMON ((PMON_Type *) HPM_PMON_BASE)
595
596
#include "hpm_pgpr_regs.h"
597
/* Address of PGPR instances */
598
/* PGPR base address */
599
#define HPM_PGPR_BASE (0xF40D4000UL)
600
/* PGPR base pointer */
601
#define HPM_PGPR ((PGPR_Type *) HPM_PGPR_BASE)
602
603
#include "hpm_pllctlv2_regs.h"
604
/* Address of PLLCTLV2 instances */
605
/* PLLCTLV2 base address */
606
#define HPM_PLLCTLV2_BASE (0xF4100000UL)
607
/* PLLCTLV2 base pointer */
608
#define HPM_PLLCTLV2 ((PLLCTLV2_Type *) HPM_PLLCTLV2_BASE)
609
610
#include "hpm_tsns_regs.h"
611
/* Address of TSNS instances */
612
/* TSNS base address */
613
#define HPM_TSNS_BASE (0xF4104000UL)
614
/* TSNS base pointer */
615
#define HPM_TSNS ((TSNS_Type *) HPM_TSNS_BASE)
616
617
#include "hpm_bacc_regs.h"
618
/* Address of BACC instances */
619
/* BACC base address */
620
#define HPM_BACC_BASE (0xF5000000UL)
621
/* BACC base pointer */
622
#define HPM_BACC ((BACC_Type *) HPM_BACC_BASE)
623
624
#include "hpm_bpor_regs.h"
625
/* Address of BPOR instances */
626
/* BPOR base address */
627
#define HPM_BPOR_BASE (0xF5004000UL)
628
/* BPOR base pointer */
629
#define HPM_BPOR ((BPOR_Type *) HPM_BPOR_BASE)
630
631
#include "hpm_bcfg_regs.h"
632
/* Address of BCFG instances */
633
/* BCFG base address */
634
#define HPM_BCFG_BASE (0xF5008000UL)
635
/* BCFG base pointer */
636
#define HPM_BCFG ((BCFG_Type *) HPM_BCFG_BASE)
637
638
#include "hpm_butn_regs.h"
639
/* Address of BUTN instances */
640
/* BUTN base address */
641
#define HPM_BUTN_BASE (0xF500C000UL)
642
/* BUTN base pointer */
643
#define HPM_BUTN ((BUTN_Type *) HPM_BUTN_BASE)
644
645
#include "hpm_bgpr_regs.h"
646
/* Address of BGPR instances */
647
/* BGPR base address */
648
#define HPM_BGPR_BASE (0xF5018000UL)
649
/* BGPR base pointer */
650
#define HPM_BGPR ((BGPR_Type *) HPM_BGPR_BASE)
651
652
#include "hpm_bsec_regs.h"
653
/* Address of BSEC instances */
654
/* BSEC base address */
655
#define HPM_BSEC_BASE (0xF5040000UL)
656
/* BSEC base pointer */
657
#define HPM_BSEC ((BSEC_Type *) HPM_BSEC_BASE)
658
659
#include "hpm_rtc_regs.h"
660
/* Address of RTC instances */
661
/* RTC base address */
662
#define HPM_RTC_BASE (0xF5044000UL)
663
/* RTC base pointer */
664
#define HPM_RTC ((RTC_Type *) HPM_RTC_BASE)
665
666
#include "hpm_bkey_regs.h"
667
/* Address of BKEY instances */
668
/* BKEY base address */
669
#define HPM_BKEY_BASE (0xF5048000UL)
670
/* BKEY base pointer */
671
#define HPM_BKEY ((BKEY_Type *) HPM_BKEY_BASE)
672
673
#include "hpm_bmon_regs.h"
674
/* Address of BMON instances */
675
/* BMON base address */
676
#define HPM_BMON_BASE (0xF504C000UL)
677
/* BMON base pointer */
678
#define HPM_BMON ((BMON_Type *) HPM_BMON_BASE)
679
680
#include "hpm_tamp_regs.h"
681
/* Address of TAMP instances */
682
/* TAMP base address */
683
#define HPM_TAMP_BASE (0xF5050000UL)
684
/* TAMP base pointer */
685
#define HPM_TAMP ((TAMP_Type *) HPM_TAMP_BASE)
686
687
#include "hpm_mono_regs.h"
688
/* Address of MONO instances */
689
/* MONO base address */
690
#define HPM_MONO_BASE (0xF5054000UL)
691
/* MONO base pointer */
692
#define HPM_MONO ((MONO_Type *) HPM_MONO_BASE)
693
694
695
#include "
riscv/riscv_core.h
"
696
#include "
hpm_csr_regs.h
"
697
#include "
hpm_interrupt.h
"
698
#include "
hpm_misc.h
"
699
#include "
hpm_otp_table.h
"
700
#include "
hpm_dmamux_src.h
"
701
#include "
hpm_trgmmux_src.h
"
702
#include "
hpm_iomux.h
"
703
#include "
hpm_pmic_iomux.h
"
704
#include "
hpm_batt_iomux.h
"
705
#endif
/* HPM_SOC_H */
hpm_batt_iomux.h
hpm_csr_regs.h
hpm_dmamux_src.h
hpm_interrupt.h
hpm_iomux.h
hpm_misc.h
hpm_otp_table.h
hpm_pmic_iomux.h
hpm_trgmmux_src.h
hpm_common.h
hpm_lin_regs.h
hpm_pla_regs.h
riscv_core.h
soc
HPM6200
HPM6280
hpm_soc.h
Generated on Tue Oct 8 2024 00:59:02 for HPM SDK by
1.9.1