forked from Minki/linux
hwmon: (lm73) Fix lower and upper temperature limits
While the LM73 is only specified for temperatures from -40 to +150 degrees C, its power-up minimum and maximum temperature limits are -256 and +255.75 degrees C. For better consistency and to avoid confusion, clamp limits to the power-up limits and not to -40 / +150 degrees C. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
This commit is contained in:
parent
b06367070d
commit
91bba68801
@ -36,8 +36,8 @@ static const unsigned short normal_i2c[] = { 0x48, 0x49, 0x4a, 0x4c,
|
||||
|
||||
#define LM73_ID 0x9001 /* 0x0190, byte-swapped */
|
||||
#define DRVNAME "lm73"
|
||||
#define LM73_TEMP_MIN (-40)
|
||||
#define LM73_TEMP_MAX 150
|
||||
#define LM73_TEMP_MIN (-256000 / 250)
|
||||
#define LM73_TEMP_MAX (255750 / 250)
|
||||
|
||||
/*-----------------------------------------------------------------------*/
|
||||
|
||||
@ -56,8 +56,7 @@ static ssize_t set_temp(struct device *dev, struct device_attribute *da,
|
||||
return status;
|
||||
|
||||
/* Write value */
|
||||
value = (short) clamp_val(temp / 250, LM73_TEMP_MIN * 4,
|
||||
LM73_TEMP_MAX * 4) << 5;
|
||||
value = clamp_val(temp / 250, LM73_TEMP_MIN, LM73_TEMP_MAX) << 5;
|
||||
err = i2c_smbus_write_word_swapped(client, attr->index, value);
|
||||
return (err < 0) ? err : count;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user