some progress in KVM integration into the buildrom buildsystem
[kvm-coreboot.git] / README
blob69532d5ace40be706c0df695dba057abf9e60c2b
1 Buildrom README
3 I bend a grateful knee to my good friend Erik Andersen, and his buildroot
4 system from which most of the ideas for this were derived.
6 Introduction
8 This is a simple makefile system that designed to build a ROM image for 
9 coreboot (formally LinuxBIOS) based systems.  This system allows one to
10 choose one of several different payloads for a variety of platforms. 
11 The intention of buildROM is to build everything together with one step,
12 rather then the 6 or 8 individual steps that it would have taken previously.
14 Payloads
16 BuildROM supports 7 different payload configurations:
18 * Custom - Allows you to specify an external ELF file
19 * Etherboot
20 * FILO
21 * Kernel - build a kernel payload (just the kernel - no initramfs)
22 * LAB - Build a kernel plus a Linux As Bootloader initramfs attached to it
23 * OFW - Open Firmware 
24 * Memtest - Memtest86
26 Configuration
28 To configure the system, type 'make menuconfig' (or 'make oldconfig'),
29 and select your desired options, or answer the questions:
31 CONFIG_VERBOSE - show build output on stdout instead of a log file
32 CONFIG_ADVANCED - select some advanced options:
33   CONFIG_USE_LZMA - Compress payloads with LZMA (requires coreboot support)
34   CONFIG_CB_USE_BUILD - Say 'y' here to specify an existing build 
35                         directory for coreboot.  This is useful if you
36                         want build out of your development tree.  
37   CONFIG_CB_BUILDDIR - Specify your remote coreboot build directory here
39 Some of the payload options have their own configuration:
41 Custom:
42   CONFIG_CUSTOM_PAYLOAD - specify a filename for the custom payload
44 Kernel:
45   CONFIG_CMDLINE - Specify a command line to use for the kernel build
47 LaB:
48   CONFIG_KBL_KEXEC_ONLY - Build only the Kexec part of the KBL
49   CONFIG_KBL - Build Marcelo Toscatti's kernel boot loader
50   CONFIG_KVM - Build the KVM tools
51   CONFIG_BUSYBOX - Build busybox
53 memtest:
54   CONFIG_MEMTEST_SERIAL - say 'y' here to enable serial output for memtest
56 etherboot:
57   CONFIG_ETHERBOOT_DRIVER - specify the name of the NIC driver for etherboot,
58   i.e 'natsemi'
61 Building the ROM
63 To run the system, type 'make'.  You'll need a connection to the net to
64 suck down tarballs for the individual packages.  
66 The end result is a .rom file in the deploy/ directory.