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

Martin Roth (gaumless@gmail.com) gerrit at coreboot.org
Tue Jul 29 20:24:20 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 94f1f5555bbb600390084c2db92eddf3779988c7
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.
    
    Change-Id: I15638605d1c66a2277d4b852796db89978551a34
    Signed-off-by: Martin Roth <martin.roth at se-eng.com>
---
 payloads/external/SeaBIOS/Makefile.inc |  3 +++
 src/Kconfig                            | 15 +++++++++++++++
 src/arch/x86/Makefile.inc              |  1 +
 3 files changed, 19 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..98df93c 100644
--- a/src/Kconfig
+++ b/src/Kconfig
@@ -626,6 +626,21 @@ 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
+	prompt "Allocate memory that needs to be in first Meg above 0xc0000" if PAYLOAD_SEABIOS
+	default y
+	bool
+	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.
+
+	  If unsure, say Y.
+
 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