diff options
m--------- | 3rdparty/blobs | 0 | ||||
-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 |
5 files changed, 15 insertions, 1 deletions
diff --git a/3rdparty/blobs b/3rdparty/blobs -Subproject 832bc6f1f8ffafc5ff397fd95616fdae988f224 +Subproject aab093f0824b6d26b57a1ce220ba0d577e37ad4 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 |