From: Jean Delvare Date: Fri, 17 Oct 2008 15:51:14 +0000 (+0200) Subject: hwmon: (lm85) Simplify RANGE_TO_REG X-Git-Tag: v2.6.28-rc1~259^2~25 X-Git-Url: http://www.pilppa.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=1b92adaddd7e96e1ba68d4f17a25747ab8057efe;p=linux-2.6-omap-h63xx.git hwmon: (lm85) Simplify RANGE_TO_REG Function RANGE_TO_REG can easily be simplified. Credits go to Herbert Poetzl for indirectly suggesting this to me. I tested that the new implementation returns the same result as the original implementation for all input values. Signed-off-by: Jean Delvare Acked-by: Herbert Poetzl --- diff --git a/drivers/hwmon/lm85.c b/drivers/hwmon/lm85.c index 4ee9388df98..94a10ecd24d 100644 --- a/drivers/hwmon/lm85.c +++ b/drivers/hwmon/lm85.c @@ -174,20 +174,13 @@ static int RANGE_TO_REG(int range) { int i; - if (range >= lm85_range_map[15]) - return 15; - /* Find the closest match */ - for (i = 14; i >= 0; --i) { - if (range >= lm85_range_map[i]) { - if ((lm85_range_map[i + 1] - range) < - (range - lm85_range_map[i])) - return i + 1; - return i; - } + for (i = 0; i < 15; ++i) { + if (range <= (lm85_range_map[i] + lm85_range_map[i + 1]) / 2) + break; } - return 0; + return i; } #define RANGE_FROM_REG(val) lm85_range_map[(val) & 0x0f]