summaryrefslogtreecommitdiff
path: root/src/cpu/intel/haswell/smmrelocate.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cpu/intel/haswell/smmrelocate.c')
-rw-r--r--src/cpu/intel/haswell/smmrelocate.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/cpu/intel/haswell/smmrelocate.c b/src/cpu/intel/haswell/smmrelocate.c
index 65ac36388f..a8ab841492 100644
--- a/src/cpu/intel/haswell/smmrelocate.c
+++ b/src/cpu/intel/haswell/smmrelocate.c
@@ -396,7 +396,8 @@ int smm_initialize(void)
if (cpu_smm_setup())
return -1;
- southbridge_smm_init();
+ /* Clear the SMM state in the southbridge. */
+ southbridge_smm_clear_state();
/* Run the relocation handler. */
smm_initiate_relocation();
@@ -412,6 +413,10 @@ int smm_initialize(void)
release_aps_for_smm_relocation(0);
}
+ /* Now that all APs have been relocated as well as the BSP let SMIs
+ * start flowing. */
+ southbridge_smm_enable_smi();
+
/* Lock down the SMRAM space. */
smm_lock();