Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

hwmon: (emc2103) fix unable to change fan pwm1_enable attribute

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>

authored by

Vishwas M and committed by
Guenter Roeck
14b0e83d f28e360f

+1 -1
+1 -1
drivers/hwmon/emc2103.c
··· 443 443 } 444 444 445 445 result = read_u8_from_i2c(client, REG_FAN_CONF1, &conf_reg); 446 - if (result) { 446 + if (result < 0) { 447 447 count = result; 448 448 goto err; 449 449 }