X-Git-Url: http://pilppa.org/gitweb/?a=blobdiff_plain;f=drivers%2Facpi%2Fpci_irq.c;h=62010c2481b3614b9b9ddd3e1cbbae2118f40fd7;hb=9ee85241fdaab358dff1d8647f20a478cfa512a1;hp=dd3186abe07a9c464df616aae6fb05454fb53085;hpb=6606e17a7f1c3bc1b1e83d0c517f11d094e55bf1;p=linux-2.6-omap-h63xx.git 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.