summaryrefslogtreecommitdiff
path: root/src/southbridge/intel/common/firmware
diff options
context:
space:
mode:
Diffstat (limited to 'src/southbridge/intel/common/firmware')
-rw-r--r--src/southbridge/intel/common/firmware/Kconfig13
-rw-r--r--src/southbridge/intel/common/firmware/Makefile.inc15
2 files changed, 24 insertions, 4 deletions
diff --git a/src/southbridge/intel/common/firmware/Kconfig b/src/southbridge/intel/common/firmware/Kconfig
index ab0373a608..b9b766c708 100644
--- a/src/southbridge/intel/common/firmware/Kconfig
+++ b/src/southbridge/intel/common/firmware/Kconfig
@@ -37,10 +37,19 @@ config HAVE_ME_BIN
coreboot without it. In this case however, you'll have to make sure
that you don't overwrite your ME/TXE firmware on your flash ROM.
+config STITCH_ME_BIN
+ bool "Stitch individual ME/CSE components"
+ default n
+ depends on HAVE_ME_BIN
+ help
+ This config can be selected by mainboard if it wants to stitch ME/CSE
+ components during build time instead of supplying a pre-stitched
+ binary.
+
config ME_BIN_PATH
- string "Path to management engine firmware"
+ string "Path to management engine firmware" if !STITCH_ME_BIN
default "3rdparty/blobs/mainboard/\$(MAINBOARDDIR)/me.bin"
- depends on HAVE_ME_BIN
+ depends on HAVE_ME_BIN && !STITCH_ME_BIN
config CHECK_ME
bool "Verify the integrity of the supplied ME/TXE firmware"
diff --git a/src/southbridge/intel/common/firmware/Makefile.inc b/src/southbridge/intel/common/firmware/Makefile.inc
index d5a48fd6f9..693bafb7a8 100644
--- a/src/southbridge/intel/common/firmware/Makefile.inc
+++ b/src/southbridge/intel/common/firmware/Makefile.inc
@@ -25,7 +25,18 @@ endif
add_intel_firmware: $(call strip_quotes,$(CONFIG_IFD_BIN_PATH))
ifeq ($(CONFIG_HAVE_ME_BIN),y)
-add_intel_firmware: $(call strip_quotes,$(CONFIG_ME_BIN_PATH))
+
+OBJ_ME_BIN := $(obj)/me.bin
+
+ifneq ($(CONFIG_STITCH_ME_BIN),y)
+
+$(OBJ_ME_BIN): $(call strip_quotes,$(CONFIG_ME_BIN_PATH))
+ cp $< $@
+
+endif
+
+add_intel_firmware: $(OBJ_ME_BIN)
+
endif
ifeq ($(CONFIG_HAVE_GBE_BIN),y)
add_intel_firmware: $(call strip_quotes,$(CONFIG_GBE_BIN_PATH))
@@ -46,7 +57,7 @@ ifeq ($(CONFIG_HAVE_ME_BIN),y)
printf " IFDTOOL me.bin -> coreboot.pre\n"
$(objutil)/ifdtool/ifdtool \
$(IFDTOOL_USE_CHIPSET) \
- -i ME:$(CONFIG_ME_BIN_PATH) \
+ -i ME:$(OBJ_ME_BIN) \
-O $(obj)/coreboot.pre \
$(obj)/coreboot.pre
endif