sh: switch to GENERIC_PCI_IOMAP
Michael S. Tsirkin [Thu, 24 Nov 2011 19:10:12 +0000 (21:10 +0200)]
sh copied pci_iomap from generic code, probably to avoid
pulling the rest of iomap.c in.  Since that's in
a separate file now, we can reuse the common implementation.

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>

arch/sh/Kconfig
arch/sh/drivers/pci/pci.c

index 5aeab58..ead1640 100644 (file)
@@ -857,6 +857,7 @@ config PCI
        bool "PCI support"
        depends on SYS_SUPPORTS_PCI
        select PCI_DOMAINS
+       select GENERIC_PCI_IOMAP
        help
          Find out whether you have a PCI motherboard. PCI is the name of a
          bus system, i.e. the way the CPU talks to the other stuff inside
index c2691af..11aaf2f 100644 (file)
@@ -393,29 +393,6 @@ static void __iomem *ioport_map_pci(struct pci_dev *dev,
        return (void __iomem *)(chan->io_map_base + port);
 }
 
-void __iomem *pci_iomap(struct pci_dev *dev, int bar, unsigned long maxlen)
-{
-       resource_size_t start = pci_resource_start(dev, bar);
-       resource_size_t len = pci_resource_len(dev, bar);
-       unsigned long flags = pci_resource_flags(dev, bar);
-
-       if (unlikely(!len || !start))
-               return NULL;
-       if (maxlen && len > maxlen)
-               len = maxlen;
-
-       if (flags & IORESOURCE_IO)
-               return ioport_map_pci(dev, start, len);
-       if (flags & IORESOURCE_MEM) {
-               if (flags & IORESOURCE_CACHEABLE)
-                       return ioremap(start, len);
-               return ioremap_nocache(start, len);
-       }
-
-       return NULL;
-}
-EXPORT_SYMBOL(pci_iomap);
-
 void pci_iounmap(struct pci_dev *dev, void __iomem *addr)
 {
        iounmap(addr);