drivers/pc80/tpm: Fix missing tis_close() function

tis_close() must be called after tis_open() otherwise the locked
locality isn't released and the sessions hangs.

Tested=PC Engines APU2

Change-Id: I1a06f6a29015708e4bc1de6e6678827c28b84e98
Signed-off-by: Philipp Deppenwiese <zaolin@das-labor.org>
Reviewed-on: https://review.coreboot.org/19535
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Rudolph <siro@das-labor.org>
This commit is contained in:
Philipp Deppenwiese 2017-05-03 03:48:51 +02:00 committed by Martin Roth
parent 4aaa7e35f5
commit 35418f9814
1 changed files with 3 additions and 1 deletions

View File

@ -215,7 +215,6 @@ void init_tpm(int s3resume)
if (tis_open())
return;
if (s3resume) {
/* S3 Resume */
printk(BIOS_SPEW, "TPM: Resume\n");
@ -226,6 +225,7 @@ void init_tpm(int s3resume)
* in S3, so it's already initialized.
*/
printk(BIOS_DEBUG, "TPM: Already initialized.\n");
tis_close();
return;
}
} else {
@ -234,6 +234,8 @@ void init_tpm(int s3resume)
response, sizeof(response));
}
tis_close();
if (result == TPM_SUCCESS) {
printk(BIOS_SPEW, "TPM: OK.\n");
return;