From 8d7199da3fa40d5a8d4a89d98c630bb8b92d7554 Mon Sep 17 00:00:00 2001 From: Eddie James Date: Fri, 13 May 2022 13:29:59 -0500 Subject: [PATCH] tpm: core: Set timeouts before requesting locality Requesting the locality uses the timeout values, so they need to be set beforehand. Signed-off-by: Eddie James Reviewed-by: Ilias Apalodimas Reviewed-by: Joel Stanley Signed-off-by: Ilias Apalodimas --- drivers/tpm/tpm2_tis_core.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/tpm/tpm2_tis_core.c b/drivers/tpm/tpm2_tis_core.c index 51392c4..985a816 100644 --- a/drivers/tpm/tpm2_tis_core.c +++ b/drivers/tpm/tpm2_tis_core.c @@ -433,15 +433,16 @@ int tpm_tis_init(struct udevice *dev) log_err("Driver bug. No bus ops defined\n"); return -1; } - ret = tpm_tis_request_locality(dev, 0); - if (ret) - return ret; chip->timeout_a = TIS_SHORT_TIMEOUT_MS; chip->timeout_b = TIS_LONG_TIMEOUT_MS; chip->timeout_c = TIS_SHORT_TIMEOUT_MS; chip->timeout_d = TIS_SHORT_TIMEOUT_MS; + ret = tpm_tis_request_locality(dev, 0); + if (ret) + return ret; + /* Disable interrupts */ phy_ops->read32(dev, TPM_INT_ENABLE(chip->locality), &tmp); tmp |= TPM_INTF_CMD_READY_INT | TPM_INTF_LOCALITY_CHANGE_INT | -- 2.7.4