[PATCH] hwmon: (mcp9982) Propagate one-shot polling errors
From: Nikhil Gurudasani
Date: Wed Aug 19 2026 - 14:07:46 EST
When a device is in standby, the driver starts a one-shot conversion and
polls the BUSY flag before reading temperature, alarm, or fault data.
The poll result is currently ignored. Therefore, a timeout or a
status-register read failure can be hidden by a later successful read,
causing stale data to be returned as valid.
Return the polling error before reading the requested attribute.
Fixes: e2fe950f34e5 ("hwmon: add support for MCP998X")
Cc: stable@xxxxxxxxxxxxxxx
Signed-off-by: Nikhil Gurudasani <nikhilgurudasani314@xxxxxxxxx>
---
drivers/hwmon/mcp9982.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/hwmon/mcp9982.c b/drivers/hwmon/mcp9982.c
index 9e19e2697e25..3918dc36c946 100644
--- a/drivers/hwmon/mcp9982.c
+++ b/drivers/hwmon/mcp9982.c
@@ -395,6 +395,8 @@ static int mcp9982_read(struct device *dev, enum hwmon_sensor_types type, u32 at
reg_status, !(reg_status & MCP9982_STATUS_BUSY),
MCP9982_WAKE_UP_TIME_US,
MCP9982_WAKE_UP_TIME_US * 10);
+ if (ret)
+ return ret;
break;
}
break;
base-commit: f7c9176d2326eacae3a87fa3f5214a78c818cc07
--
2.43.0