[coreboot-gerrit] Patch set updated for coreboot: cpu/amd/model_10xxx: Install AMD-provided microcode files in CBFS
Timothy Pearson (tpearson@raptorengineeringinc.com)
gerrit at coreboot.org
Mon Oct 12 17:31:42 CET 2015
Timothy Pearson (tpearson at raptorengineeringinc.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/11832
-gerrit
commit f84027458c6474392f56968050e749d5486f0c60
Author: Timothy Pearson <tpearson at raptorengineeringinc.com>
Date: Thu Oct 8 16:58:58 2015 -0500
cpu/amd/model_10xxx: Install AMD-provided microcode files in CBFS
Change-Id: I208b012c6b612a94b3bbc8235d5a005028be8bcc
Signed-off-by: Timothy Pearson <tpearson at raptorengineeringinc.com>
---
3rdparty/blobs | 2 +-
src/cpu/Kconfig | 11 +++++++++++
src/cpu/Makefile.inc | 2 +-
src/cpu/amd/model_10xxx/Kconfig | 1 +
src/cpu/amd/model_10xxx/Makefile.inc | 10 +++++++++-
5 files changed, 23 insertions(+), 3 deletions(-)
diff --git a/3rdparty/blobs b/3rdparty/blobs
index 832bc6f..aab093f 160000
--- a/3rdparty/blobs
+++ b/3rdparty/blobs
@@ -1 +1 @@
-Subproject commit 832bc6f1f8ffafc5ff397fd95616fdae988f224f
+Subproject commit aab093f0824b6d26b57a1ce220ba0d577e37ad49
diff --git a/src/cpu/Kconfig b/src/cpu/Kconfig
index bfe00fe..000199b 100644
--- a/src/cpu/Kconfig
+++ b/src/cpu/Kconfig
@@ -67,6 +67,13 @@ config SUPPORT_CPU_UCODE_IN_CBFS
bool
default n
+config CPU_MICROCODE_MULTIPLE_CONTAINERS
+ bool
+ default n
+ help
+ Select this option to install separate microcode container files into
+ CBFS instead of using the traditional monolithic microcode file format.
+
# 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,
@@ -78,6 +85,10 @@ config CPU_MICROCODE_ADDED_DURING_BUILD
bool
default y if CPU_MICROCODE_CBFS_GENERATE || CPU_MICROCODE_CBFS_EXTERNAL
+config CPU_MICROCODE_CBFS_GENERATE_MONOLITHIC_FILE
+ bool
+ default y if !CPU_MICROCODE_MULTIPLE_CONTAINERS
+
choice
prompt "Include CPU microcode in CBFS" if ARCH_X86
default CPU_MICROCODE_CBFS_GENERATE if SUPPORT_CPU_UCODE_IN_CBFS && USE_BLOBS
diff --git a/src/cpu/Makefile.inc b/src/cpu/Makefile.inc
index 9220a8a..e51866e 100644
--- a/src/cpu/Makefile.inc
+++ b/src/cpu/Makefile.inc
@@ -23,7 +23,7 @@ cpu_ucode_cbfs_file = $(call strip_quotes,$(CONFIG_CPU_MICROCODE_FILE))
cbfs_include_ucode = y
endif
-ifeq ($(CONFIG_CPU_MICROCODE_CBFS_GENERATE), y)
+ifeq ($(CONFIG_CPU_MICROCODE_CBFS_GENERATE_MONOLITHIC_FILE), y)
cpu_ucode_cbfs_file = $(obj)/cpu_microcode_blob.bin
cbfs_include_ucode = y
endif
diff --git a/src/cpu/amd/model_10xxx/Kconfig b/src/cpu/amd/model_10xxx/Kconfig
index ebd282a..e2c7c88 100644
--- a/src/cpu/amd/model_10xxx/Kconfig
+++ b/src/cpu/amd/model_10xxx/Kconfig
@@ -11,6 +11,7 @@ config CPU_AMD_MODEL_10XXX
select UDELAY_LAPIC
select HAVE_MONOTONIC_TIMER
select SUPPORT_CPU_UCODE_IN_CBFS
+ select CPU_MICROCODE_MULTIPLE_CONTAINERS
if CPU_AMD_MODEL_10XXX
diff --git a/src/cpu/amd/model_10xxx/Makefile.inc b/src/cpu/amd/model_10xxx/Makefile.inc
index 122e474..d359f35 100644
--- a/src/cpu/amd/model_10xxx/Makefile.inc
+++ b/src/cpu/amd/model_10xxx/Makefile.inc
@@ -8,4 +8,12 @@ ramstage-y += ram_calc.c
ramstage-y += monotonic_timer.c
ramstage-$(CONFIG_HAVE_ACPI_TABLES) += powernow_acpi.c
-cpu_microcode_bins += 3rdparty/blobs/cpu/amd/model_10xxx/microcode.bin
+# Microcode for Family 10h, 11h, 12h, and 14h
+cbfs-files-$(CONFIG_CPU_MICROCODE_MULTIPLE_CONTAINERS) += microcode_amd.bin
+microcode_amd.bin-file := 3rdparty/blobs/cpu/amd/family_10h-family_14h/microcode_amd.bin
+microcode_amd.bin-type := microcode
+
+# Microcode for Family 15h
+cbfs-files-$(CONFIG_CPU_MICROCODE_MULTIPLE_CONTAINERS) += microcode_amd_fam15h.bin
+microcode_amd_fam15h.bin-file := 3rdparty/blobs/cpu/amd/family_15h/microcode_amd_fam15h.bin
+microcode_amd_fam15h.bin-type := microcode
More information about the coreboot-gerrit
mailing list