summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/commonlib/include/commonlib/timestamp_serialized.h4
-rw-r--r--src/drivers/elog/elog.c8
2 files changed, 12 insertions, 0 deletions
diff --git a/src/commonlib/include/commonlib/timestamp_serialized.h b/src/commonlib/include/commonlib/timestamp_serialized.h
index 98fe552b47..de3e1bb624 100644
--- a/src/commonlib/include/commonlib/timestamp_serialized.h
+++ b/src/commonlib/include/commonlib/timestamp_serialized.h
@@ -56,6 +56,8 @@ enum timestamp_id {
TS_DELAY_END = 111,
TS_READ_UCODE_START = 112,
TS_READ_UCODE_END = 113,
+ TS_ELOG_INIT_START = 114,
+ TS_ELOG_INIT_END = 115,
/* 500+ reserved for vendorcode extensions (500-600: google/chromeos) */
TS_START_COPYVER = 501,
@@ -200,6 +202,8 @@ static const struct timestamp_id_to_name {
{ TS_DELAY_END, "Forced delay end" },
{ TS_READ_UCODE_START, "started reading uCode" },
{ TS_READ_UCODE_END, "finished reading uCode" },
+ { TS_ELOG_INIT_START, "started elog init" },
+ { TS_ELOG_INIT_END, "finished elog init" },
{ TS_START_COPYVER, "starting to load verstage" },
{ TS_END_COPYVER, "finished loading verstage" },
diff --git a/src/drivers/elog/elog.c b/src/drivers/elog/elog.c
index ca2ec6ecd6..37df182a8d 100644
--- a/src/drivers/elog/elog.c
+++ b/src/drivers/elog/elog.c
@@ -16,6 +16,7 @@
#include <smbios.h>
#include <stdint.h>
#include <string.h>
+#include <timestamp.h>
#define ELOG_MIN_AVAILABLE_ENTRIES 2 /* Shrink when this many can't fit */
#define ELOG_SHRINK_PERCENTAGE 25 /* Percent of total area to remove */
@@ -749,6 +750,9 @@ int elog_init(void)
}
elog_state.elog_initialized = ELOG_BROKEN;
+ if (!ENV_SMM)
+ timestamp_add_now(TS_ELOG_INIT_START);
+
elog_debug("%s()\n", __func__);
/* Set up the backing store */
@@ -781,6 +785,10 @@ int elog_init(void)
if (ENV_PAYLOAD_LOADER)
elog_add_boot_count();
+
+ if (!ENV_SMM)
+ timestamp_add_now(TS_ELOG_INIT_END);
+
return 0;
}