[Skiboot] [PATCH 08/14] tpm_i2c_nuvoton: handle errors after writing sts.go
Claudio Carvalho
cclaudio at linux.vnet.ibm.com
Mon Nov 28 14:08:08 AEDT 2016
This handles errors returned by the tpm-i2c interface after writing
sts.go in tpm_transmit().
Fixes: 56ad053c3e8bf0764ad5878cb018f00a389d30cf
Signed-off-by: Claudio Carvalho <cclaudio at linux.vnet.ibm.com>
---
libstb/drivers/tpm_i2c_nuvoton.c | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/libstb/drivers/tpm_i2c_nuvoton.c b/libstb/drivers/tpm_i2c_nuvoton.c
index 62236e4..aba7211 100644
--- a/libstb/drivers/tpm_i2c_nuvoton.c
+++ b/libstb/drivers/tpm_i2c_nuvoton.c
@@ -436,10 +436,19 @@ static int tpm_transmit(struct tpm_dev *dev, uint8_t* buf, size_t cmdlen,
if (rc < 0)
goto out;
- DBG("step 3/5: write tpmgo\n");
+ DBG("step 3/5: write sts.go\n");
rc = tpm_status_write_byte(TPM_STS_GO);
- if (rc < 0)
+ if (rc < 0) {
+ /**
+ * @fwts-label TPMWriteGo
+ * @fwts-advice Either the tpm device or the tpm-i2c interface
+ * doesn't seem to be working properly. Check the return code
+ * (rc) for further details.
+ */
+ prlog(PR_ERR, "NUVOTON: fail to write sts.go, rc=%d\n", rc);
+ rc = STB_DRIVER_ERROR;
goto out;
+ }
DBG("step 4/5: read FIFO\n");
rc = tpm_read_fifo(buf, buflen);
--
1.9.1
More information about the Skiboot
mailing list