Re: [PATCH v3 2/4] hwmon: (ina238) Correctly clamp temperature

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

 



On 29/08/25 21:55, Guenter Roeck wrote:
> On 8/28/25 20:05, Chris Packham wrote:
>> ina238_write_temp() was attempting to clamp the user input but was
>> throwing away the result. Ensure that we clamp the value to the
>> appropriate range before it is converted into a register value.
>>
>> Fixes: 0d9f596b1fe3 ("hwmon: (ina238) Modify the calculation formula 
>> to adapt to different chips")
>> Signed-off-by: Chris Packham <chris.packham@xxxxxxxxxxxxxxxxxxx>
>> ---
>>
>> Notes:
>>      Changes in v3:
>>      - New. Split off bugfix from main patch
>>
>>   drivers/hwmon/ina238.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/hwmon/ina238.c b/drivers/hwmon/ina238.c
>> index 5a394eeff676..4d3dc018ead9 100644
>> --- a/drivers/hwmon/ina238.c
>> +++ b/drivers/hwmon/ina238.c
>> @@ -572,7 +572,7 @@ static int ina238_write_temp(struct device *dev, 
>> u32 attr, long val)
>>           return -EOPNOTSUPP;
>>         /* Signed */
>> -    regval = clamp_val(val, -40000, 125000);
>> +    val = clamp_val(val, -40000, 125000);
>
> That needs another correction: As it turns out, the default register 
> value
> is 0x7ff0, or 255875. That means we need to accept that range. The 
> same is
> probably true for negative temperatures, but I'll need to see the real 
> chip
> to be sure.
>
> Yes, the chips only support a limited temperature range, but that is the
> limit register, not the supported range. Other chips have a similar 
> problem.
> It is ok to limit the input range if the chip has a reasonable default 
> set,
> but if the actual chip default is 0x7ff0 or 255.875 degrees C we need to
> support writing that value.
I'm guessing that might change my introduction of temp_max in the next 
patch. I'll re-order my series to put the bugfix first with the changes 
mentioned.
>
> Guenter
>




[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux