lkml.org 
[lkml]   [2011]   [Mar]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Subject[PATCH] misc: hmc6352: fix wrong return value checking for i2c_master_recv
FromAxel Lin <>
DateWed, 09 Mar 2011 16:41:56 +0800
i2c_master_recv() returns negative errno, or else the number of bytes read.
Thus i2c_master_recv(client, i2c_data, 2) returns 2 instead of 1 in success case.

Signed-off-by: Axel Lin <axel.lin@gmail.com>
---
drivers/misc/hmc6352.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/drivers/misc/hmc6352.c b/drivers/misc/hmc6352.c
index 234bfca..3afc11e 100644
--- a/drivers/misc/hmc6352.c
+++ b/drivers/misc/hmc6352.c
@@ -86,7 +86,7 @@ static ssize_t compass_heading_data_show(struct device *dev,
msleep(10); /* sending 'A' cmd we need to wait for 7-10 millisecs */
ret = i2c_master_recv(client, i2c_data, 2);
mutex_unlock(&compass_mutex);
- if (ret != 1) {
+ if (ret < 0) {
dev_warn(dev, "i2c read data cmd failed\n");
return ret;
}
--
1.7.2




\
 
 \ /
  Last update: 2011-03-09 09:45    [from the cache]
©2003-2010