alpha: add io{read,write}{16,32}be functions
authorMichael Cree <mcree@orcon.net.nz>
Wed, 30 Nov 2011 13:01:40 +0000 (08:01 -0500)
committerBen Hutchings <ben@decadent.org.uk>
Wed, 6 Aug 2014 17:07:41 +0000 (18:07 +0100)
commit 25534eb7707821b796fd84f7115367e02f36aa60 upstream.

These functions are used in some PCI drivers with big-endian
MMIO space.

Admittedly it is almost certain that no one this side of the
Moon would use such a card in an Alpha but it does get us
closer to being able to build allyesconfig or allmodconfig,
and it enables the Debian default generic config to build.

Tested-by: Raúl Porcel <armin76@gentoo.org>
Signed-off-by: Michael Cree <mcree@orcon.net.nz>
Signed-off-by: Matt Turner <mattst88@gmail.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
arch/alpha/include/asm/io.h

index 56ff965..6365ef2 100644 (file)
@@ -490,6 +490,11 @@ extern inline void writeq(u64 b, volatile void __iomem *addr)
 }
 #endif
 
+#define ioread16be(p) be16_to_cpu(ioread16(p))
+#define ioread32be(p) be32_to_cpu(ioread32(p))
+#define iowrite16be(v,p) iowrite16(cpu_to_be16(v), (p))
+#define iowrite32be(v,p) iowrite32(cpu_to_be32(v), (p))
+
 #define inb_p          inb
 #define inw_p          inw
 #define inl_p          inl