summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/soc/amd/common/psp_verstage/psp_verstage.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/soc/amd/common/psp_verstage/psp_verstage.c b/src/soc/amd/common/psp_verstage/psp_verstage.c
index 5c59c4f4e4..d223c945db 100644
--- a/src/soc/amd/common/psp_verstage/psp_verstage.c
+++ b/src/soc/amd/common/psp_verstage/psp_verstage.c
@@ -200,6 +200,16 @@ void Main(void)
{
uint32_t retval;
struct vb2_context *ctx = NULL;
+ uint32_t bootmode = 0;
+
+ /*
+ * Currently, we want to skip running verstage on all S0i3 resumes. This relies
+ * on an assumption that the PSP will be checksumming all of its components.
+ * TODO(b/196400450): Remove when PSP no longer loads verstage on S0i3 resume.
+ */
+ svc_get_boot_mode(&bootmode);
+ if (bootmode == PSP_BOOT_MODE_S0i3_RESUME)
+ svc_exit(0);
/*
* Do not use printk() before console_init()