From coreboot
Revision as of 18:32, 30 October 2009 by Stepan (talk | contribs) (→‎libpayload)
Jump to navigation Jump to search

The wiki is being retired!

Documentation is now handled by the same processes we use for code: Add something to the Documentation/ directory in the coreboot repo, and it will be rendered to Contributions welcome!

coreinfo is a small informational payload for coreboot. Currently, it can display CPU information, PCI information, coreboot table information, and show an NVRAM dump.


Building coreinfo


The coreinfo payload uses libpayload, thus you need to get that first and build it:

$ mkdir foo
$ cd foo
$ svn co svn:// libpayload-source
$ cd libpayload-source
$ make menuconfig
$ make
$ make DESTDIR=.. install


You can then get coreinfo itself and build it:

$ cd ..
$ svn co svn://
$ cd coreinfo
$ make menuconfig
$ make

The file build/coreinfo.elf is your final coreinfo payload which you can use with coreboot (v2 or v3), either on real hardware or in a QEMU image.


Finally, you have to build coreboot (v3 in this example) with coreinfo as payload:

$ cd ..
$ svn co svn://
$ cp coreinfo/build/coreinfo.elf coreboot-v3/payload.elf
$ cd coreboot-v3
$ make menuconfig

Now enter the Payload menu and select Payload type and then An ELF executable payload file. Now exit the menu, save your settings, and build coreboot:

$ make

The file build/coreboot.rom (or build/bios.bin) is your final coreboot v3 image, which also contains the coreinfo payload.

Running coreinfo in QEMU

For running coreboot+coreinfo image in QEMU, you need a patched version of vgabios-cirrus.bin in your build directory first:

$ cd build
$ wget
$ unzip
$ cd ..

You can now run coreinfo in QEMU:

$ qemu -L build -hda /dev/zero -serial stdio

Ready-made coreinfo QEMU image

If you don't want to build libpayload, coreinfo, and coreboot from source, you can also use the ready-made coreinfo QEMU image by following the instructions on that page.

Public domain I, the copyright holder of this work, hereby release it into the public domain. This applies worldwide.

In case this is not legally possible:
I grant anyone the right to use this work for any purpose, without any conditions, unless such conditions are required by law.