aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/drivers/intel/fsp1_0/fsp_util.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/drivers/intel/fsp1_0/fsp_util.c b/src/drivers/intel/fsp1_0/fsp_util.c
index a09b1b141c..71f64161cc 100644
--- a/src/drivers/intel/fsp1_0/fsp_util.c
+++ b/src/drivers/intel/fsp1_0/fsp_util.c
@@ -22,6 +22,7 @@
#include <lib.h> // hexdump
#include <ip_checksum.h>
#include <timestamp.h>
+#include <cpu/intel/microcode.h>
#ifndef __PRE_RAM__
/* Globals pointers for FSP structures */
@@ -75,6 +76,10 @@ void __noreturn fsp_early_init (FSP_INFO_HEADER *fsp_ptr)
UPD_DATA_REGION fsp_upd_data;
#endif
+ /* Load microcode before RAM init */
+ if (IS_ENABLED(CONFIG_SUPPORT_CPU_UCODE_IN_CBFS))
+ intel_update_microcode_from_cbfs();
+
memset((void *)&FspRtBuffer, 0, sizeof(FSP_INIT_RT_BUFFER));
FspRtBuffer.Common.StackTop = (u32 *)CONFIG_RAMTOP;
FspInitParams.NvsBufferPtr = NULL;