RISC-V Proxy Kernel
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.
 
 
 
 
 
 
Andrew Waterman 748eee73a1 Improve trap redirection code 10 years ago
bbl Udpate to new PTE format 10 years ago
dummy_payload Refactor pk, bbl, machine into separate libraries 10 years ago
machine Improve trap redirection code 10 years ago
pk zero-extend RV32 physical addresses for HTIF 10 years ago
scripts temporary undoing of renaming 15 years ago
softfloat Begin refactoring emulation code 10 years ago
util speed up memcpy for aligned bases but misaligned length 10 years ago
.gitignore fixed build after repo split 15 years ago
LICENSE add missing LICENSE file 13 years ago
Makefile.in Refactor pk, bbl, machine into separate libraries 10 years ago
README.md Update README 11 years ago
aclocal.m4 Remove vestigial configure search for riscv-isa-run/spike 10 years ago
config.h.in Refactor pk, bbl, machine into separate libraries 10 years ago
configure Remove vestigial configure search for riscv-isa-run/spike 10 years ago
configure.ac Remove vestigial configure search for riscv-isa-run/spike 10 years ago

README.md

RISC-V Proxy Kernel and Boot Loader

About

The RISC-V Proxy Kernel, pk, is a lightweight application execution environment that can host statically-linked RISC-V ELF binaries. It is designed to support tethered RISC-V implementations with limited I/O capability and and thus handles I/O-related system calls by proxying them to a host computer.

This package also contains the Berkeley Boot Loader, bbl, which is a supervisor execution environment for tethered RISC-V systems. It is designed to host the RISC-V Linux port.

Build Steps

We assume that the RISCV environment variable is set to the RISC-V tools install path, and that the riscv-gnu-toolchain package is installed.

$ mkdir build
$ cd build
$ ../configure --prefix=$RISCV/riscv64-unknown-elf --host=riscv64-unknown-elf
$ make
$ make install

Alternatively, the GNU/Linux toolchain may be used to build this package, by setting --host=riscv64-unknown-linux-gnu.