[WATCHDOG] iTCO_wdt.c - fix ACPI Base register

The ACPI/PM base I/O address which is the base
for the TCO registers is defined as bits [15:7]
(highest bit is 31, lowest is 0)

The code however only reads bits [14:7]. So
        base_address &= 0x00007f80;
needs to be:
        base_address &= 0x0000ff80;

This patch fixes this.

Signed-off-by: Ate Wijma <ajwijma@hotmail.com>
Signed-off-by: Wim Van Sebroeck <wim@iguana.be>
This commit is contained in:
Wim Van Sebroeck 2007-05-11 18:59:24 +00:00
parent 04bf3b4f5f
commit 0d4804b31f

View File

@ -571,7 +571,7 @@ static int iTCO_wdt_init(struct pci_dev *pdev, const struct pci_device_id *ent,
* ACPIBASE is bits [15:7] from 0x40-0x43
*/
pci_read_config_dword(pdev, 0x40, &base_address);
base_address &= 0x00007f80;
base_address &= 0x0000ff80;
if (base_address == 0x00000000) {
/* Something's wrong here, ACPIBASE has to be set */
printk(KERN_ERR PFX "failed to get TCOBASE address\n");