diff options
author | Len Brown <len.brown@intel.com> | 2008-01-11 12:20:18 -0500 |
---|---|---|
committer | Len Brown <len.brown@intel.com> | 2008-01-11 12:20:18 -0500 |
commit | e63501d51d6a1a897470be2684e9c55a46d0d6d5 (patch) | |
tree | 7268d4ea00c151e4b3a65e019af975c235ba77da | |
parent | 88fb61e4ba263685a0d5b82c7e9cd6f22a9e6a9d (diff) | |
parent | 96c2a8766bf4fe91abac863749c11637fabcc64f (diff) |
Pull bugzilla-5637 into release branch
-rw-r--r-- | drivers/acpi/pci_irq.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/acpi/pci_irq.c b/drivers/acpi/pci_irq.c index dd3186abe07..62010c2481b 100644 --- a/drivers/acpi/pci_irq.c +++ b/drivers/acpi/pci_irq.c @@ -429,6 +429,15 @@ int acpi_pci_irq_enable(struct pci_dev *dev) &polarity, &link, acpi_pci_allocate_irq); + if (irq < 0) { + /* + * IDE legacy mode controller IRQs are magic. Why do compat + * extensions always make such a nasty mess. + */ + if (dev->class >> 8 == PCI_CLASS_STORAGE_IDE && + (dev->class & 0x05) == 0) + return 0; + } /* * No IRQ known to the ACPI subsystem - maybe the BIOS / * driver reported one, then use it. Exit in any case. |