summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/arch/x86/Makefile.inc2
-rw-r--r--src/cpu/Kconfig11
2 files changed, 12 insertions, 1 deletions
diff --git a/src/arch/x86/Makefile.inc b/src/arch/x86/Makefile.inc
index 2e54645150..2ade820440 100644
--- a/src/arch/x86/Makefile.inc
+++ b/src/arch/x86/Makefile.inc
@@ -140,7 +140,7 @@ ifeq ($(CONFIG_PXE_ROM),y)
$(CBFSTOOL) $@.tmp add -f $(CONFIG_PXE_ROM_FILE) -n pci$(CONFIG_PXE_ROM_ID).rom -t raw
endif
ifeq ($(CONFIG_CPU_INTEL_FIRMWARE_INTERFACE_TABLE),y)
-ifeq ($(CONFIG_CPU_MICROCODE_IN_CBFS),y)
+ifeq ($(CONFIG_CPU_MICROCODE_ADDED_DURING_BUILD),y)
@printf " UPDATE-FIT \n"
$(CBFSTOOL) $@.tmp update-fit -n cpu_microcode_blob.bin -x $(CONFIG_CPU_INTEL_NUM_FIT_ENTRIES)
endif
diff --git a/src/cpu/Kconfig b/src/cpu/Kconfig
index 7317bccbfd..6c118b7908 100644
--- a/src/cpu/Kconfig
+++ b/src/cpu/Kconfig
@@ -77,6 +77,17 @@ config CPU_MICROCODE_IN_CBFS
bool
default n
+# This variable is used to determine if we add CPU microcode to CBFS during the
+# build. Microcode can be added manually afterwards, or removed. As a result,
+# code should not rely on this to tell if a microcode update is present or not,
+# and should instead search CBFS.
+# This variable is useful in determining if certain automated post-processing
+# steps can be performed right after the build, such as automatically adding
+# a firmware interface table.
+config CPU_MICROCODE_ADDED_DURING_BUILD
+ bool
+ default y if CPU_MICROCODE_CBFS_GENERATE || CPU_MICROCODE_CBFS_EXTERNAL
+
choice
prompt "Include CPU microcode in CBFS" if ARCH_X86
default CPU_MICROCODE_CBFS_GENERATE if CPU_MICROCODE_IN_CBFS