[PATCH] ARM: 2747/1: allow platforms to provide their own iomap implementation
authorLennert Buytenhek <buytenh@wantstofly.org>
Fri, 24 Jun 2005 22:11:31 +0000 (23:11 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Fri, 24 Jun 2005 22:11:31 +0000 (23:11 +0100)
Patch from Lennert Buytenhek

This patch conditionalises the io{read,write}{8,16,32} defines and the
prototypes for ioport_map/ioport_unmap in asm-arm/io.h on ioread8 not
already having been defined.  This is done so that platforms can provide
their own implementation of the iomap API, ixp2000 for example needs
this.

Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Deepak Saxena
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
include/asm-arm/io.h

index 08a46302d26556053e4cdbce8bcc60a164a51011..cc4b5f5dbfcf9d3020b2b347e2a0c59e4d9d802b 100644 (file)
@@ -275,6 +275,7 @@ extern void __iounmap(void __iomem *addr);
 /*
  * io{read,write}{8,16,32} macros
  */
+#ifndef ioread8
 #define ioread8(p)     ({ unsigned int __v = __raw_readb(p); __v; })
 #define ioread16(p)    ({ unsigned int __v = le16_to_cpu(__raw_readw(p)); __v; })
 #define ioread32(p)    ({ unsigned int __v = le32_to_cpu(__raw_readl(p)); __v; })
@@ -293,6 +294,7 @@ extern void __iounmap(void __iomem *addr);
 
 extern void __iomem *ioport_map(unsigned long port, unsigned int nr);
 extern void ioport_unmap(void __iomem *addr);
+#endif
 
 struct pci_dev;