diff mbox

mfd: twl4030: clarify the return value for read and write

Message ID 1259760678-18707-1-git-send-email-amit.kucheria@verdurent.com (mailing list archive)
State Awaiting Upstream, archived
Headers show

Commit Message

Amit Kucheria Dec. 2, 2009, 1:31 p.m. UTC
None
diff mbox

Patch

diff --git a/drivers/mfd/twl4030-core.c b/drivers/mfd/twl4030-core.c
index cf462b9..6ace378 100644
--- a/drivers/mfd/twl4030-core.c
+++ b/drivers/mfd/twl4030-core.c
@@ -298,10 +298,12 @@  int twl4030_i2c_write(u8 mod_no, u8 *value, u8 reg, unsigned num_bytes)
 	ret = i2c_transfer(twl->client->adapter, twl->xfer_msg, 1);
 	mutex_unlock(&twl->xfer_lock);
 
-	/* i2cTransfer returns num messages.translate it pls.. */
-	if (ret >= 0)
-		ret = 0;
-	return ret;
+	/* i2c_transfer returns number of messages transferred */
+	if (ret != 1) {
+		pr_err("%s: twl4030_i2c_write failed to transfer all messages\n", DRIVER_NAME);
+		return ret;
+	} else
+		return 0;
 }
 EXPORT_SYMBOL(twl4030_i2c_write);
 
@@ -350,10 +352,13 @@  int twl4030_i2c_read(u8 mod_no, u8 *value, u8 reg, unsigned num_bytes)
 	ret = i2c_transfer(twl->client->adapter, twl->xfer_msg, 2);
 	mutex_unlock(&twl->xfer_lock);
 
-	/* i2cTransfer returns num messages.translate it pls.. */
-	if (ret >= 0)
-		ret = 0;
-	return ret;
+	/* i2c_transfer returns number of messages transferred */
+	if (ret != 2) {
+		pr_err("%s: twl4030_i2c_read failed to transfer all messages\n", DRIVER_NAME);
+		return ret;
+	}
+	else
+		return 0;
 }
 EXPORT_SYMBOL(twl4030_i2c_read);