aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjorn Helgaas <bjorn.helgaas@hp.com>2008-12-09 18:12:22 -0500
committerJesse Barnes <jbarnes@virtuousgeek.org>2009-01-07 14:12:55 -0500
commitf0e88af855cbc5012f2e796f42686969b82d79d4 (patch)
tree1a86276151bff88e860b780894232485ffc21b7b
parent30d546dac9420fc238109aec2c6596e044cc6d4c (diff)
PCI: parisc: use generic pci_swizzle_interrupt_pin()
Use the generic pci_swizzle_interrupt_pin() instead of arch-specific code. Acked-by: Kyle McMartin <kyle@infradead.org> Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
-rw-r--r--drivers/parisc/dino.c4
-rw-r--r--drivers/parisc/iosapic.c3
2 files changed, 3 insertions, 4 deletions
diff --git a/drivers/parisc/dino.c b/drivers/parisc/dino.c
index 3bc54b30c3a1..77cc8bfef8c9 100644
--- a/drivers/parisc/dino.c
+++ b/drivers/parisc/dino.c
@@ -547,7 +547,7 @@ dino_card_fixup(struct pci_dev *dev)
547 ** The additional "-1" adjusts for skewing the IRQ<->slot. 547 ** The additional "-1" adjusts for skewing the IRQ<->slot.
548 */ 548 */
549 dino_cfg_read(dev->bus, dev->devfn, PCI_INTERRUPT_PIN, 1, &irq_pin); 549 dino_cfg_read(dev->bus, dev->devfn, PCI_INTERRUPT_PIN, 1, &irq_pin);
550 dev->irq = (irq_pin + PCI_SLOT(dev->devfn) - 1) % 4 ; 550 dev->irq = pci_swizzle_interrupt_pin(dev, irq_pin) - 1;
551 551
552 /* Shouldn't really need to do this but it's in case someone tries 552 /* Shouldn't really need to do this but it's in case someone tries
553 ** to bypass PCI services and look at the card themselves. 553 ** to bypass PCI services and look at the card themselves.
@@ -672,7 +672,7 @@ dino_fixup_bus(struct pci_bus *bus)
672 672
673 dino_cfg_read(dev->bus, dev->devfn, 673 dino_cfg_read(dev->bus, dev->devfn,
674 PCI_INTERRUPT_PIN, 1, &irq_pin); 674 PCI_INTERRUPT_PIN, 1, &irq_pin);
675 irq_pin = (irq_pin + PCI_SLOT(dev->devfn) - 1) % 4 ; 675 irq_pin = pci_swizzle_interrupt_pin(dev, irq_pin) - 1;
676 printk(KERN_WARNING "Device %s has undefined IRQ, " 676 printk(KERN_WARNING "Device %s has undefined IRQ, "
677 "setting to %d\n", pci_name(dev), irq_pin); 677 "setting to %d\n", pci_name(dev), irq_pin);
678 dino_cfg_write(dev->bus, dev->devfn, 678 dino_cfg_write(dev->bus, dev->devfn,
diff --git a/drivers/parisc/iosapic.c b/drivers/parisc/iosapic.c
index 9dedbbd218c3..0797659ee016 100644
--- a/drivers/parisc/iosapic.c
+++ b/drivers/parisc/iosapic.c
@@ -519,8 +519,7 @@ iosapic_xlate_pin(struct iosapic_info *isi, struct pci_dev *pcidev)
519 ** 519 **
520 ** Advantage is it's really easy to implement. 520 ** Advantage is it's really easy to implement.
521 */ 521 */
522 intr_pin = ((intr_pin-1)+PCI_SLOT(pcidev->devfn)) % 4; 522 intr_pin = pci_swizzle_interrupt_pin(pcidev, intr_pin);
523 intr_pin++; /* convert back to INTA-D (1-4) */
524#endif /* PCI_BRIDGE_FUNCS */ 523#endif /* PCI_BRIDGE_FUNCS */
525 524
526 /* 525 /*