Re: [PATCH] hwmon: (adt7475) Fix default duty on fan is disabled

Wayne Tung
2024-07-02T11:04:48Z

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@roeck-us.net> 於 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@gmail.com>
> > ---
>
> 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),