From 69694e9622118e546a735affc311ac8e652111d6 Mon Sep 17 00:00:00 2001 From: Tabrez Ahmed Date: Sat, 7 Mar 2026 17:22:26 +0530 Subject: [PATCH] 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 --- drivers/hwmon/ads7871.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/hwmon/ads7871.c b/drivers/hwmon/ads7871.c index b84426c940c5..753bf77ce19b 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);