summaryrefslogtreecommitdiff
path: root/src/cpu/intel/model_f0x
diff options
context:
space:
mode:
Diffstat (limited to 'src/cpu/intel/model_f0x')
-rw-r--r--src/cpu/intel/model_f0x/Kconfig1
-rw-r--r--src/cpu/intel/model_f0x/Makefile.inc2
-rw-r--r--src/cpu/intel/model_f0x/microcode_blob.c14
-rw-r--r--src/cpu/intel/model_f0x/model_f0x_init.c17
4 files changed, 18 insertions, 16 deletions
diff --git a/src/cpu/intel/model_f0x/Kconfig b/src/cpu/intel/model_f0x/Kconfig
index 9dd7fd0bdc..06165890e1 100644
--- a/src/cpu/intel/model_f0x/Kconfig
+++ b/src/cpu/intel/model_f0x/Kconfig
@@ -1,3 +1,4 @@
config CPU_INTEL_MODEL_F0X
bool
select SMP
+ select SUPPORT_CPU_UCODE_IN_CBFS
diff --git a/src/cpu/intel/model_f0x/Makefile.inc b/src/cpu/intel/model_f0x/Makefile.inc
index 79ea2a0632..6c16419947 100644
--- a/src/cpu/intel/model_f0x/Makefile.inc
+++ b/src/cpu/intel/model_f0x/Makefile.inc
@@ -1 +1,3 @@
ramstage-y += model_f0x_init.c
+
+cpu_microcode-$(CONFIG_CPU_MICROCODE_CBFS_GENERATE) += microcode_blob.c
diff --git a/src/cpu/intel/model_f0x/microcode_blob.c b/src/cpu/intel/model_f0x/microcode_blob.c
new file mode 100644
index 0000000000..079a2cb390
--- /dev/null
+++ b/src/cpu/intel/model_f0x/microcode_blob.c
@@ -0,0 +1,14 @@
+/* 256KB cache */
+unsigned microcode_updates_f0x[] = {
+ #include "microcode-678-2f0708.h"
+ #include "microcode-965-m01f0a13.h"
+ #include "microcode-983-m02f0a15.h"
+ #include "microcode-964-m01f0712.h"
+ #include "microcode-966-m04f0a14.h"
+
+ /* Dummy terminator */
+ 0x0, 0x0, 0x0, 0x0,
+ 0x0, 0x0, 0x0, 0x0,
+ 0x0, 0x0, 0x0, 0x0,
+ 0x0, 0x0, 0x0, 0x0,
+};
diff --git a/src/cpu/intel/model_f0x/model_f0x_init.c b/src/cpu/intel/model_f0x/model_f0x_init.c
index ed12b6edfd..8d8118224e 100644
--- a/src/cpu/intel/model_f0x/model_f0x_init.c
+++ b/src/cpu/intel/model_f0x/model_f0x_init.c
@@ -9,21 +9,6 @@
#include <cpu/intel/microcode.h>
#include <cpu/x86/cache.h>
-/* 256KB cache */
-static uint32_t microcode_updates[] = {
- #include "microcode-678-2f0708.h"
- #include "microcode-965-m01f0a13.h"
- #include "microcode-983-m02f0a15.h"
- #include "microcode-964-m01f0712.h"
- #include "microcode-966-m04f0a14.h"
-
- /* Dummy terminator */
- 0x0, 0x0, 0x0, 0x0,
- 0x0, 0x0, 0x0, 0x0,
- 0x0, 0x0, 0x0, 0x0,
- 0x0, 0x0, 0x0, 0x0,
-};
-
static void model_f0x_init(device_t dev)
{
/* Turn on caching if we haven't already */
@@ -32,7 +17,7 @@ static void model_f0x_init(device_t dev)
x86_mtrr_check();
/* Update the microcode */
- intel_update_microcode(microcode_updates);
+ intel_update_microcode_from_cbfs();
/* Enable the local cpu apics */
setup_lapic();