History of the FreeBSD/RISC-V Port

This page describes the history of the FreeBSD/RISC-V port, an adaptation of the FreeBSD Operating System to run on the RISC-V Instruction-Set Architecture (ISA). As a result of this work, FreeBSD is able to boot to multi-user mode on the Spike simulator and QEMU emulator. Following a number of commits to the FreeBSD subversion repository in January 2016 (see below), FreeBSD was the first operating system to have bootable in-tree support for RISC-V. This work was described in an EE Times article on the January 2016 RISC-V workshop. This work was supported by the DARPA CTSRD Project at the University of Cambridge Computer Laboratory and was led by RuslanBukin.

The FreeBSD Foundation posted a blog article describing the RISC-V porting effort and merge of architectural support to the FreeBSD base system in January 2016.

Source

This page contains some details about the FreeBSD/riscv64 development process. Now that RISC-V is an in-tree supported architecture this information is largely kept here for historical purposes.

Delivery into head:

Review Commit Description
D4445 r292124 kernel-toolchain
D4554 r292407 includes
D4679 r292691 rtld-elf
D4943 r294227 libc/libstand
D4982 r295041 kernel
D5014 r294571 xlint
D5020 r294573 jemalloc
D5021 r294577 compiler-rt
D5035 r294574 libunwind stubs
D5039 r294634 gcc config
D5040 r294662 libproc support
D5046 r294664 elftoolchain
D5048 r294665 usr.bin/ldd
D5064 r294908 libthread_db
D5063 r294912 libthr
D5178 r295253 reuse gp for pcpup
N/A r295972 SMP support
N/A r296614 DDB support
N/A r303660 Privilege v1.9 update
N/A r303908 Operation in machine mode removed
D8529 r308731 Full softfloat and hardfloat support
D11901 r322168 Compiler built-in macros changes
D11800 r322361 Support for privilege spec v1.10
N/A 335007 PLIC
N/A 338467 Make use of SSTATUS_SUM bit

Work on this project was performed by RuslanBukin, ArunThomas, and EdMaste, with RobertWatson, AndrewTurner, DavidChisnall, and others providing advice and moral support.

  • riscv/history.txt
  • Last modified: 2020/02/05 22:35
  • by MitchellHorne