Re: [PATCH] hwmon: (adm1031) Add sysfs files for temperature offsets

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Ira,

On Tue, 30 Jun 2009 11:39:18 -0700, Ira Snyder wrote:
> The ADM1030/ADM1031 chips have temperature offset registers, for both the
> local and remote temperature sensors. Following the example set forth in
> the LM90/ADM1032 driver, expose the offset registers to userspace.
> 
> Signed-off-by: Ira W. Snyder <iws@xxxxxxxxxxxxxxxx>
> ---
> 
> I have tested this with an adm1031 chip, and I see the offsets as
> expected. I do not have any other compatible chips to test with, however
> I read the adm1030 datasheet, and everything should work fine.
> 
> On the adm1031, the datasheet claims the offset registers can be used to
> add/subtract 15 degC from the temperature reading. I have found that it
> is actually possible to add 15 degC and subtract 16 degC. Following the
> data sheet, I clamped the value to +- 15 degC, just in case other chips
> are not compatible.
> 
>  drivers/hwmon/adm1031.c |   40 ++++++++++++++++++++++++++++++++++++++++
>  1 files changed, 40 insertions(+), 0 deletions(-)
> 
> diff --git a/drivers/hwmon/adm1031.c b/drivers/hwmon/adm1031.c
> index 7894418..5690595 100644
> --- a/drivers/hwmon/adm1031.c
> +++ b/drivers/hwmon/adm1031.c
> @@ -145,6 +147,10 @@ adm1031_write_value(struct i2c_client *client, u8 reg, unsigned int value)
>  
>  #define TEMP_FROM_REG_EXT(val, ext)	(TEMP_FROM_REG(val) + (ext) * 125)
>  
> +#define TEMP_OFFSET_TO_REG(val)		(TEMP_TO_REG(val) & 0x8f)
> +#define TEMP_OFFSET_FROM_REG(val)	TEMP_FROM_REG((val) < 0 ? \
> +						      (val) | 0x70 : (val))

This is not how I read the datasheet for negative offsets. The ADM1030
datasheet says that -1°C would be coded 0x81, while your implementation
would decode 0x81 to -15°C. But I admit the datasheet isn't too clear
either... Did you test your code with negative offsets and found that
it works OK?

-- 
Jean Delvare

_______________________________________________
lm-sensors mailing list
lm-sensors@xxxxxxxxxxxxxx
http://lists.lm-sensors.org/mailman/listinfo/lm-sensors


[Index of Archives]     [Linux Kernel]     [Linux Hardware Monitoring]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux