aboutsummaryrefslogtreecommitdiff
path: root/bbl/bbl.ac
AgeCommit message (Collapse)AuthorFilesLines
2019-04-15bbl/bbl.ac: use = instead of == for comparing equality (#158)maxice81-2/+2
== is not defined in POSIX and will fail when configure is called with shells that adhere strictly to POSIX like dash
2018-07-12configure: Add --enable-boot-machine in BBLHesham Almatary1-0/+5
If --enable-boot-machine is passed, BBL disables VM and runs the payload in machine mode. This is useful for payloads (e.g. RTOSes or other OSes) that want to run only in machine mode while still relying on bbl/pk for system calls and emulation
2018-07-10Don't look for riscv_logo.txt if logo is not enabledAndrew Waterman1-0/+1
2018-07-09Properly license all nontrivial filesAndrew Waterman1-0/+2
2018-05-22RISC-V: Support separate firmware and kernel payloadMichael Clark1-2/+7
Support for separate firmware and kernel payload is added by updating BBL to read optional preloaded kernel address attributes from device-tree using a similar mechanism to that used to pass init ramdisk addresses to linux kernel. chosen { riscv,kernel-start = <0x00000000 0x80200000>; riscv,kernel-end = <0x00000000 0x80590634>; }; These attributes are added by QEMU and read by BBL when combining -bios <firmware-image> and -kernel <kernel-image> options. e.g. $ qemu-system-riscv64 -machine virt -bios bbl -kernel vmlinux With this change, bbl can be compiled without --with-payload and the dummy payload alignment is altered to make the memory footprint of the firmware-only bbl smaller. The dummy payload message is updated to indicate the alternative load method. This load method could also be supported by a first stage boot loader that reads seperate firmware and kernel from SPI flash. The main advantage of this new mechanism is that it eases kernel development by avoiding the riscv-pk packaging step after kernel builds, makes building per repository artefacts for CI simpler, and mimics bootloaders on other platforms that can load a kernel image file directly. Ultimately BBL should use an SPI driver to load the kernel image however this mechanism supports use cases such such as QEMU's -bios, -kernel and -initrd options following examples from other platforms that pass kernel entry to firmware via device-tree. Cc: Palmer Dabbelt <palmer@sifive.com> Cc: Alistair Francis <Alistair.Francis@wdc.com> Signed-off-by: Michael Clark <mjc@sifive.com>
2017-11-03Allow users to pick a logoPalmer Dabbelt1-0/+4
2017-02-20Don't block for acks on console writesAndrew Waterman1-2/+2
2016-03-09Refactor pk, bbl, machine into separate librariesAndrew Waterman1-0/+8
Yuck.