Message ID | 20201113121954.GA8488@monster.powergraphx.local (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | hwmon: fix corsair-psu fan rpm calculation | expand |
On Fri, Nov 13, 2020 at 01:19:54PM +0100, Wilken Gottwalt wrote: > The correct fan rpm value is also a LINEAR11 value but without a factor. > Verified by using the fan test button on the psu to let the fan spin up > to maximum for some seconds. > > Fixes: 933222c98445 ("hwmon: (corsair-psu) fix unintentional sign extension issue") > Signed-off-by: Wilken Gottwalt <wilken.gottwalt@posteo.net> Applied. Thanks, Guenter > --- > drivers/hwmon/corsair-psu.c | 7 +------ > 1 file changed, 1 insertion(+), 6 deletions(-) > > diff --git a/drivers/hwmon/corsair-psu.c b/drivers/hwmon/corsair-psu.c > index 5d19a888231a..99494056f4bd 100644 > --- a/drivers/hwmon/corsair-psu.c > +++ b/drivers/hwmon/corsair-psu.c > @@ -252,12 +252,7 @@ static int corsairpsu_get_value(struct corsairpsu_data *priv, u8 cmd, u8 rail, l > *val = corsairpsu_linear11_to_int(tmp & 0xFFFF) * 1000; > break; > case PSU_CMD_FAN: > - /* > - * this value is best guess, so the calculated value could be wrong, it is hard > - * to ge the fan to spin in these semi-passive power supplies, which need a > - * quite high load to do so > - */ > - *val = ((tmp & 0xFF) << 8) + ((tmp >> 8) & 0xFF); > + *val = corsairpsu_linear11_to_int(tmp & 0xFFFF); > break; > case PSU_CMD_RAIL_WATTS: > case PSU_CMD_TOTAL_WATTS:
diff --git a/drivers/hwmon/corsair-psu.c b/drivers/hwmon/corsair-psu.c index 5d19a888231a..99494056f4bd 100644 --- a/drivers/hwmon/corsair-psu.c +++ b/drivers/hwmon/corsair-psu.c @@ -252,12 +252,7 @@ static int corsairpsu_get_value(struct corsairpsu_data *priv, u8 cmd, u8 rail, l *val = corsairpsu_linear11_to_int(tmp & 0xFFFF) * 1000; break; case PSU_CMD_FAN: - /* - * this value is best guess, so the calculated value could be wrong, it is hard - * to ge the fan to spin in these semi-passive power supplies, which need a - * quite high load to do so - */ - *val = ((tmp & 0xFF) << 8) + ((tmp >> 8) & 0xFF); + *val = corsairpsu_linear11_to_int(tmp & 0xFFFF); break; case PSU_CMD_RAIL_WATTS: case PSU_CMD_TOTAL_WATTS:
The correct fan rpm value is also a LINEAR11 value but without a factor. Verified by using the fan test button on the psu to let the fan spin up to maximum for some seconds. Fixes: 933222c98445 ("hwmon: (corsair-psu) fix unintentional sign extension issue") Signed-off-by: Wilken Gottwalt <wilken.gottwalt@posteo.net> --- drivers/hwmon/corsair-psu.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-)