Shelley Chen has uploaded this change for review. ( https://review.coreboot.org/22909
Change subject: spi/tpm: Clear pending irqs during tpm2_init ......................................................................
spi/tpm: Clear pending irqs during tpm2_init
Seeing some instances were cr50 spi driver is starting a new transaction without getting a ready interrupt from cr50, which means that there are pending interrupts. Clearing these to be sure there are not any stale irqs for the next transaction.
BUG=b:69567837 BRANCH=None TEST=run FAFT and see if any 0x2b recovery boots occur
Change-Id: Ie099da9f2b3c4da417648ae10a5ba356b7a093ff Signed-off-by: Shelley Chen shchen@chromium.org --- M src/drivers/spi/tpm/tpm.c 1 file changed, 3 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/09/22909/1
diff --git a/src/drivers/spi/tpm/tpm.c b/src/drivers/spi/tpm/tpm.c index e1fec28..ceec0b0 100644 --- a/src/drivers/spi/tpm/tpm.c +++ b/src/drivers/spi/tpm/tpm.c @@ -429,6 +429,9 @@
memcpy(spi_slave, spi_if, sizeof(*spi_if));
+ /* clear any pending irqs */ + tis_plat_irq_status(); + /* * 150 ms should be enough to synchronize with the TPM even under the * worst nested reset request conditions. In vast majority of cases