diff options
-rw-r--r-- | drivers/acpi/pci_irq.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/acpi/pci_irq.c b/drivers/acpi/pci_irq.c index 09567c2edcfb..e567c03b238e 100644 --- a/drivers/acpi/pci_irq.c +++ b/drivers/acpi/pci_irq.c | |||
@@ -361,8 +361,7 @@ acpi_pci_irq_derive(struct pci_dev *dev, | |||
361 | 361 | ||
362 | if ((bridge->class >> 8) == PCI_CLASS_BRIDGE_CARDBUS) { | 362 | if ((bridge->class >> 8) == PCI_CLASS_BRIDGE_CARDBUS) { |
363 | /* PC card has the same IRQ as its cardbridge */ | 363 | /* PC card has the same IRQ as its cardbridge */ |
364 | pci_read_config_byte(bridge, PCI_INTERRUPT_PIN, | 364 | bridge_pin = bridge->pin; |
365 | &bridge_pin); | ||
366 | if (!bridge_pin) { | 365 | if (!bridge_pin) { |
367 | ACPI_DEBUG_PRINT((ACPI_DB_INFO, | 366 | ACPI_DEBUG_PRINT((ACPI_DB_INFO, |
368 | "No interrupt pin configured for device %s\n", | 367 | "No interrupt pin configured for device %s\n", |
@@ -412,7 +411,7 @@ int acpi_pci_irq_enable(struct pci_dev *dev) | |||
412 | if (!dev) | 411 | if (!dev) |
413 | return_VALUE(-EINVAL); | 412 | return_VALUE(-EINVAL); |
414 | 413 | ||
415 | pci_read_config_byte(dev, PCI_INTERRUPT_PIN, &pin); | 414 | pin = dev->pin; |
416 | if (!pin) { | 415 | if (!pin) { |
417 | ACPI_DEBUG_PRINT((ACPI_DB_INFO, | 416 | ACPI_DEBUG_PRINT((ACPI_DB_INFO, |
418 | "No interrupt pin configured for device %s\n", | 417 | "No interrupt pin configured for device %s\n", |
@@ -503,7 +502,7 @@ void acpi_pci_irq_disable(struct pci_dev *dev) | |||
503 | if (!dev || !dev->bus) | 502 | if (!dev || !dev->bus) |
504 | return_VOID; | 503 | return_VOID; |
505 | 504 | ||
506 | pci_read_config_byte(dev, PCI_INTERRUPT_PIN, &pin); | 505 | pin = dev->pin; |
507 | if (!pin) | 506 | if (!pin) |
508 | return_VOID; | 507 | return_VOID; |
509 | pin--; | 508 | pin--; |