For easier decoding, output the error code returned from the tpm device in hex when the device is TPM2.0.
Cc: Jarkko Sakkinen <jarkko.sakki...@linux.intel.com> Cc: Peter Huewe <peterhu...@gmx.de> Cc: Marcel Selhorst <tp...@selhorst.net> Cc: Jason Gunthorpe <jguntho...@obsidianresearch.com> Reported-by: Ken Goldman <kgold...@us.ibm.com> Signed-off-by: Jerry Snitselaar <jsnit...@redhat.com> --- drivers/char/tpm/tpm-interface.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/drivers/char/tpm/tpm-interface.c b/drivers/char/tpm/tpm-interface.c index bd2128e0b56c..b6c67eef9ae7 100644 --- a/drivers/char/tpm/tpm-interface.c +++ b/drivers/char/tpm/tpm-interface.c @@ -453,9 +453,14 @@ ssize_t tpm_transmit_cmd(struct tpm_chip *chip, const void *buf, return -EFAULT; err = be32_to_cpu(header->return_code); - if (err != 0 && desc) - dev_err(&chip->dev, "A TPM error (%d) occurred %s\n", err, - desc); + if (err != 0 && desc) { + if (chip->flags & TPM_CHIP_FLAG_TPM2) + dev_err(&chip->dev, "A TPM 2.0 error (0x%x) occurred %s\n", + err, desc); + else + dev_err(&chip->dev, "A TPM error (%d) occurred %s\n", + err, desc); + } if (err) return err; -- 2.13.0.rc0.45.ge2cb6ab84