[coreboot] SeaBIOS self relocation code

Kevin O'Connor kevin at koconnor.net
Thu Sep 16 05:21:49 CEST 2010


I completed some code that enables SeaBIOS to relocate itself to high
memory.  The technique may be of interest to coreboot.

The full patch series that enables SeaBIOS relocation can be seen at:


Most of the patch series does cleanups and seabios specific work.  The
run-time code, which may be of interest to coreboot, is at:


The general idea is to have the build store linker "relocation"
information (see _reloc_* symbols) into the final executable, and then
have the run-time code use this information so that it can self-modify
all code that depends on code position.

The SeaBIOS code only relocates part of itself, so the runtime
relocation code is slightly more complex.  A code blob that was fully
relocated would be a little simpler (it would need only one call to


More information about the coreboot mailing list