Github: http://github.com/ultraembedded/riscv-linux-boot
A very simple bootstrap for starting the Linux kernel on RISC-V.
This takes a vmlinux ELF and a device tree (DTS) file, converts them to binaries,
and then embeds these into the bootstrap ELF.
If atomic instruction support is not present on the target platform, the atomic instruction set will be emulated in SW.
This bootloader implements the required SBI calls used by standard RISC-V Linux kernel builds.
Used by the biRISC-V core to boot Linux: http://github.com/ultraembedded/biriscv
- UART: Xilinx UARTLite style UART @ 0x92000000
- Timer: Non-std RISC-V mtime, mtimecmp implementation.
git clone https://github.com/ultraembedded/riscv-linux-boot.git
make LINUX_DIR=/path/to/riscv-linux VMLINUX=/path/to/vmlinux[.elf] DTS_FILE=/path/to/config.dts