From: Tabrez Ahmed Date: Sat, 7 Mar 2026 11:52:26 +0000 (+0530) Subject: hwmon: (ads7871) Fix incorrect error code in voltage_show X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=69694e9622118e546a735affc311ac8e652111d6;p=thirdparty%2Fkernel%2Flinux.git hwmon: (ads7871) Fix incorrect error code in voltage_show The voltage_show() function returns -1 when the A/D conversion fails to complete within the polling loop. -1 maps to -EPERM (operation not permitted), which does not describe the actual failure. Replace this -1 error code with -ETIMEDOUT to better indicate the timeout condition to userspace. Drop the else block after return. Note: not runtime tested due to lack of hardware. Signed-off-by: Tabrez Ahmed Link: https://lore.kernel.org/r/20260307115226.25757-1-tabreztalks@gmail.com Signed-off-by: Guenter Roeck --- diff --git a/drivers/hwmon/ads7871.c b/drivers/hwmon/ads7871.c index b84426c940c5e..753bf77ce19b4 100644 --- a/drivers/hwmon/ads7871.c +++ b/drivers/hwmon/ads7871.c @@ -125,9 +125,9 @@ static ssize_t voltage_show(struct device *dev, struct device_attribute *da, /*result in volts*10000 = (val/8192)*2.5*10000*/ val = ((val >> 2) * 25000) / 8192; return sysfs_emit(buf, "%d\n", val); - } else { - return -1; } + + return -ETIMEDOUT; } static SENSOR_DEVICE_ATTR_RO(in0_input, voltage, 0);