diff options
author | Joel Kitching <kitching@google.com> | 2018-09-26 17:52:54 +0800 |
---|---|---|
committer | Philipp Deppenwiese <zaolin.daisuki@gmail.com> | 2018-10-05 03:47:22 +0000 |
commit | f97ff0cd503eb254432848e0f6ec6b6c2a15ce47 (patch) | |
tree | 310d308b004fa0451ada15dbadbae2143fe3533c /src/security/tpm | |
parent | 7aa44522f29fd18ed165756887586dc9981445f7 (diff) |
tpm2/tlcl_send_startup: correct TPM2_Startup error logic
BUG=b:114018226
TEST=compile coreboot
Change-Id: Iffad582d5c19252dde1c9dc97fc7fd145944a3b3
Signed-off-by: Joel Kitching <kitching@google.com>
Reviewed-on: https://review.coreboot.org/28749
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Diffstat (limited to 'src/security/tpm')
-rw-r--r-- | src/security/tpm/tss/tcg-2.0/tss.c | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/src/security/tpm/tss/tcg-2.0/tss.c b/src/security/tpm/tss/tcg-2.0/tss.c index 7db746f4e1..e6ec57c811 100644 --- a/src/security/tpm/tss/tcg-2.0/tss.c +++ b/src/security/tpm/tss/tcg-2.0/tss.c @@ -61,14 +61,13 @@ static uint32_t tlcl_send_startup(TPM_SU type) startup.startup_type = type; response = tpm_process_command(TPM2_Startup, &startup); - if (response && response->hdr.tpm_code && - (response->hdr.tpm_code != TPM_RC_INITIALIZE)) { - printk(BIOS_INFO, "%s: Startup return code is %x\n", - __func__, response->hdr.tpm_code); - return TPM_E_IOERROR; + if (response && (response->hdr.tpm_code == 0 || + response->hdr.tpm_code == TPM_RC_INITIALIZE)) { + return TPM_SUCCESS; } - return TPM_SUCCESS; - + printk(BIOS_INFO, "%s: Startup return code is %x\n", + __func__, response->hdr.tpm_code); + return TPM_E_IOERROR; } uint32_t tlcl_resume(void) |