diff options
author | Vladimir Serbinenko <phcoder@gmail.com> | 2013-11-14 12:10:08 +0100 |
---|---|---|
committer | Stefan Reinauer <stefan.reinauer@coreboot.org> | 2013-11-19 01:07:25 +0100 |
commit | 113a3668489507f5b14ccea4daae0216021bf228 (patch) | |
tree | db40e289cb348a2fd56cbfd524570cf7ac891789 /src/Kconfig | |
parent | c37b05c41339acbeee00bd65c13b8a97b16854ce (diff) |
Add GRUB2 payload to build system
Since a long time GRUB 2 is a viable payload alternative to SeaBIOS and
FILO. So make it easy for coreboot users to use GRUB 2 as a payload by
integrating it into coreboot’s build system, so it can be selected in
Kconfig.
As the last GRUB 2 release 2.00 is too old and has several bugs when
used as a coreboot payload only allow to build GRUB 2 master until a new
GRUB release is done. The downside is, that accidental breakage in
GRUB’s upstream does not affect coreboot users.
Currently the GRUB 2 payload is built with the default modules which
results in an uncompressed size of around 730 kB. Compressed it has a
size of 340 kB, so it should be useable with 512 kB flash ROMs.
Tested with QEMU.
Change-Id: Ie75d5a2cb230390cd5a063d5f6a5d5e3fab6b354
Signed-off-by: Vladimir Serbinenko <phcoder@gmail.com>
Reviewed-on: http://review.coreboot.org/4058
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Diffstat (limited to 'src/Kconfig')
-rw-r--r-- | src/Kconfig | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/src/Kconfig b/src/Kconfig index 10f8c185fe..1c80b8c194 100644 --- a/src/Kconfig +++ b/src/Kconfig @@ -569,6 +569,15 @@ config PAYLOAD_FILO See http://coreboot.org/Payloads for more information. +config PAYLOAD_GRUB2 + bool "GRUB2" + help + Select this option if you want to build a coreboot image + with a GRUB2 payload. If you don't know what this is + about, just leave it enabled. + + See http://coreboot.org/Payloads for more information. + config PAYLOAD_TIANOCORE bool "Tiano Core" help @@ -606,6 +615,17 @@ config SEABIOS_PS2_TIMEOUT keyboard controller to become ready before giving up. choice + prompt "GRUB2 version" + default GRUB2_MASTER + depends on PAYLOAD_GRUB2 + +config GRUB2_MASTER + bool "HEAD" + help + Newest GRUB2 version +endchoice + +choice prompt "FILO version" default FILO_STABLE depends on PAYLOAD_FILO @@ -643,6 +663,10 @@ config PAYLOAD_FILE default "payloads/external/FILO/filo/build/filo.elf" config PAYLOAD_FILE + depends on PAYLOAD_GRUB2 + default "payloads/external/GRUB2/grub2/build/default_payload.elf" + +config PAYLOAD_FILE string "Tianocore firmware volume" depends on PAYLOAD_TIANOCORE default "COREBOOT.fd" @@ -653,7 +677,7 @@ config PAYLOAD_FILE config COMPRESSED_PAYLOAD_LZMA bool "Use LZMA compression for payloads" default y - depends on PAYLOAD_ELF || PAYLOAD_SEABIOS || PAYLOAD_FILO || PAYLOAD_TIANOCORE + depends on PAYLOAD_ELF || PAYLOAD_SEABIOS || PAYLOAD_FILO || PAYLOAD_TIANOCORE || PAYLOAD_GRUB2 help In order to reduce the size payloads take up in the ROM chip coreboot can compress them using the LZMA algorithm. |