]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/sh/drivers/pci/ops-rts7751r2d.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/pci-2.6
[linux-2.6-omap-h63xx.git] / arch / sh / drivers / pci / ops-rts7751r2d.c
index 88f44e2454244f355d3911753798c324389fecb7..b3fa3e2ef184ffd24b2a3afb604254e3c03634ee 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * linux/arch/sh/kernel/pci-rts7751r2d.c
+ * linux/arch/sh/drivers/pci/ops-rts7751r2d.c
  *
  * Author:  Ian DaSilva (idasilva@mvista.com)
  *
  *
  * PCI initialization for the Renesas SH7751R RTS7751R2D board
  */
-
 #include <linux/kernel.h>
 #include <linux/types.h>
 #include <linux/init.h>
-#include <linux/delay.h>
 #include <linux/pci.h>
-#include <linux/module.h>
-#include <asm/rts7751r2d/rts7751r2d.h>
-#include <asm/io.h>
+#include <linux/io.h>
+#include <asm/rts7751r2d.h>
 #include "pci-sh4.h"
 
+static u8 rts7751r2d_irq_tab[] __initdata = {
+       IRQ_PCI_INTA,
+       IRQ_PCI_INTB,
+       IRQ_PCI_INTC,
+       IRQ_PCI_INTD,
+};
+
 int __init pcibios_map_platform_irq(struct pci_dev *pdev, u8 slot, u8 pin)
 {
-        switch (slot) {
-       case 0: return IRQ_PCISLOT1;    /* PCI Extend slot #1 */
-       case 1: return IRQ_PCISLOT2;    /* PCI Extend slot #2 */
-       case 2: return IRQ_PCMCIA;      /* PCI Cardbus Bridge */
-       case 3: return IRQ_PCIETH;      /* Realtek Ethernet controller */
-       default:
-               printk("PCI: Bad IRQ mapping request for slot %d\n", slot);
-               return -1;
-       }
+       return rts7751r2d_irq_tab[slot];
 }
 
 static struct resource sh7751_io_resource = {
        .name   = "SH7751_IO",
        .start  = 0x4000,
-       .end    = 0x4000 + SH7751_PCI_IO_SIZE - 1,
+       .end    = SH7751_PCI_IO_SIZE - 1,
        .flags  = IORESOURCE_IO
 };
 
@@ -72,6 +68,7 @@ static struct sh4_pci_address_map sh7751_pci_map = {
 
 int __init pcibios_init_platform(void)
 {
+       __set_io_port_base(SH7751_PCI_IO_BASE);
        return sh7751_pcic_init(&sh7751_pci_map);
 }