You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
56 lines
2.3 KiB
56 lines
2.3 KiB
/* |
|
* Copyright (c) 2021,2025 Henrik Brix Andersen <henrik@brixandersen.dk> |
|
* |
|
* SPDX-License-Identifier: Apache-2.0 |
|
*/ |
|
|
|
#ifndef _NEORV32_SOC_H |
|
#define _NEORV32_SOC_H |
|
|
|
/* System information (SYSINFO) register offsets */ |
|
#define NEORV32_SYSINFO_CLK 0x00U |
|
#define NEORV32_SYSINFO_MISC 0x04U |
|
#define NEORV32_SYSINFO_SOC 0x08U |
|
#define NEORV32_SYSINFO_CACHE 0x0cU |
|
|
|
/* System information (SYSINFO) MISC register bits */ |
|
#define NEORV32_SYSINFO_MISC_IMEM GENMASK(7, 0) |
|
#define NEORV32_SYSINFO_MISC_DMEM GENMASK(15, 8) |
|
#define NEORV32_SYSINFO_MISC_HART GENMASK(23, 16) |
|
#define NEORV32_SYSINFO_MISC_BOOT GENMASK(31, 24) |
|
|
|
/* System information (SYSINFO) SOC register bits */ |
|
#define NEORV32_SYSINFO_SOC_BOOTLOADER BIT(0) |
|
#define NEORV32_SYSINFO_SOC_XBUS BIT(1) |
|
#define NEORV32_SYSINFO_SOC_IMEM BIT(2) |
|
#define NEORV32_SYSINFO_SOC_DMEM BIT(3) |
|
#define NEORV32_SYSINFO_SOC_OCD BIT(4) |
|
#define NEORV32_SYSINFO_SOC_ICACHE BIT(5) |
|
#define NEORV32_SYSINFO_SOC_DCACHE BIT(6) |
|
#define NEORV32_SYSINFO_SOC_OCD_AUTH BIT(11) |
|
#define NEORV32_SYSINFO_SOC_IMEM_ROM BIT(12) |
|
#define NEORV32_SYSINFO_SOC_IO_TWD BIT(13) |
|
#define NEORV32_SYSINFO_SOC_IO_DMA BIT(14) |
|
#define NEORV32_SYSINFO_SOC_IO_GPIO BIT(15) |
|
#define NEORV32_SYSINFO_SOC_IO_CLINT BIT(16) |
|
#define NEORV32_SYSINFO_SOC_IO_UART0 BIT(17) |
|
#define NEORV32_SYSINFO_SOC_IO_SPI BIT(18) |
|
#define NEORV32_SYSINFO_SOC_IO_TWI BIT(19) |
|
#define NEORV32_SYSINFO_SOC_IO_PWM BIT(20) |
|
#define NEORV32_SYSINFO_SOC_IO_WDT BIT(21) |
|
#define NEORV32_SYSINFO_SOC_IO_CFS BIT(22) |
|
#define NEORV32_SYSINFO_SOC_IO_TRNG BIT(23) |
|
#define NEORV32_SYSINFO_SOC_IO_SDI BIT(24) |
|
#define NEORV32_SYSINFO_SOC_IO_UART1 BIT(25) |
|
#define NEORV32_SYSINFO_SOC_IO_NEOLED BIT(26) |
|
#define NEORV32_SYSINFO_SOC_IO_GPTMR BIT(28) |
|
#define NEORV32_SYSINFO_SOC_IO_SLINK BIT(29) |
|
#define NEORV32_SYSINFO_SOC_IO_ONEWIRE BIT(30) |
|
|
|
/* System information (SYSINFO) CACHE register bits */ |
|
#define NEORV32_SYSINFO_CACHE_INST_BLOCK_SIZE GENMASK(3, 0) |
|
#define NEORV32_SYSINFO_CACHE_INST_NUM_BLOCKS GENMASK(7, 4) |
|
#define NEORV32_SYSINFO_CACHE_DATA_BLOCK_SIZE GENMASK(11, 8) |
|
#define NEORV32_SYSINFO_CACHE_DATA_NUM_BLOCKS GENMASK(15, 12) |
|
|
|
#endif /* _NEORV32_SOC_H */
|
|
|