I'm using adt7475 on the x86 system. When I tried to probe the driver manually, fans would run at full speed (It's in disabled mode by default). It's not the expected behavior. I traced the driver and found the issue. Thanks, Wayne Guenter Roeck <linux@xxxxxxxxxxxx> 於 2024年7月2日 週二 上午6:45寫道: > > On Mon, Jul 01, 2024 at 03:32:52PM +0800, Wayne Tung wrote: > > According to the comments on fan is disabled, we change to manual mode > > and set the duty cycle to 0. > > For setting the duty cycle part, the register is wrong. Fix it. > > > > Signed-off-by: Wayne Tung <chineweff@xxxxxxxxx> > > --- > > Applied. > > Curious - how did you find that ? That bug existed since the driver was > introduced. > > Thanks, > Guenter > > > drivers/hwmon/adt7475.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/drivers/hwmon/adt7475.c b/drivers/hwmon/adt7475.c > > index 4224ffb30483..ec3336804720 100644 > > --- a/drivers/hwmon/adt7475.c > > +++ b/drivers/hwmon/adt7475.c > > @@ -1900,7 +1900,7 @@ static void adt7475_read_pwm(struct i2c_client *client, int index) > > data->pwm[CONTROL][index] &= ~0xE0; > > data->pwm[CONTROL][index] |= (7 << 5); > > > > - i2c_smbus_write_byte_data(client, PWM_CONFIG_REG(index), > > + i2c_smbus_write_byte_data(client, PWM_REG(index), > > data->pwm[INPUT][index]); > > > > i2c_smbus_write_byte_data(client, PWM_CONFIG_REG(index),