Commit de6511ff authored by Linus Torvalds's avatar Linus Torvalds

Fix PCI irq routing to always look up the bridge swizzling

if a direct lookup didn't work.
parent 22775da0
......@@ -325,20 +325,16 @@ acpi_pci_irq_enable (
* values override any BIOS-assinged IRQs set during boot.
*/
irq = acpi_pci_irq_lookup(0, dev->bus->number, PCI_SLOT(dev->devfn), pin);
if (irq)
dev->irq = irq;
/*
* If no PRT entry was found and the device wasn't assigned an IRQ
* during boot we'll try to derive an IRQ from the device's parent
* bridge.
* If no PRT entry was found, we'll try to derive an IRQ from the
* device's parent bridge.
*/
if (!dev->irq && dev->bus->self) {
irq = acpi_pci_irq_derive(dev, pin);
if (irq)
dev->irq = irq;
}
if (!irq)
irq = acpi_pci_irq_derive(dev, pin);
if (irq)
dev->irq = irq;
if (!dev->irq) {
printk(KERN_WARNING PREFIX "No IRQ known for interrupt pin %c of device %s\n", ('A' + pin), dev->slot_name);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment