| From e76ebb794660eb9c9a8ad5e39a0def69d0a624d7 Mon Sep 17 00:00:00 2001 |
| From: Vishwas M <vishwas.reddy.vr@gmail.com> |
| Date: Tue, 7 Jul 2020 19:57:47 +0530 |
| Subject: [PATCH] hwmon: (emc2103) fix unable to change fan pwm1_enable |
| attribute |
| |
| commit 14b0e83dc4f1e52b94acaeb85a18fd7fdd46d2dc upstream. |
| |
| This patch fixes a bug which does not let FAN mode to be changed from |
| sysfs(pwm1_enable). i.e pwm1_enable can not be set to 3, it will always |
| remain at 0. |
| |
| This is caused because the device driver handles the result of |
| "read_u8_from_i2c(client, REG_FAN_CONF1, &conf_reg)" incorrectly. The |
| driver thinks an error has occurred if the (result != 0). This has been |
| fixed by changing the condition to (result < 0). |
| |
| Signed-off-by: Vishwas M <vishwas.reddy.vr@gmail.com> |
| Link: https://lore.kernel.org/r/20200707142747.118414-1-vishwas.reddy.vr@gmail.com |
| Fixes: 9df7305b5a86 ("hwmon: Add driver for SMSC EMC2103 temperature monitor and fan controller") |
| Cc: stable@vger.kernel.org |
| Signed-off-by: Guenter Roeck <linux@roeck-us.net> |
| Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> |
| |
| diff --git a/drivers/hwmon/emc2103.c b/drivers/hwmon/emc2103.c |
| index 491a570e8e50..924c02c1631d 100644 |
| --- a/drivers/hwmon/emc2103.c |
| +++ b/drivers/hwmon/emc2103.c |
| @@ -443,7 +443,7 @@ static ssize_t pwm1_enable_store(struct device *dev, |
| } |
| |
| result = read_u8_from_i2c(client, REG_FAN_CONF1, &conf_reg); |
| - if (result) { |
| + if (result < 0) { |
| count = result; |
| goto err; |
| } |
| -- |
| 2.27.0 |
| |