User Tools

Site Tools


developers:env_buildtest

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
developers:env_buildtest [2018/12/04 01:47]
mick
developers:env_buildtest [2019/04/12 19:20] (current)
mick [Cross-compile OpenSBI]
Line 48: Line 48:
 </​code>​ </​code>​
  
 +===== Cross-compile OpenSBI =====
 +
 +A more recent and better maintained alternative to BBL, meant to be the reference SBI implementation,​ is OpenSBI. It can be used both as a library to be used by boot loaders and as a standalone Linux boot loader. It supports various targets including QEMU.
 +
 +<​code>​
 +git clone --depth=1 https://​github.com/​riscv/​opensbi.git <osbi sources dir>
 +cd <osbi sources dir>
 +CROSS_COMPILE=riscv64-unknown-linux-gnu- PLATFORM_RISCV_XLEN=<​32 or 64> \
 +make PLATFORM=<​target name, e.g. qemu/​virt>​
 +</​code>​
 +
 +You may also specify a built-in payload like on BBL, using the FW_PAYLOAD_PATH env variable during make.
 +
 +<​code>​
 +CROSS_COMPILE=riscv64-unknown-linux-gnu- PLATFORM_RISCV_XLEN=<​32 or 64> \
 +make PLATFORM=<​target name, e.g. qemu/​virt>​ FW_PAYLOAD_PATH=<​linux sources dir>/​arch/​riscv/​boot/​Image
 +</​code>​
 +
 +In the first case the resulting binary will be called //​fw_jump.elf//​ and in the second case //​fw_payload.elf//,​ also .bin files with the same names will be generated, for using them directly on hw boards (QEMU only supports loading ELFs). These files are available at <osbi sources dir>/​platform/<​platform name>/​firmware/​.
  
 ===== Prepare a simple initramfs for testing ===== ===== Prepare a simple initramfs for testing =====
developers/env_buildtest.1543880854.txt.gz ยท Last modified: 2018/12/04 01:47 by mick