summary refs log tree commit diff
path: root/drivers/hwmon/max1668.c
diff options
context:
space:
mode:
authorGuenter Roeck <linux@roeck-us.net>2014-02-15 17:59:05 -0800
committerGuenter Roeck <linux@roeck-us.net>2014-03-03 08:01:04 -0800
commitc5a706697f79b2aa5a2000f8024602320e37658f (patch)
treed74c291db9ca77f09888b8ab4b69f691f14d2319 /drivers/hwmon/max1668.c
parentb4c9c1a7987ef07d8345bf9d19f36d97423b6b25 (diff)
downloadlinux-c5a706697f79b2aa5a2000f8024602320e37658f.tar.gz
hwmon: (max1668) Don't hide return value from i2c_smbus_write_byte_data
i2c_smbus_write_byte_data returns a valid error code.
Return it to the user instead of replacing it with -EIO.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Reviewed-by: Jean Delvare <jdelvare@suse.de>
Diffstat (limited to 'drivers/hwmon/max1668.c')
-rw-r--r--drivers/hwmon/max1668.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/drivers/hwmon/max1668.c b/drivers/hwmon/max1668.c
index 029b65e6c589..bbbe340332b9 100644
--- a/drivers/hwmon/max1668.c
+++ b/drivers/hwmon/max1668.c
@@ -216,10 +216,11 @@ static ssize_t set_temp_max(struct device *dev,
 
 	mutex_lock(&data->update_lock);
 	data->temp_max[index] = clamp_val(temp/1000, -128, 127);
-	if (i2c_smbus_write_byte_data(client,
+	ret = i2c_smbus_write_byte_data(client,
 					MAX1668_REG_LIMH_WR(index),
-					data->temp_max[index]))
-		count = -EIO;
+					data->temp_max[index]);
+	if (ret < 0)
+		count = ret;
 	mutex_unlock(&data->update_lock);
 
 	return count;
@@ -241,10 +242,11 @@ static ssize_t set_temp_min(struct device *dev,
 
 	mutex_lock(&data->update_lock);
 	data->temp_min[index] = clamp_val(temp/1000, -128, 127);
-	if (i2c_smbus_write_byte_data(client,
+	ret = i2c_smbus_write_byte_data(client,
 					MAX1668_REG_LIML_WR(index),
-					data->temp_min[index]))
-		count = -EIO;
+					data->temp_min[index]);
+	if (ret < 0)
+		count = ret;
 	mutex_unlock(&data->update_lock);
 
 	return count;