[coreboot] CoreBoot and Payloads

Kevin O'Connor kevin at koconnor.net
Thu Feb 5 02:37:59 CET 2009

On Thu, Feb 05, 2009 at 12:43:15AM +0100, Rudolf Marek wrote:
> Hi,
> You need to edit SeaBIOS config.h and tell where the ROM is in final image.
> SeaBIOS will load it for you. I'm out on bussiness trip from next day 
> evening. Perhaps Kevin will help with details.

I ran gpxe from coreboot-v2 with seabios.  The procedure I used was:

* modify coreboot-v2 Config.lb to make room for gpxe image.  I set:

  option ROM_SIZE = (256 * 1024) - (62 * 1024) - (53 * 1024)

  Total rom is 256KiB, 62KiB is for vga rom, and 53KiB for
  10ec8167.rom (gpxe rom).

* Configure seabios to deploy both a vga rom and gpxe rom by setting
  in src/config.h:

  #define OPTIONROM_BDF_1 0x0100
  #define OPTIONROM_MEM_1 0xfffc0000
  #define OPTIONROM_BDF_2 0x0048
  #define OPTIONROM_MEM_2 0xfffcf800

  The 0xfffc0000 corresponds with the 256KiB rom.  The vga adapter is
  at pci 1:00.0 (hex(1<<8) == 0x100) and nic is at pci 00:09.0
  (hex(9<<3) == 0x48).

* Build coreboot-v2 with seabios as payload.

* Build the coreboot rom and combine with vga rom and gpxe:

  cat video.bios.bin 10ec8167.rom coreboot.rom > coreboot.final.rom

Hope this helps.


More information about the coreboot mailing list