[PATCH] hwmon: Fix negative temperature readings in lm77 driver
Fix negative temperature readings in lm77 driver. Signed-off-by: Jean Delvare <khali@linux-fr.org> Acked-by: Michael Renzmann <mrenzmann@otaku42.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
21bbd69182
commit
413b645150
@@ -87,15 +87,15 @@ static struct i2c_driver lm77_driver = {
|
|||||||
|
|
||||||
/* In the temperature registers, the low 3 bits are not part of the
|
/* In the temperature registers, the low 3 bits are not part of the
|
||||||
temperature values; they are the status bits. */
|
temperature values; they are the status bits. */
|
||||||
static inline u16 LM77_TEMP_TO_REG(int temp)
|
static inline s16 LM77_TEMP_TO_REG(int temp)
|
||||||
{
|
{
|
||||||
int ntemp = SENSORS_LIMIT(temp, LM77_TEMP_MIN, LM77_TEMP_MAX);
|
int ntemp = SENSORS_LIMIT(temp, LM77_TEMP_MIN, LM77_TEMP_MAX);
|
||||||
return (u16)((ntemp / 500) * 8);
|
return (ntemp / 500) * 8;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline int LM77_TEMP_FROM_REG(u16 reg)
|
static inline int LM77_TEMP_FROM_REG(s16 reg)
|
||||||
{
|
{
|
||||||
return ((int)reg / 8) * 500;
|
return (reg / 8) * 500;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* sysfs stuff */
|
/* sysfs stuff */
|
||||||
|
Reference in New Issue
Block a user