diff options
Diffstat (limited to 'arch/x86/pci/irq.c')
-rw-r--r-- | arch/x86/pci/irq.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/x86/pci/irq.c b/arch/x86/pci/irq.c index e1d605bfeb47..4064345cf144 100644 --- a/arch/x86/pci/irq.c +++ b/arch/x86/pci/irq.c | |||
@@ -1068,7 +1068,7 @@ static void __init pcibios_fixup_irqs(void) | |||
1068 | struct pci_dev *bridge = dev->bus->self; | 1068 | struct pci_dev *bridge = dev->bus->self; |
1069 | int bus; | 1069 | int bus; |
1070 | 1070 | ||
1071 | pin = (((pin - 1) + PCI_SLOT(dev->devfn)) % 4) + 1; | 1071 | pin = pci_swizzle_interrupt_pin(dev, pin); |
1072 | bus = bridge->bus->number; | 1072 | bus = bridge->bus->number; |
1073 | irq = IO_APIC_get_PCI_irq_vector(bus, | 1073 | irq = IO_APIC_get_PCI_irq_vector(bus, |
1074 | PCI_SLOT(bridge->devfn), pin - 1); | 1074 | PCI_SLOT(bridge->devfn), pin - 1); |
@@ -1232,7 +1232,7 @@ static int pirq_enable_irq(struct pci_dev *dev) | |||
1232 | while (irq < 0 && dev->bus->parent) { /* go back to the bridge */ | 1232 | while (irq < 0 && dev->bus->parent) { /* go back to the bridge */ |
1233 | struct pci_dev *bridge = dev->bus->self; | 1233 | struct pci_dev *bridge = dev->bus->self; |
1234 | 1234 | ||
1235 | pin = (((pin - 1) + PCI_SLOT(dev->devfn)) % 4) + 1; | 1235 | pin = pci_swizzle_interrupt_pin(dev, pin); |
1236 | irq = IO_APIC_get_PCI_irq_vector(bridge->bus->number, | 1236 | irq = IO_APIC_get_PCI_irq_vector(bridge->bus->number, |
1237 | PCI_SLOT(bridge->devfn), pin - 1); | 1237 | PCI_SLOT(bridge->devfn), pin - 1); |
1238 | if (irq >= 0) | 1238 | if (irq >= 0) |