diff --git a/CHANGES b/CHANGES index e70cb680..74fef13e 100644 --- a/CHANGES +++ b/CHANGES @@ -14,6 +14,7 @@ SVN HEAD Man page i2cdetect.8: Describe the output convention Man page sensors.1: Update (option -c) and clean up Module i2c-i801: Add ICH9 support + Module f71805f: Fix the device address decoding (2.6 backport) Module icspll: Delete. It was useless and dangerous. Program eepromer: Fix loads of warnings Program i2cdetect: Make the output clearer diff --git a/kernel/chips/f71805f.c b/kernel/chips/f71805f.c index 10db7550..39f8694c 100644 --- a/kernel/chips/f71805f.c +++ b/kernel/chips/f71805f.c @@ -99,9 +99,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 @@ -722,6 +722,7 @@ static int __init f71805f_find(int sioaddr, unsigned int *address) "skipping\n"); goto exit; } + *address &= ~(REGION_LENGTH - 1); /* Ignore 3 LSB */ err = 0; printk(KERN_INFO DRVNAME ": Found F71805F chip at %#x, revision %u\n",