[PATCH] I2C: Setting w83627hf fan divisor 128 fails.

From: Greg KH
Date: Wed Jun 22 2005 - 01:32:20 EST


[PATCH] I2C: Setting w83627hf fan divisor 128 fails.

Jarkko Lavinen provided patch to fix: "couldn't set the divisor 128
through fan1_div sysfs entry even though the chip supports it and
setting divisors 1..64 worked. This was due to POWER_TO_REG() only
checking 2's powers 0 till 5 but not 6."

This patch applies that fix to w83627hf and w83781d drivers.

Signed-off-by: Grant Coady <gcoady@xxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxx>

---
commit abc01922477104e8d72b494902aff37135c409e7
tree 7ef178b1a14e89c88bac1a976c238c91fc1697ee
parent b9826b3ee8faa468a26782e3bf37716a73d96730
author Grant Coady <grant_lkml@xxxxxxxxxxx> Thu, 12 May 2005 13:41:51 +1000
committer Greg Kroah-Hartman <gregkh@xxxxxxx> Tue, 21 Jun 2005 21:51:56 -0700

drivers/i2c/chips/w83627hf.c | 2 +-
drivers/i2c/chips/w83781d.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/i2c/chips/w83627hf.c b/drivers/i2c/chips/w83627hf.c
--- a/drivers/i2c/chips/w83627hf.c
+++ b/drivers/i2c/chips/w83627hf.c
@@ -264,7 +264,7 @@ static inline u8 DIV_TO_REG(long val)
{
int i;
val = SENSORS_LIMIT(val, 1, 128) >> 1;
- for (i = 0; i < 6; i++) {
+ for (i = 0; i < 7; i++) {
if (val == 0)
break;
val >>= 1;
diff --git a/drivers/i2c/chips/w83781d.c b/drivers/i2c/chips/w83781d.c
--- a/drivers/i2c/chips/w83781d.c
+++ b/drivers/i2c/chips/w83781d.c
@@ -192,7 +192,7 @@ DIV_TO_REG(long val, enum chips type)
val = SENSORS_LIMIT(val, 1,
((type == w83781d
|| type == as99127f) ? 8 : 128)) >> 1;
- for (i = 0; i < 6; i++) {
+ for (i = 0; i < 7; i++) {
if (val == 0)
break;
val >>= 1;

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/