[coreboot-gerrit] Patch set updated for coreboot: 3fef456 payloads/external/SeaBIOS: Allow setting buffers below 0xC0000

Martin Roth (gaumless@gmail.com) gerrit at coreboot.org
Fri Aug 1 03:54:51 CEST 2014


Martin Roth (gaumless at gmail.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/6364

-gerrit

commit 3fef456d39bc921d5c923d3cf2f3d3b1821c71d8
Author: Martin Roth <martin.roth at se-eng.com>
Date:   Fri Jul 25 14:39:05 2014 -0600

    payloads/external/SeaBIOS: Allow setting buffers below 0xC0000
    
    Add the option to coreboot to set the SeaBIOS buffers below 0xC0000.
    This is an absolute requirement on the upcoming Intel Rangeley
    processor because it is designed so that only the processor can write
    the higher memory areas.  This prevents USB from bus-mastering into
    the buffers when they're set in the typical 0xE0000 area.
    
    This will be set to Y unless defaulted to N by the mainboard or
    chipset.
    
    Change-Id: I15638605d1c66a2277d4b852796db89978551a34
    Signed-off-by: Martin Roth <martin.roth at se-eng.com>
---
 payloads/external/SeaBIOS/Makefile.inc |  3 +++
 src/Kconfig                            | 13 +++++++++++++
 src/arch/x86/Makefile.inc              |  1 +
 3 files changed, 17 insertions(+)

diff --git a/payloads/external/SeaBIOS/Makefile.inc b/payloads/external/SeaBIOS/Makefile.inc
index 21f933a..03e2b08 100644
--- a/payloads/external/SeaBIOS/Makefile.inc
+++ b/payloads/external/SeaBIOS/Makefile.inc
@@ -31,6 +31,9 @@ ifeq ($(CONFIG_CONSOLE_SERIAL),y)
 else
 	echo "# CONFIG_DEBUG_SERIAL is not set" >> $(OUT)/seabios/.config
 endif
+ifneq ($(CONFIG_SEABIOS_MALLOC_UPPERMEMORY),y)
+	echo "# CONFIG_MALLOC_UPPERMEMORY is not set" >> $(OUT)/seabios/.config
+endif
 ifneq ($(CONFIG_SEABIOS_THREAD_OPTIONROMS),y)
 	echo "# CONFIG_THREAD_OPTIONROMS is not set" >> $(OUT)/seabios/.config
 endif
diff --git a/src/Kconfig b/src/Kconfig
index af82353..842d448 100644
--- a/src/Kconfig
+++ b/src/Kconfig
@@ -626,6 +626,19 @@ config SEABIOS_THREAD_OPTIONROMS
 	  variations during option ROM code execution. It is not
 	  known if all option ROMs will behave properly with this option.
 
+config SEABIOS_MALLOC_UPPERMEMORY
+	bool
+	default y
+	depends on PAYLOAD_SEABIOS
+	help
+	  Use the "Upper Memory Block" area (0xc0000-0xf0000) for internal
+	  "low memory" allocations.  If this is not selected, the memory is
+	  instead allocated from the "9-segment" (0x90000-0xa0000).
+	  This is not typically needed, but may be required on some platforms
+	  to allow USB and SATA buffers to be written correctly by the
+	  hardware.  In general, if this is desired, the option will be
+	  set to 'N' by the chipset Kconfig.
+
 choice
 	prompt "GRUB2 version"
 	default GRUB2_MASTER
diff --git a/src/arch/x86/Makefile.inc b/src/arch/x86/Makefile.inc
index 2e92d89..3b2517b 100644
--- a/src/arch/x86/Makefile.inc
+++ b/src/arch/x86/Makefile.inc
@@ -352,6 +352,7 @@ seabios:
 			CONFIG_SEABIOS_THREAD_OPTIONROMS=$(CONFIG_SEABIOS_THREAD_OPTIONROMS) \
 			CONFIG_CONSOLE_SERIAL=$(CONFIG_CONSOLE_SERIAL) \
 			CONFIG_TTYS0_BASE=$(CONFIG_TTYS0_BASE) \
+			CONFIG_SEABIOS_MALLOC_UPPERMEMORY=$(CONFIG_SEABIOS_MALLOC_UPPERMEMORY) \
 			OUT=$(abspath $(obj)) IASL="$(IASL)"
 
 filo:



More information about the coreboot-gerrit mailing list