Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 75c99029 authored by Jean Delvare's avatar Jean Delvare Committed by Jean Delvare
Browse files

hwmon/f71805f: Fix the device address decoding



The lowest 3 bits are ignored, and the chip decodes all 8 addresses,
not only the 2 it needs.

Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
parent c7176cb5
Loading
Loading
Loading
Loading
+4 −3
Original line number Diff line number Diff line
@@ -102,9 +102,9 @@ superio_exit(int base)
 * ISA constants
 */

#define REGION_LENGTH		2
#define ADDR_REG_OFFSET		0
#define DATA_REG_OFFSET		1
#define REGION_LENGTH		8
#define ADDR_REG_OFFSET		5
#define DATA_REG_OFFSET		6

/*
 * Registers
@@ -1359,6 +1359,7 @@ static int __init f71805f_find(int sioaddr, unsigned short *address,
		       "skipping\n");
		goto exit;
	}
	*address &= ~(REGION_LENGTH - 1);	/* Ignore 3 LSB */

	err = 0;
	printk(KERN_INFO DRVNAME ": Found %s chip at %#x, revision %u\n",