aboutsummaryrefslogtreecommitdiff
path: root/riscv/dts.h
AgeCommit message (Collapse)AuthorFilesLines
2023-11-04expose pmp granularity as a cli option.Karthik B K1-0/+1
PMP Granularity is made available as a command line option. The default value is 4 Bytes. The value can be changed by passing the option --pmp-granularity=<value> to spike. Signed-off-by: Karthik B K <karthik.bk@incoresemi.com>
2023-07-20Introduce `abstract_mem_t` to allow custom implementationsMichal Terepeta1-1/+1
This change allows to create custom implementations of `abstract_mem_t` and inject them when constructing `sim_t`. The current `mem_t` implementation remains unchanged. Fixes #1408.
2023-06-20ns16550_t: ns16550 should parse interrupt id from the fdtJerry Zhao1-1/+1
2023-06-20dts: Expose fdt_get_node_addr_size function in headerJerry Zhao1-0/+2
2023-06-20dts_t: Add dts.h to list of installed headersJerry Zhao1-1/+0
2023-06-20sim_t: Move dts device node construction/parsing to device_factoriesJerry Zhao1-1/+2
2023-06-20dts: void* fdt arg to parse_fdt should be constJerry Zhao1-9/+9
2022-10-17Merge branch 'master' into plic_uart_v1plic_uart_v1Andrew Waterman1-0/+1
2022-10-14Support command-line configuration of number of pmpregionsJerry Zhao1-0/+1
2022-04-20Add ns16550 serial device emulationAnup Patel1-0/+3
The ns16550 is a widely use serial device so we add a simplified ns16550 device emulation which is good enough for Linux, OpenSBI, and hypervisors to use as console. Signed-off-by: Anup Patel <anup@brainfault.org>
2022-04-20Add PLIC emulationAnup Patel1-0/+2
We need an interrupt controller in Spike which will allow us to emulate more real-world devices such as UART, VirtIO net, VirtIO block, etc. The RISC-V PLIC (or SiFive PLIC) is the commonly used interrupt controller in existing RISC-V platforms so this patch adds PLIC emulation for Spike. Signed-off-by: Anup Patel <anup@brainfault.org>
2022-02-21Avoid an unnecessary strcpy (#925)Rupert Swarbrick1-1/+1
We don't actually know that the field in the DTB points at a string that's less than 256 bytes long, I don't think, so this could probably cause a buffer overflow on the stack. Anyway, it turns out that there's no need to copy anything anyway, so let's just update a char** instead.
2021-02-04Refactor headersAndrew Waterman1-0/+1
2020-11-15dts: config pmp attribute by each core's settingChih-Min Chao1-4/+2
The original implementation only uses the value in first core and apply it to other core. The patch makes the configuration hetergeneous for differenct cores. Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
2020-11-11dts: extend dts api to get info of each cpuChih-Min Chao1-0/+5
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
2020-07-09Add bootargs command-line option to SpikeAnup Patel1-0/+1
We add bootargs command-line option to Spike which allows us to provide custom kernel parameters to Linux and Xvisor. Signed-off-by: Anup Patel <anup.patel@wdc.com>
2020-05-18fix clang compile error wthin FDT parsingScott Beamer1-3/+3
2020-04-27fdt: add pmp granularity functionChih-Min Chao1-1/+4
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
2020-04-27fdt: add pmp parsing helperChih-Min Chao1-1/+1
Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
2020-04-27fdt: add clint base address parsing helperChih-Min Chao1-0/+3
borrow from OpenSBI Signed-off-by: Chih-Min Chao <chihmin.chao@sifive.com>
2020-02-14Make spike capable of booting LinuxAnup Patel1-0/+1
Latest Linux does not boot Spike mainly because: 1. Spike does not set bootargs in DTS 2. Spike does not provide mechanism to load initrd for Linux This patch addresses both above issues and we can now get latest Linux to prompt on Spike. Signed-off-by: Anup Patel <anup.patel@wdc.com>
2018-05-18Extract out device-tree generation and compilation into an exported api. (#197)Prashanth Mundkur1-0/+15