aboutsummaryrefslogtreecommitdiff
path: root/src/soc/intel/common/block/cse/cse.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/soc/intel/common/block/cse/cse.c')
-rw-r--r--src/soc/intel/common/block/cse/cse.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/soc/intel/common/block/cse/cse.c b/src/soc/intel/common/block/cse/cse.c
index 9b8db54efd..8f32c7ce61 100644
--- a/src/soc/intel/common/block/cse/cse.c
+++ b/src/soc/intel/common/block/cse/cse.c
@@ -1256,6 +1256,22 @@ static void cse_final_end_of_firmware(void)
}
/*
+ * This function to perform essential post EOP cse related operations
+ * upon SoC selecting `SOC_INTEL_CSE_SEND_EOP_LATE` config
+ */
+void cse_late_finalize(void)
+{
+ if (!CONFIG(SOC_INTEL_CSE_SEND_EOP_LATE))
+ return;
+
+ if (!CONFIG(USE_FSP_NOTIFY_PHASE_READY_TO_BOOT))
+ cse_final_ready_to_boot();
+
+ if (!CONFIG(USE_FSP_NOTIFY_PHASE_END_OF_FIRMWARE))
+ cse_final_end_of_firmware();
+}
+
+/*
* `cse_final` function is native implementation of equivalent events performed by
* each FSP NotifyPhase() API invocations.
*/