Skip to content

Commit bd7e7bc

Browse files
committed
hwmon: (ina238) Correctly clamp shunt voltage limit
When clamping a register value, the result needs to be masked against the register size. This was missing, resulting in errors when trying to write negative limits. Fix by masking the clamping result against the register size. Fixes: eacb52f ("hwmon: Driver for Texas Instruments INA238") Cc: Nathan Rossi <[email protected]> Cc: Chris Packham <[email protected]> Signed-off-by: Guenter Roeck <[email protected]>
1 parent 98fd069 commit bd7e7bc

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

drivers/hwmon/ina238.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -379,7 +379,7 @@ static int ina238_write_in(struct device *dev, u32 attr, int channel,
379379
regval = clamp_val(val, -163, 163);
380380
regval = (regval * 1000 * 4) /
381381
(INA238_SHUNT_VOLTAGE_LSB * data->gain);
382-
regval = clamp_val(regval, S16_MIN, S16_MAX);
382+
regval = clamp_val(regval, S16_MIN, S16_MAX) & 0xffff;
383383

384384
switch (attr) {
385385
case hwmon_in_max:

0 commit comments

Comments
 (0)