[coreboot] Linux kernel as payload?

Aaron Durbin adurbin at google.com
Thu Jan 21 18:54:29 CET 2016

On Thu, Jan 21, 2016 at 11:49 AM, Kitestramuort
<kitestramuort at autistici.org> wrote:
> On Thu, 21 Jan, 2016 at 4:08 PM, Aaron Durbin via coreboot
> <coreboot at coreboot.org> wrote:
>> You can always kexec() into your new kernel. The one sitting in flash
>> can be smart enough to interrogate your boot media and determine what
>> to load. Then just kexec().
> This is very interesting. So basically I should build a minimal kernel with
> kexec support to launch the "normal" kernel living in /boot. But what
> exactly needs to be compiled in the payload kernel? I guess some hardware
> has to be initialised at this stage... Can I compile it 64bit? Is there any
> further documentation on this?

You'd need an initramfs along w/ your storage drivers for finding the
boot device. You'd want to make your userspace smart enough such that
you could potentially recover if you ever landed a bad kernel. In
short, you'd need to duplicate what lilo or grub do depending how you
want to convey all that boot information (and allow a chance at

> I found something on the wiki
> https://www.coreboot.org/Board:tyan/s2891#LAB_payload
> Thanks
> --
> coreboot mailing list: coreboot at coreboot.org
> http://www.coreboot.org/mailman/listinfo/coreboot

More information about the coreboot mailing list