aboutsummaryrefslogtreecommitdiff
path: root/src/security/tpm
diff options
context:
space:
mode:
authorJon Murphy <jpmurphy@google.com>2023-09-05 11:43:14 -0600
committerRaul Rangel <rrangel@chromium.org>2023-09-28 16:55:03 +0000
commita2f08aa5c4420053d80ca23992b9e61888976f7c (patch)
treeec265453e1f5548edc98efcdd765fa56f7ee6cde /src/security/tpm
parentdb4e93ba1a927527f4a095aa8395c31c87d2438d (diff)
drivers/tpm: Add tpm failure handling
Add additional failure mode logic for the TPM to enable an automated recovery mode for GSC hangs. BUG=b:296439237 TEST=Force the error by hard coding the return code and observe the device entering hibernate. BRANCH=None Change-Id: Ieec7e9227d538130354dea8b772d0306cdda1237 Signed-off-by: Jon Murphy <jpmurphy@google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/77667 Reviewed-by: Eric Lai <eric_lai@quanta.corp-partner.google.com> Reviewed-by: Julius Werner <jwerner@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/security/tpm')
-rw-r--r--src/security/tpm/Kconfig9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/security/tpm/Kconfig b/src/security/tpm/Kconfig
index 39134c1c71..c06150dacd 100644
--- a/src/security/tpm/Kconfig
+++ b/src/security/tpm/Kconfig
@@ -172,3 +172,12 @@ config PCR_RUNTIME_DATA
default 3
endmenu # Trusted Platform Module (tpm)
+
+config TPM_SETUP_HIBERNATE_ON_ERR
+ bool
+ depends on EC_GOOGLE_CHROMEEC
+ help
+ Select this to force a device to hibernate on the next AP shutdown when a TPM
+ setup error occurs. This will cause a cold boot of the system and offer an
+ opportunity to recover the TPM should it be hung. This is only effective if
+ the Z-State brings the power rail down.