[PATCH 3/3] hwmon: (nct6775) Fix fan speed set failure in automatic mode

From: Xing Tong Wu
Date: Wed Nov 15 2023 - 21:25:28 EST


From: Xing Tong Wu <xingtong.wu@xxxxxxxxxxx>

Setting the fan speed is only valid in manual mode; it is not possible
to set the fan's speed in automatic mode.
Return error and show error message when attempting to set the fan
speed in automatic mode.

Signed-off-by: Xing Tong Wu <xingtong.wu@xxxxxxxxxxx>
---
drivers/hwmon/nct6775-core.c | 8 ++++++++
1 file changed, 8 insertions(+)

diff --git a/drivers/hwmon/nct6775-core.c b/drivers/hwmon/nct6775-core.c
index 575db6cb96e9..3fb9896c61ce 100644
--- a/drivers/hwmon/nct6775-core.c
+++ b/drivers/hwmon/nct6775-core.c
@@ -2551,6 +2551,14 @@ store_pwm(struct device *dev, struct device_attribute *attr, const char *buf,
int err;
u16 reg;

+ if (index == 0 && data->pwm_enable[nr] != manual) {
+ dev_err(dev,
+ "The pwm%d doesn't support manual fan speed control in automatic mode.\n",
+ nr + 1);
+ dev_err(dev, "Please set pwm%d_enable to manual mode.\n", nr + 1);
+ return -EOPNOTSUPP;
+ }
+
err = kstrtoul(buf, 10, &val);
if (err < 0)
return err;
--
2.25.1