summaryrefslogtreecommitdiff
path: root/chip/mchp/espi.c
diff options
context:
space:
mode:
Diffstat (limited to 'chip/mchp/espi.c')
-rw-r--r--chip/mchp/espi.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/chip/mchp/espi.c b/chip/mchp/espi.c
index 53d17e90b2..dce81448d7 100644
--- a/chip/mchp/espi.c
+++ b/chip/mchp/espi.c
@@ -20,6 +20,7 @@
#include "power.h"
#include "registers.h"
#include "system.h"
+#include "system_boot_time.h"
#include "task.h"
#include "tfdp_chip.h"
#include "timer.h"
@@ -833,6 +834,7 @@ int espi_vw_disable_wire_int(enum espi_vw_signal signal)
static void espi_chipset_reset(void)
{
hook_notify(HOOK_CHIPSET_RESET);
+ update_ap_boot_time(ESPIRST);
}
DECLARE_DEFERRED(espi_chipset_reset);
#endif
@@ -867,12 +869,15 @@ void espi_vw_evt_pltrst_n(uint32_t wire_state, uint32_t bpos)
{
CPRINTS("VW PLTRST#: %d", wire_state);
- if (wire_state) /* Platform Reset de-assertion */
+ if (wire_state) { /* Platform Reset de-assertion */
espi_host_init();
- else /* assertion */
+ update_ap_boot_time(PLTRST_HIGH);
+ } else { /* assertion */
#ifdef CONFIG_CHIPSET_RESET_HOOK
hook_call_deferred(&espi_chipset_reset_data, MSEC);
#endif
+ update_ap_boot_time(PLTRST_LOW);
+ }
}
/* OOB Reset Warn event handler */