[SeaBIOS] How to build seabios(coreboot style) with manually specified entry_elf() address ?

Tang Rong phtr071 at gmail.com
Tue Oct 3 18:34:14 CEST 2017


Hi SeaBios developers:

I would like to build SeaBios as payload of chromebook Depthcharge
instead of coreboot, because Depthcharge seems to have some additional
device initialization on per-board basis. I did some search and found
SeaBios could be used as Grub2 payload, so I guess this is not mission
impossible.

According to google's doc here:
http://dev.chromium.org/chromium-os/developer-information-for-chrome-os-devices/custom-firmware
, depthcharge can copy any 32-bit blob into 0x100000, and directly
jump to it. So I will need the entry_elf to be 0x100000, and in
addition, anything instruction below 0x100000 should be safely
descarded without impacting seabios's functionality(because
depthcharge always jump to the beginning of the blob).

Is it possible to build such a seabios raw blob with entry point as
0x100000? If not, maybe I can use some 2-step jump: let depthcharge
jump to 0x100000 first, then jump to the real entry_elf? As I know
nothing about linkerscript or assembly, maybe some of you could help
me figure out.

Thanks!



More information about the SeaBIOS mailing list