aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/hwmon
diff options
context:
space:
mode:
authorJean Delvare <khali@linux-fr.org>2008-10-17 17:51:13 +0200
committerJean Delvare <khali@mahadeva.delvare>2008-10-17 17:51:13 +0200
commit86010c982db2030aad2c31f178b208964f5f6806 (patch)
tree8bc829108fd362654f950dd9b3e98667c7831c6c /drivers/hwmon
parent34e7dc6ca4a663a1bb0a0a4e118426849dccd72d (diff)
downloadkernel_goldelico_gta04-86010c982db2030aad2c31f178b208964f5f6806.zip
kernel_goldelico_gta04-86010c982db2030aad2c31f178b208964f5f6806.tar.gz
kernel_goldelico_gta04-86010c982db2030aad2c31f178b208964f5f6806.tar.bz2
hwmon: (lm85) Select the closest PWM frequency
The LM85 and compatible chips only support 8 arbitrary PWM frequencies. The algorithm to pick one of them based on the user input is not optimum. Improve it to always pick the closest supported frequency. Signed-off-by: Jean Delvare <khali@linux-fr.org> Acked-by: Herbert Poetzl <herbert@13thfloor.at>
Diffstat (limited to 'drivers/hwmon')
-rw-r--r--drivers/hwmon/lm85.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/hwmon/lm85.c b/drivers/hwmon/lm85.c
index 6b676df..c323c2b 100644
--- a/drivers/hwmon/lm85.c
+++ b/drivers/hwmon/lm85.c
@@ -199,10 +199,9 @@ static int FREQ_TO_REG(int freq)
{
int i;
- if (freq >= lm85_freq_map[7])
- return 7;
+ /* Find the closest match */
for (i = 0; i < 7; ++i)
- if (freq <= lm85_freq_map[i])
+ if (freq <= (lm85_freq_map[i] + lm85_freq_map[i + 1]) / 2)
break;
return i;
}