sh: ioremap() overhaul.
ioremap() overhaul. Add support for transparent PMB mapping, get rid of
p3_ioremap(), etc. Also drop ioremap() and iounmap() routines from the
machvec, as everyone can use the generic ioremap() API instead. For PCI
memory apertures and other special cases, use the pci_iomap() API, as
boards are already required to get the mapping right there.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
diff --git a/arch/sh/boards/titan/io.c b/arch/sh/boards/titan/io.c
index d66900c..b886fd2 100644
--- a/arch/sh/boards/titan/io.c
+++ b/arch/sh/boards/titan/io.c
@@ -138,19 +138,12 @@
maybebadio(port);
}
-void *titan_ioremap(unsigned long offset, unsigned long size) {
- if (CHECK_SH7751_PCIIO(offset) || CHECK_SH7751_PCIMEMIO(offset))
- return (void *)offset;
-}
-
void __iomem *titan_ioport_map(unsigned long port, unsigned int size)
{
- if (PXSEG(port))
+ if (PXSEG(port) || CHECK_SH7751_PCIMEMIO(port))
return (void __iomem *)port;
else if (CHECK_SH7751_PCIIO(port))
return (void __iomem *)PCI_IOMAP(port);
return (void __iomem *)port2adr(port);
}
-
-EXPORT_SYMBOL(titan_ioremap);