buildroot/board/spike/riscv32
Julien Olivain a83ab3f4c8 configs/spike_riscv32: new defconfig
Buildroot commit [1] updated riscv-isa-sim (Spike), which now includes
a NS16550 uart emulation. This can be used by RV32 Linux Kernel. This
commit introduce a defconfig for running Linux on Spike RISC-V 32-bit
ISA simulator.

[1] 853b7661bf

Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-07-12 15:57:13 +02:00
..
patches configs/spike_riscv32: new defconfig 2024-07-12 15:57:13 +02:00
readme.txt configs/spike_riscv32: new defconfig 2024-07-12 15:57:13 +02:00
start.sh configs/spike_riscv32: new defconfig 2024-07-12 15:57:13 +02:00

Linux on Spike RISC-V 32-bit ISA simulator
==========================================

This configuration provides a minimal working setup to run a Linux
kernel in the Spike RISC-V ISA simulator.

The Spike ISA simulator can be an interresting alternative to Qemu, in
some specific cases. For example: simulating new instructions (see [1]),
simulating riscv-openocd/gdb debug sessions (see [2], [3]), or
generating an accurate per-instruction log of execution (see
riscv-isa-sim spike -l option)...

To run Buildroot Linux in Spike, use the commands:

    make spike_riscv32_defconfig
    make
    ./board/spike/riscv32/start.sh

The boot is made with the standard RISC-V OpenSBI boot loader. In
order to keep the simulation simple, the rootfs is passed as an initrd
ramfs.

[1].
https://github.com/riscv-software-src/riscv-isa-sim/tree/v1.1.0#simulating-a-new-instruction

[2].
https://github.com/riscv-software-src/riscv-isa-sim/tree/v1.1.0#debugging-with-gdb

[3].
https://github.com/riscv-collab/riscv-openocd