diff options
author | Timothy Pearson <tpearson@raptorengineeringinc.com> | 2015-10-08 16:58:58 -0500 |
---|---|---|
committer | Aaron Durbin <adurbin@chromium.org> | 2015-10-16 02:41:37 +0000 |
commit | 24e6d0445c7ca209436a6c15c0b955df18052bdf (patch) | |
tree | 4dc34032a1d731d52b65524a37d3d25c18d955e8 /src/cpu | |
parent | 6a70dbc3973ff445af05f7d74f2efafd2317e6c9 (diff) | |
download | coreboot-24e6d0445c7ca209436a6c15c0b955df18052bdf.tar.xz |
cpu/amd/model_10xxx: Install AMD-provided microcode files in CBFS
Change-Id: I208b012c6b612a94b3bbc8235d5a005028be8bcc
Signed-off-by: Timothy Pearson <tpearson@raptorengineeringinc.com>
Reviewed-on: http://review.coreboot.org/11832
Tested-by: build bot (Jenkins)
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Diffstat (limited to 'src/cpu')
-rw-r--r-- | src/cpu/Kconfig | 8 | ||||
-rw-r--r-- | src/cpu/Makefile.inc | 2 | ||||
-rw-r--r-- | src/cpu/amd/model_10xxx/Kconfig | 1 | ||||
-rw-r--r-- | src/cpu/amd/model_10xxx/Makefile.inc | 5 |
4 files changed, 15 insertions, 1 deletions
diff --git a/src/cpu/Kconfig b/src/cpu/Kconfig index bfe00fe4e8..578bab2296 100644 --- a/src/cpu/Kconfig +++ b/src/cpu/Kconfig @@ -153,6 +153,14 @@ config CPU_MICROCODE_CBFS_NONE endchoice +config CPU_MICROCODE_MULTIPLE_FILES + bool + default n + depends on CPU_MICROCODE_CBFS_GENERATE + help + Select this option to install separate microcode container files into + CBFS instead of using the traditional monolithic microcode file format. + config CPU_MICROCODE_FILE string "Path and filename of CPU microcode" depends on CPU_MICROCODE_CBFS_EXTERNAL diff --git a/src/cpu/Makefile.inc b/src/cpu/Makefile.inc index 9220a8aa44..d9390610c6 100644 --- a/src/cpu/Makefile.inc +++ b/src/cpu/Makefile.inc @@ -24,9 +24,11 @@ cbfs_include_ucode = y endif ifeq ($(CONFIG_CPU_MICROCODE_CBFS_GENERATE), y) +ifneq ($(CONFIG_CPU_MICROCODE_MULTIPLE_FILES), y) cpu_ucode_cbfs_file = $(obj)/cpu_microcode_blob.bin cbfs_include_ucode = y endif +endif # We just mash all microcode binaries together into one binary to rule them all. # This approach assumes that the microcode binaries are properly padded, and diff --git a/src/cpu/amd/model_10xxx/Kconfig b/src/cpu/amd/model_10xxx/Kconfig index ebd282a5ca..7c47e27ca2 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_FILES if CPU_AMD_MODEL_10XXX diff --git a/src/cpu/amd/model_10xxx/Makefile.inc b/src/cpu/amd/model_10xxx/Makefile.inc index 122e47430b..5a81ab8b11 100644 --- a/src/cpu/amd/model_10xxx/Makefile.inc +++ b/src/cpu/amd/model_10xxx/Makefile.inc @@ -8,4 +8,7 @@ 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_FILES) += microcode_amd.bin +microcode_amd.bin-file := 3rdparty/blobs/cpu/amd/family_10h-family_14h/microcode_amd.bin +microcode_amd.bin-type := microcode |