diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/tpm/tpm2_tis_core.c | 6 | ||||
-rw-r--r-- | drivers/tpm/tpm2_tis_mmio.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/drivers/tpm/tpm2_tis_core.c b/drivers/tpm/tpm2_tis_core.c index ec8c730fe9..51392c4584 100644 --- a/drivers/tpm/tpm2_tis_core.c +++ b/drivers/tpm/tpm2_tis_core.c @@ -378,8 +378,14 @@ out: int tpm_tis_cleanup(struct udevice *dev) { struct tpm_chip *chip = dev_get_priv(dev); + int ret; + + ret = tpm_tis_request_locality(dev, 0); + if (ret) + return ret; tpm_tis_ready(dev); + tpm_tis_release_locality(dev, chip->locality); return 0; diff --git a/drivers/tpm/tpm2_tis_mmio.c b/drivers/tpm/tpm2_tis_mmio.c index f04aab2e6e..a646ce41ff 100644 --- a/drivers/tpm/tpm2_tis_mmio.c +++ b/drivers/tpm/tpm2_tis_mmio.c @@ -120,7 +120,7 @@ static int tpm_tis_remove(struct udevice *dev) struct tpm_tis_chip_data *drv_data = (void *)dev_get_driver_data(dev); int ret; - ret = tpm_tis_cleanup(dev); + ret = tpm_tis_cleanup(dev); iounmap(drv_data->iobase); |