[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@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
b9826b3ee8
commit
abc0192247
2 changed files with 2 additions and 2 deletions
|
@ -264,7 +264,7 @@ static inline u8 DIV_TO_REG(long val)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
val = SENSORS_LIMIT(val, 1, 128) >> 1;
|
val = SENSORS_LIMIT(val, 1, 128) >> 1;
|
||||||
for (i = 0; i < 6; i++) {
|
for (i = 0; i < 7; i++) {
|
||||||
if (val == 0)
|
if (val == 0)
|
||||||
break;
|
break;
|
||||||
val >>= 1;
|
val >>= 1;
|
||||||
|
|
|
@ -192,7 +192,7 @@ DIV_TO_REG(long val, enum chips type)
|
||||||
val = SENSORS_LIMIT(val, 1,
|
val = SENSORS_LIMIT(val, 1,
|
||||||
((type == w83781d
|
((type == w83781d
|
||||||
|| type == as99127f) ? 8 : 128)) >> 1;
|
|| type == as99127f) ? 8 : 128)) >> 1;
|
||||||
for (i = 0; i < 6; i++) {
|
for (i = 0; i < 7; i++) {
|
||||||
if (val == 0)
|
if (val == 0)
|
||||||
break;
|
break;
|
||||||
val >>= 1;
|
val >>= 1;
|
||||||
|
|
Loading…
Add table
Reference in a new issue