Arthur Heymans has uploaded this change for review.

View Change

Makefile.inc: Create a default SMMSTORE region

Change-Id: I7b7b75050e0139ea9a0a4f2ad3c0d69a482fb38b
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
---
M Makefile.inc
M src/drivers/smmstore/Kconfig
M util/cbfstool/default-x86.fmd
3 files changed, 26 insertions(+), 1 deletion(-)

git pull ssh://review.coreboot.org:29418/coreboot refs/changes/21/30421/1
diff --git a/Makefile.inc b/Makefile.inc
index 8af291f..7dee1d2 100644
--- a/Makefile.inc
+++ b/Makefile.inc
@@ -869,11 +869,27 @@
endif # ifeq ($(CONFIG_CACHE_MRC_SETTINGS),y)

#
+# X86 SMMSTORE FMAP region
+#
+# position, size and entry line of SMMSTORE relative to BIOS_BASE, if enabled
+ifeq ($(CONFIG_SMMSTORE),y)
+FMAP_SMMSTORE_BASE := $(call int-align, $(call int-add, $(FMAP_CONSOLE_BASE) \
+ $(FMAP_CONSOLE_SIZE) $(FMAP_MRC_CACHE_SIZE)), 0x10000)
+FMAP_SMMSTORE_SIZE := $(CONFIG_SMMSTORE_SIZE)
+FMAP_SMMSTORE_ENTRY := SMMSTORE@$(FMAP_SMMSTORE_BASE) $(FMAP_SMMSTORE_SIZE)
+else # ifeq ($(CONFIG_SMMSTORE),y)
+FMAP_SMMSTORE_BASE := 0
+FMAP_SMMSTORE_SIZE := 0
+FMAP_SMMSTORE_ENTRY :=
+endif # ifeq ($(CONFIG_CACHE_MRC_SETTINGS),y)
+
+#
# X86 FMAP region
#
#
# position, size
-FMAP_FMAP_BASE := $(call int-add, $(FMAP_CONSOLE_SIZE) $(FMAP_MRC_CACHE_SIZE))
+FMAP_FMAP_BASE := $(call int-add, $(FMAP_CONSOLE_BASE) $(FMAP_CONSOLE_SIZE) \
+ $(FMAP_MRC_CACHE_SIZE) $(FMAP_SMMSTORE_SIZE))
FMAP_FMAP_SIZE := 0x200

#
@@ -947,6 +963,7 @@
-e "s,##FMAP_SIZE##,$(FMAP_FMAP_SIZE)," \
-e "s,##CONSOLE_ENTRY##,$(FMAP_CONSOLE_ENTRY)," \
-e "s,##MRC_CACHE_ENTRY##,$(FMAP_MRC_CACHE_ENTRY)," \
+ -e "s,##SMMSTORE_ENTRY##,$(FMAP_SMMSTORE_ENTRY)," \
-e "s,##CBFS_BASE##,$(FMAP_CBFS_BASE)," \
-e "s,##CBFS_SIZE##,$(FMAP_CBFS_SIZE)," \
$(DEFAULT_FLASHMAP) > $@.tmp
diff --git a/src/drivers/smmstore/Kconfig b/src/drivers/smmstore/Kconfig
index 1ab3a5e..f2c97ab 100644
--- a/src/drivers/smmstore/Kconfig
+++ b/src/drivers/smmstore/Kconfig
@@ -37,4 +37,11 @@
string "SMM store file name" if SMMSTORE_IN_CBFS
default "smm_store"

+config SMMSTORE_SIZE
+ hex "size of the SMMSTORE FMAP region"
+ depends on !SMMSTORE_IN_CBFS
+ default 0x40000
+ help
+ Set the size of the default SMMSTORE FMAP region.
+
endif
diff --git a/util/cbfstool/default-x86.fmd b/util/cbfstool/default-x86.fmd
index 174db1f..f0143e9 100644
--- a/util/cbfstool/default-x86.fmd
+++ b/util/cbfstool/default-x86.fmd
@@ -11,6 +11,7 @@
BIOS@##BIOS_BASE## ##BIOS_SIZE## {
##CONSOLE_ENTRY##
##MRC_CACHE_ENTRY##
+ ##SMMSTORE_ENTRY##
FMAP@##FMAP_BASE## ##FMAP_SIZE##
COREBOOT(CBFS)@##CBFS_BASE## ##CBFS_SIZE##
}

To view, visit change 30421. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-Change-Id: I7b7b75050e0139ea9a0a4f2ad3c0d69a482fb38b
Gerrit-Change-Number: 30421
Gerrit-PatchSet: 1
Gerrit-Owner: Arthur Heymans <arthur@aheymans.xyz>
Gerrit-Reviewer: Arthur Heymans <arthur@aheymans.xyz>
Gerrit-Reviewer: Martin Roth <martinroth@google.com>
Gerrit-Reviewer: Patrick Georgi <pgeorgi@google.com>
Gerrit-MessageType: newchange