[coreboot] Petitboot based bootloader

Arthur Heymans arthur at aheymans.xyz
Wed Oct 26 03:18:44 CEST 2016


Hi

I have been working on building a Petitboot, a kexec bootloader, [0]
based Linux payload using the Buildroot build system to produce a nice
bzImage that contains both linux and the initrd. It is inspired by the
Raptor Enginering HOWTO [0] and is based on op-build [1], the tool for
building OpenPOWER firmware, which also uses Buildroot and Petitboot.

One of the advantages of Petitboot is that it is fairly simple and
intuitive to use and does not require complex configuration like grub
does, while still providing a large range of hardware support since it
uses linux at its core.

A disadvantage is that a Linux + initrd payload takes up quite a bit of
space. A fairly stripped down kernel + initrd takes up ~6.9M in the
current Buildroot + Linux configuration I have. So a large flash chip or
replacing the flash with a larger one is recommended. 

Coreboot can directly use this Linux payload or first load SeaBIOS which
can then chainload the Linux payload.

It is still very much a WIP and is currently aimed at Intel hardware,
but with a kernel configuration tuned to your target it should work
fine.

The repo + initial documentation:
https://github.com/ArthurHeymans/petitboot_for_coreboot

[0] Petitboot: A kexec based bootloader,
https://www.kernel.org/pub/linux/kernel/people/geoff/petitboot/petitboot.html

[1] Creating firmware images with petitboot and coreboot
https://secure.raptorengineering.com/content/kb/1.html

[2] OpenPower Firmware Build Environment
https://github.com/open-power/op-build

Kind Regards
--
Arthur Heymans



More information about the coreboot mailing list