2013-03-04 21:17:03

by Peter Huewe

[permalink] [raw]
Subject: [PATCH] tpm/tpm_i2c_infineon: Add small comment about return value of __i2c_transfer

Kent Yoder indicated that the code might be a bit clearer with a comment
here, so this patch adds a small explanation of the code.

CC: Kent Yoder <[email protected]>
Signed-off-by: Peter Huewe <[email protected]>
---
drivers/char/tpm/tpm_i2c_infineon.c | 9 +++++++++
1 file changed, 9 insertions(+)

diff --git a/drivers/char/tpm/tpm_i2c_infineon.c b/drivers/char/tpm/tpm_i2c_infineon.c
index d83bb8c..37d5dcc 100644
--- a/drivers/char/tpm/tpm_i2c_infineon.c
+++ b/drivers/char/tpm/tpm_i2c_infineon.c
@@ -162,6 +162,10 @@ out:
/* take care of 'guard time' */
usleep_range(SLEEP_DURATION_LOW, SLEEP_DURATION_HI);

+ /* __i2c_transfer returns the number of successfully transferred
+ * messages.
+ * So rc should be greater than 0 here otherwise we have an error.
+ */
if (rc <= 0)
return -EIO;

@@ -208,6 +212,11 @@ static int iic_tpm_write_generic(u8 addr, u8 *buffer, size_t len,
i2c_unlock_adapter(tpm_dev.client->adapter);
/* take care of 'guard time' */
usleep_range(SLEEP_DURATION_LOW, SLEEP_DURATION_HI);
+
+ /* __i2c_transfer returns the number of successfully transferred
+ * messages.
+ * So rc should be greater than 0 here otherwise we have an error.
+ */
if (rc <= 0)
return -EIO;

--
1.7.12.4