[coreboot-gerrit] New patch to review for coreboot: 4c64378 SeaBIOS: have coreboot pass the choice to run optionroms in parallel

Idwer Vollering (vidwer@gmail.com) gerrit at coreboot.org
Tue Apr 1 23:21:57 CEST 2014


Idwer Vollering (vidwer at gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/5443

-gerrit

commit 4c643785b2b28033fc1091d3414346a63fb6893e
Author: Idwer Vollering <vidwer at gmail.com>
Date:   Tue Apr 1 22:47:33 2014 +0000

    SeaBIOS: have coreboot pass the choice to run optionroms in parallel
    
    Introduce the tunable CONFIG_SEABIOS_THREAD_OPTIONROMS.
    
    Change-Id: Ifd4d9fca7316eb739ff184e54bdc1cdb0262f0c6
    Signed-off-by: Idwer Vollering <vidwer at gmail.com>
---
 payloads/external/SeaBIOS/Makefile.inc |  4 ++++
 src/Kconfig                            | 11 +++++++++++
 src/arch/x86/Makefile.inc              |  1 +
 3 files changed, 16 insertions(+)

diff --git a/payloads/external/SeaBIOS/Makefile.inc b/payloads/external/SeaBIOS/Makefile.inc
index 23b064c..e8bcaec 100644
--- a/payloads/external/SeaBIOS/Makefile.inc
+++ b/payloads/external/SeaBIOS/Makefile.inc
@@ -21,12 +21,16 @@ config: checkout
 	echo "    CONFIG     SeaBIOS $(TAG-y)"
 	$(MAKE) -C $(OUT)/seabios defconfig OUT=$(OUT)/seabios/out/
 	echo "CONFIG_COREBOOT=y" >> $(OUT)/seabios/.config
+ifeq ($(CONFIG_SEABIOS_THREAD_OPTIONROMS),y)
+	echo "CONFIG_THREAD_OPTIONROMS=y" >> $(OUT)/seabios/.config
+endif
 	echo "CONFIG_DEBUG_SERIAL=y" >> $(OUT)/seabios/.config
 	echo "CONFIG_DEBUG_SERIAL_PORT=0x3f8" >> $(OUT)/seabios/.config
 	echo "CONFIG_COREBOOT_FLASH=y" >> $(OUT)/seabios/.config
 	echo "CONFIG_LZMA=y" >> $(OUT)/seabios/.config
 	echo "CONFIG_FLASH_FLOPPY=y" >> $(OUT)/seabios/.config
 	echo "CONFIG_VGAHOOKS=y" >> $(OUT)/seabios/.config
+	echo "CONFIG_DEBUG_COREBOOT=y" >> $(OUT)/seabios/.config
 	# This shows how to force a previously set .config option *off*
 	#echo "# CONFIG_SMBIOS is not set" >> $(OUT)/seabios/.config
 
diff --git a/src/Kconfig b/src/Kconfig
index 291b166..243fd40 100644
--- a/src/Kconfig
+++ b/src/Kconfig
@@ -636,6 +636,17 @@ config SEABIOS_PS2_TIMEOUT
 	  after powering on. This specifies how long SeaBIOS will wait for the
 	  keyboard controller to become ready before giving up.
 
+config SEABIOS_THREAD_OPTIONROMS
+	prompt "Hardware init during option ROM execution" if PAYLOAD_SEABIOS
+	default n
+	boolean
+	help
+	  Allow hardware init to run in parallel with optionrom execution.
+
+	  This can reduce boot time, but can cause some timing
+	  variations during option ROM code execution. It is not
+	  known if all option ROMs will behave properly with this option.
+
 choice
 	prompt "GRUB2 version"
 	default GRUB2_MASTER
diff --git a/src/arch/x86/Makefile.inc b/src/arch/x86/Makefile.inc
index 80e731f..3bf3326 100644
--- a/src/arch/x86/Makefile.inc
+++ b/src/arch/x86/Makefile.inc
@@ -448,6 +448,7 @@ seabios:
 			AS="$(AS)" CPP="$(CPP)" \
 			CONFIG_SEABIOS_MASTER=$(CONFIG_SEABIOS_MASTER) \
 			CONFIG_SEABIOS_STABLE=$(CONFIG_SEABIOS_STABLE) \
+			CONFIG_SEABIOS_THREAD_OPTIONROMS=$(CONFIG_SEABIOS_THREAD_OPTIONROMS) \
 			OUT=$(abspath $(obj)) IASL="$(IASL)"
 
 filo:



More information about the coreboot-gerrit mailing list