summaryrefslogtreecommitdiff
path: root/src/soc
diff options
context:
space:
mode:
Diffstat (limited to 'src/soc')
-rw-r--r--src/soc/intel/meteorlake/fsp_params.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/soc/intel/meteorlake/fsp_params.c b/src/soc/intel/meteorlake/fsp_params.c
index 954e2e0d48..816a704790 100644
--- a/src/soc/intel/meteorlake/fsp_params.c
+++ b/src/soc/intel/meteorlake/fsp_params.c
@@ -14,6 +14,8 @@
#include <option.h>
#include <intelblocks/cse.h>
#include <intelblocks/lpss.h>
+#include <intelblocks/mp_init.h>
+#include <intelblocks/systemagent.h>
#include <intelblocks/xdci.h>
#include <intelpch/lockdown.h>
#include <security/vboot/vboot_common.h>
@@ -488,6 +490,7 @@ void platform_fsp_silicon_init_params_cb(FSPS_UPD *supd)
* Phase | FSP return point | Purpose
* ------- + ------------------------------------------------ + -------------------------------
* 1 | After TCSS initialization completed | for TCSS specific init
+ * 2 | Before BIOS Reset CPL is set by FSP-S | for CPU specific init
*/
void platform_fsp_multi_phase_init_cb(uint32_t phase_index)
{
@@ -502,6 +505,14 @@ void platform_fsp_multi_phase_init_cb(uint32_t phase_index)
tcss_configure(config->typec_aux_bias_pads);
}
break;
+ case 2:
+ /* CPU specific initialization here */
+ printk(BIOS_DEBUG, "FSP MultiPhaseSiInit %s/%s called\n",
+ __FILE__, __func__);
+ before_post_cpus_init();
+ /* Enable BIOS Reset CPL */
+ enable_bios_reset_cpl();
+ break;
default:
break;
}