summaryrefslogtreecommitdiffstats
path: root/arch/sh/drivers/pci/fixups-sh03.c
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2012-05-18 10:42:29 +0200
committerPaul Mundt <lethal@linux-sh.org>2012-05-18 10:42:29 +0200
commit58796ce67a80e8725220af83c5a550bf6a4dab12 (patch)
tree393e6f0f97b1f8bc6c6b1f8e9494282e4c91dcd2 /arch/sh/drivers/pci/fixups-sh03.c
parentsh: cpu dma evt2irq migration. (diff)
downloadlinux-58796ce67a80e8725220af83c5a550bf6a4dab12.tar.xz
linux-58796ce67a80e8725220af83c5a550bf6a4dab12.zip
sh: legacy PCI evt2irq migration.
This converts over the legacy PCI IRQs to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/drivers/pci/fixups-sh03.c')
-rw-r--r--arch/sh/drivers/pci/fixups-sh03.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/arch/sh/drivers/pci/fixups-sh03.c b/arch/sh/drivers/pci/fixups-sh03.c
index 1615e5906168..16207bef9f52 100644
--- a/arch/sh/drivers/pci/fixups-sh03.c
+++ b/arch/sh/drivers/pci/fixups-sh03.c
@@ -2,6 +2,7 @@
#include <linux/init.h>
#include <linux/types.h>
#include <linux/pci.h>
+#include <linux/sh_intc.h>
int __init pcibios_map_platform_irq(const struct pci_dev *dev, u8 slot, u8 pin)
{
@@ -9,21 +10,21 @@ int __init pcibios_map_platform_irq(const struct pci_dev *dev, u8 slot, u8 pin)
if (dev->bus->number == 0) {
switch (slot) {
- case 4: return 5; /* eth0 */
- case 8: return 5; /* eth1 */
- case 6: return 2; /* PCI bridge */
+ case 4: return evt2irq(0x2a0); /* eth0 */
+ case 8: return evt2irq(0x2a0); /* eth1 */
+ case 6: return evt2irq(0x240); /* PCI bridge */
default:
printk(KERN_ERR "PCI: Bad IRQ mapping request "
"for slot %d\n", slot);
- return 2;
+ return evt2irq(0x240);
}
} else {
switch (pin) {
- case 0: irq = 2; break;
- case 1: irq = 2; break;
- case 2: irq = 2; break;
- case 3: irq = 2; break;
- case 4: irq = 2; break;
+ case 0: irq = evt2irq(0x240); break;
+ case 1: irq = evt2irq(0x240); break;
+ case 2: irq = evt2irq(0x240); break;
+ case 3: irq = evt2irq(0x240); break;
+ case 4: irq = evt2irq(0x240); break;
default: irq = -1; break;
}
}