summaryrefslogtreecommitdiff
path: root/src/soc/intel/common/block
diff options
context:
space:
mode:
authorSubrata Banik <subratabanik@google.com>2023-04-20 11:08:17 +0530
committerFelix Held <felix-coreboot@felixheld.de>2023-04-21 15:23:13 +0000
commit5ff0118a58a6ff67f0e89920403738e77e302d74 (patch)
treebcbf12c593986e3db83f854df908c356cecf8d01 /src/soc/intel/common/block
parentdb7b35a9c97c07a6097779459a7816c38242f569 (diff)
soc/intel/(adl, cmn, mtl): Refactor cse_fw_sync() function
This patch refactors cse_fw_sync() function to include timestamp associated with the CSE sync operation.This effort will ensure the SoC code just makes a call into the cse_fw_sync() without bothering about adding timestamp entries. TEST=Able to build and boot google/marasov. Signed-off-by: Subrata Banik <subratabanik@google.com> Change-Id: Ib5e8fc2b8c3b605103f7b1238df5a8405e363f83 Reviewed-on: https://review.coreboot.org/c/coreboot/+/74582 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Arthur Heymans <arthur@aheymans.xyz> Reviewed-by: Kapil Porwal <kapilporwal@google.com> Reviewed-by: Kangheui Won <khwon@chromium.org>
Diffstat (limited to 'src/soc/intel/common/block')
-rw-r--r--src/soc/intel/common/block/cse/cse_lite.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/soc/intel/common/block/cse/cse_lite.c b/src/soc/intel/common/block/cse/cse_lite.c
index 1e2a052378..14a73814bf 100644
--- a/src/soc/intel/common/block/cse/cse_lite.c
+++ b/src/soc/intel/common/block/cse/cse_lite.c
@@ -1077,7 +1077,7 @@ static enum csme_failure_reason cse_sub_part_fw_update(const struct cse_bp_info
return handle_cse_sub_part_fw_update_rv(rv);
}
-void cse_fw_sync(void)
+static void do_cse_fw_sync(void)
{
static struct get_bp_info_rsp cse_bp_info;
@@ -1152,6 +1152,13 @@ void cse_fw_sync(void)
}
}
+void cse_fw_sync(void)
+{
+ timestamp_add_now(TS_CSE_FW_SYNC_START);
+ do_cse_fw_sync();
+ timestamp_add_now(TS_CSE_FW_SYNC_END);
+}
+
static enum cb_err send_get_fpt_partition_info_cmd(enum fpt_partition_id id,
struct fw_version_resp *resp)
{
@@ -1214,11 +1221,8 @@ static void ramstage_cse_fw_sync(void *unused)
if (acpi_get_sleep_type() == ACPI_S3)
return;
- if (CONFIG(SOC_INTEL_CSE_LITE_SYNC_IN_RAMSTAGE)) {
- timestamp_add_now(TS_CSE_FW_SYNC_START);
+ if (CONFIG(SOC_INTEL_CSE_LITE_SYNC_IN_RAMSTAGE))
cse_fw_sync();
- timestamp_add_now(TS_CSE_FW_SYNC_END);
- }
}
BOOT_STATE_INIT_ENTRY(BS_PRE_DEVICE, BS_ON_EXIT, ramstage_cse_fw_sync, NULL);