hwmon: (f71805f) Fix clamping of temperature limits
authorJean Delvare <khali@linux-fr.org>
Fri, 20 Jan 2012 15:09:23 +0000 (10:09 -0500)
committerGuenter Roeck <guenter.roeck@ericsson.com>
Fri, 20 Jan 2012 17:05:35 +0000 (09:05 -0800)
Properly clamp temperature limits set by the user. Without this fix,
attempts to write temperature limits above the maximum supported by
the chip (255 degrees Celsius) would arbitrarily and unexpectedly
result in the limit being set to 0 degree Celsius.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: stable@vger.kernel.org
Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com>
drivers/hwmon/f71805f.c

index 92f9497..6dbfd3e 100644 (file)
@@ -283,11 +283,11 @@ static inline long temp_from_reg(u8 reg)
 
 static inline u8 temp_to_reg(long val)
 {
-       if (val < 0)
-               val = 0;
-       else if (val > 1000 * 0xff)
-               val = 0xff;
-       return ((val + 500) / 1000);
+       if (val <= 0)
+               return 0;
+       if (val >= 1000 * 0xff)
+               return 0xff;
+       return (val + 500) / 1000;
 }
 
 /*