From: Jean Delvare <khali@linux-fr.org>
Date: Fri, 20 Jan 2012 15:09:23 +0000 (-0500)
Subject: hwmon: (f71805f) Fix clamping of temperature limits
X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=86b2bbfdbd1fcc4a3aa62ccd3f245c40c5ad5b85;p=GitHub%2Fexynos8895%2Fandroid_kernel_samsung_universal8895.git

hwmon: (f71805f) Fix clamping of temperature limits

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>
---

diff --git a/drivers/hwmon/f71805f.c b/drivers/hwmon/f71805f.c
index 92f949767ece..6dbfd3e516e4 100644
--- a/drivers/hwmon/f71805f.c
+++ b/drivers/hwmon/f71805f.c
@@ -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;
 }
 
 /*