RFC: Fix big endian MMIO primitives.
Krzysztof Halasa
khc at pm.waw.pl
Sat May 5 17:34:13 EDT 2012
cpu_read*() and cpu_wrire*() are precisely equal to __raw_read*() and
__raw_write*().
Striving for correctness we can replace all those __raw_*() with cpu_*()
as that's exactly what the former ones do. Also we can change read*()
and write*() into explicit leXX_*(). Both changes could affect porting
from Linux, though.
Signed-off-by: Krzysztof Hałasa <khc at pm.waw.pl>
diff --git a/include/io.h b/include/io.h
index 39b5e61..8d885de 100644
--- a/include/io.h
+++ b/include/io.h
@@ -4,20 +4,11 @@
#include <asm/io.h>
/* cpu_read/cpu_write: cpu native io accessors */
-#if __BYTE_ORDER == __BIG_ENDIAN
-#define cpu_readb(a) readb(a)
-#define cpu_readw(a) in_be16(a)
-#define cpu_readl(a) in_be32(a)
-#define cpu_writeb(v, a) writeb((v), (a))
-#define cpu_writew(v, a) out_be16((a), (v))
-#define cpu_writel(v, a) out_be32((a), (v))
-#else
-#define cpu_readb(a) readb(a)
-#define cpu_readw(a) readw(a)
-#define cpu_readl(a) readl(a)
-#define cpu_writeb(v, a) writeb((v), (a))
-#define cpu_writew(v, a) writew((v), (a))
-#define cpu_writel(v, a) writel((v), (a))
-#endif
+#define cpu_readb(a) __raw_readb(a)
+#define cpu_readw(a) __raw_readw(a)
+#define cpu_readl(a) __raw_readl(a)
+#define cpu_writeb(v, a) __raw_writeb((v), (a))
+#define cpu_writew(v, a) __raw_writew((v), (a))
+#define cpu_writel(v, a) __raw_writel((v), (a))
#endif /* __IO_H */
More information about the barebox
mailing list