> 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.

I see here PROs and CONTRAs.

One huge PRO is that petit/smallboot is excellent for consumer electronics. For the ones which will NEVER change SW as current release of the device. With the new device release (new version), the new enhanced SW will be put into device. Excellent for ASICs.

One CONTRA is that it is impossible to upgrade SW in the current ASIC context. If there will be another SW (kind of EC) with HW extension which can control flash upgrade, which will make this device substantially more expensive.

In other words, petitboot mainly targets consumer electronics. :-)

Best Regards,
Zoran

On Wed, Oct 26, 2016 at 3:18 AM, Arthur Heymans <arthur@aheymans.xyz> wrote:
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

--
coreboot mailing list: coreboot@coreboot.org
https://www.coreboot.org/mailman/listinfo/coreboot