aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorStefan Reinauer <stepan@coreboot.org>2010-12-30 17:39:50 +0000
committerStefan Reinauer <stepan@openbios.org>2010-12-30 17:39:50 +0000
commitf1939bb29b15cb68e90c68ceda86d8d9ad20e746 (patch)
treea9bd473bf183e23d4ce3361424b0981afeb8a415 /src
parentd7ce71d58f7dc2bdc9c0dd8eb7b804f0194071fa (diff)
Per default, use SeaBIOS payload instead of no payload.
Add choice to use stable or master version of seabios repository Signed-off-by: Stefan Reinauer <stepan@coreboot.org> Acked-by: Stefan Reinauer <stepan@coreboot.org> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@6223 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src')
-rw-r--r--src/Kconfig34
-rw-r--r--src/arch/x86/Makefile.inc19
2 files changed, 49 insertions, 4 deletions
diff --git a/src/Kconfig b/src/Kconfig
index 6894a6a925..77546b0590 100644
--- a/src/Kconfig
+++ b/src/Kconfig
@@ -333,7 +333,8 @@ menu "Payload"
choice
prompt "Add a payload"
- default PAYLOAD_NONE
+ default PAYLOAD_NONE if !ARCH_X86
+ default PAYLOAD_SEABIOS if ARCH_X86
config PAYLOAD_NONE
bool "None"
@@ -355,6 +356,31 @@ config PAYLOAD_ELF
You will be able to specify the location and file name of the
payload image later.
+config PAYLOAD_SEABIOS
+ bool "SeaBIOS"
+ depends on ARCH_X86
+ help
+ Select this option if you want to build a coreboot image
+ with a SeaBIOS payload. If you don't know what this is
+ about, just leave it enabled.
+
+ See http://coreboot.org/Payloads for more information.
+
+endchoice
+
+choice
+ prompt "SeaBIOS version"
+ default SEABIOS_STABLE
+ depends on PAYLOAD_SEABIOS
+
+config SEABIOS_STABLE
+ bool "stable"
+ help
+ Stable SeaBIOS version
+config SEABIOS_MASTER
+ bool "master"
+ help
+ Newest SeaBIOS version
endchoice
config PAYLOAD_FILE
@@ -364,11 +390,15 @@ config PAYLOAD_FILE
help
The path and filename of the ELF executable file to use as payload.
+config PAYLOAD_FILE
+ depends on PAYLOAD_SEABIOS
+ default "payloads/external/SeaBIOS/seabios/out/bios.bin.elf"
+
# TODO: Defined if no payload? Breaks build?
config COMPRESSED_PAYLOAD_LZMA
bool "Use LZMA compression for payloads"
default y
- depends on PAYLOAD_ELF
+ depends on PAYLOAD_ELF || PAYLOAD_SEABIOS
help
In order to reduce the size payloads take up in the ROM chip
coreboot can compress them using the LZMA algorithm.
diff --git a/src/arch/x86/Makefile.inc b/src/arch/x86/Makefile.inc
index f847f29caa..92c4f670ef 100644
--- a/src/arch/x86/Makefile.inc
+++ b/src/arch/x86/Makefile.inc
@@ -34,9 +34,12 @@ endif
#######################################################################
# Build the final rom image
COREBOOT_ROM_DEPENDENCIES:=
-ifneq ($(CONFIG_PAYLOAD_NONE),y)
+ifeq ($(CONFIG_PAYLOAD_ELF),y)
COREBOOT_ROM_DEPENDENCIES+=$(CONFIG_PAYLOAD_FILE)
endif
+ifeq ($(CONFIG_PAYLOAD_SEABIOS),y)
+COREBOOT_ROM_DEPENDENCIES+=seabios
+endif
ifeq ($(CONFIG_VGA_BIOS),y)
COREBOOT_ROM_DEPENDENCIES+=$(CONFIG_VGA_BIOS_FILE)
endif
@@ -80,10 +83,15 @@ $(obj)/coreboot.rom: $(obj)/coreboot.pre $(obj)/coreboot_ram $(CBFSTOOL) $(call
$(CBFSTOOL) $@.tmp add-stage $(obj)/coreboot_ram $(CONFIG_CBFS_PREFIX)/coreboot_ram $(CBFS_COMPRESS_FLAG)
ifeq ($(CONFIG_PAYLOAD_NONE),y)
@printf " PAYLOAD \e[1;31mnone (as specified by user)\e[0m\n"
-else
+endif
+ifeq ($(CONFIG_PAYLOAD_ELF),y)
@printf " PAYLOAD $(CONFIG_PAYLOAD_FILE) (compression: $(CBFS_PAYLOAD_COMPRESS_NAME))\n"
$(CBFSTOOL) $@.tmp add-payload $(CONFIG_PAYLOAD_FILE) $(CONFIG_CBFS_PREFIX)/payload $(CBFS_PAYLOAD_COMPRESS_FLAG)
endif
+ifeq ($(CONFIG_PAYLOAD_SEABIOS),y)
+ @printf " PAYLOAD SeaBIOS (internal, compression: $(CBFS_PAYLOAD_COMPRESS_NAME))\n"
+ $(CBFSTOOL) $@.tmp add-payload $(CONFIG_PAYLOAD_FILE) $(CONFIG_CBFS_PREFIX)/payload $(CBFS_PAYLOAD_COMPRESS_FLAG)
+endif
ifeq ($(CONFIG_VGA_BIOS),y)
@printf " VGABIOS $(CONFIG_VGA_BIOS_FILE) $(CONFIG_VGA_BIOS_ID)\n"
$(CBFSTOOL) $@.tmp add $(CONFIG_VGA_BIOS_FILE) "pci$(CONFIG_VGA_BIOS_ID).rom" optionrom
@@ -272,3 +280,10 @@ include $(src)/arch/x86/Makefile.bootblock.inc
else
include $(src)/arch/x86/Makefile.bigbootblock.inc
endif
+
+seabios:
+ $(MAKE) -C payloads/external/SeaBIOS -f Makefile.inc \
+ CC="$(CC)" LD="$(LD)" \
+ CONFIG_SEABIOS_MASTER=$(CONFIG_SEABIOS_MASTER) \
+ CONFIG_SEABIOS_STABLE=$(CONFIG_SEABIOS_STABLE)
+