tpm: add request_locality before write TPM_INT_ENABLE
Locality is not appropriately requested before writing the int mask.
Add the missing boilerplate.
Fixes: e6aef069b6
("tpm_tis: convert to using locality callbacks")
Signed-off-by: Chen Jun <chenjun102@huawei.com>
Reviewed-by: Jarkko Sakkinen <jarkko@kernel.org>
Signed-off-by: Jarkko Sakkinen <jarkko@kernel.org>
This commit is contained in:
parent
e7c124bd04
commit
0ef333f5ba
@ -994,7 +994,15 @@ int tpm_tis_core_init(struct device *dev, struct tpm_tis_data *priv, int irq,
|
|||||||
intmask |= TPM_INTF_CMD_READY_INT | TPM_INTF_LOCALITY_CHANGE_INT |
|
intmask |= TPM_INTF_CMD_READY_INT | TPM_INTF_LOCALITY_CHANGE_INT |
|
||||||
TPM_INTF_DATA_AVAIL_INT | TPM_INTF_STS_VALID_INT;
|
TPM_INTF_DATA_AVAIL_INT | TPM_INTF_STS_VALID_INT;
|
||||||
intmask &= ~TPM_GLOBAL_INT_ENABLE;
|
intmask &= ~TPM_GLOBAL_INT_ENABLE;
|
||||||
|
|
||||||
|
rc = request_locality(chip, 0);
|
||||||
|
if (rc < 0) {
|
||||||
|
rc = -ENODEV;
|
||||||
|
goto out_err;
|
||||||
|
}
|
||||||
|
|
||||||
tpm_tis_write32(priv, TPM_INT_ENABLE(priv->locality), intmask);
|
tpm_tis_write32(priv, TPM_INT_ENABLE(priv->locality), intmask);
|
||||||
|
release_locality(chip, 0);
|
||||||
|
|
||||||
rc = tpm_chip_start(chip);
|
rc = tpm_chip_start(chip);
|
||||||
if (rc)
|
if (rc)
|
||||||
|
Loading…
Reference in New Issue
Block a user