summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
authorEddie James <eajames@linux.ibm.com>2022-05-13 21:29:59 +0300
committerIlias Apalodimas <ilias.apalodimas@linaro.org>2022-05-23 16:32:55 +0300
commit8d7199da3fa40d5a8d4a89d98c630bb8b92d7554 (patch)
tree62e3f403e1dfefb68f06a697f98f14160aa4f192 /drivers
parent6f00b97d7e5760d92566317dde6c4b9224790827 (diff)
downloadu-boot-8d7199da3fa40d5a8d4a89d98c630bb8b92d7554.tar.xz
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 <eajames@linux.ibm.com> Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org> Reviewed-by: Joel Stanley <joel@jms.id.au> Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/tpm/tpm2_tis_core.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/tpm/tpm2_tis_core.c b/drivers/tpm/tpm2_tis_core.c
index 51392c4584..985a816219 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 |