summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/soc/intel/common/block/cpu/mp_init.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/soc/intel/common/block/cpu/mp_init.c b/src/soc/intel/common/block/cpu/mp_init.c
index 99d9507c55..2d838c5ea3 100644
--- a/src/soc/intel/common/block/cpu/mp_init.c
+++ b/src/soc/intel/common/block/cpu/mp_init.c
@@ -152,6 +152,14 @@ static void coreboot_init_cpus(void *unused)
init_cpus();
}
+static void post_cpus_add_romcache(void)
+{
+ if (!CONFIG(BOOT_DEVICE_MEMORY_MAPPED))
+ return;
+
+ fast_spi_cache_bios_region();
+}
+
static void wrapper_x86_setup_mtrrs(void *unused)
{
x86_setup_mtrrs_with_detect();
@@ -163,6 +171,7 @@ static void post_cpus_init(void *unused)
if (mp_run_on_all_cpus(&wrapper_x86_setup_mtrrs, NULL) != CB_SUCCESS)
printk(BIOS_ERR, "MTRR programming failure\n");
+ post_cpus_add_romcache();
x86_mtrr_check();
}