Skip to content
This repository was archived by the owner on Apr 13, 2019. It is now read-only.
Mark Corbin edited this page Sep 28, 2018 · 11 revisions

Welcome to the riscv-buildroot wiki

The Master branch is a snapshot of the main Buildroot repository. All riscv updates are being added to the riscv-start branch.

Building
Changes
TODO

Building

To build a riscv64 toolchain, kernel and root filesystem:

Get the repository

git clone https://github.com/riscv/riscv-buildroot
cd riscv-buildroot
git checkout riscv-start

Configure Buildroot

make qemu_riscv64_virt_defconfig

Configure any additional packages or settings

make menuconfig

Build the system

make

The kernel image and root filesystem can then be found in output/images/. The kernel vmlinux file is automatically combined with the bootloader to produce a 'bbl' file.

Boot with QEMU

qemu-system-riscv64 -M virt -kernel output/images/bbl -append "root=/dev/vda ro console=ttyS0" -drive file=output/images/rootfs.ext2,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -netdev user,id=net0 -device virtio-net-device,netdev=net0 -nographic

Changes

25th September 2018

  • All changes up to this point have now been committed to the official Buildroot repository.

12th September 2018

  • Added new patches and updated existing RISC-V support to reflect the patches that have been submitted to the Buildroot mailing list.
  • Changes include a) removal of riscv32 configuration framework as it cannot currently be tested, b) inclusion of the Berkeley Boot Loader (BBL) and c) addition of a default config for building a qemu-bootable system.

21st August 2018

  • Allow toolchains to be built against custom kernel headers. This allows toolchains to built against custom kernel headers without building a full kernel (particularly useful for RISCV toolchain builds where updated kernel headers may not have made it into the mainline kernel yet).

15th August 2018

  • Added basic riscv64 support for configuration and building of a system using a Buildroot generated glibc cross toolchain.
  • Added riscv32 configuration support ready for future implementation.

TODO

Nothing planned at present.

Clone this wiki locally