in_le32() and out_le32() are needed for the bootcounter support.
So lets implement these accessor functions for MIPS as well.

Signed-off-by: Stefan Roese <s...@denx.de>
Cc: Daniel Schwierzeck <daniel.schwierz...@gmail.com>
---
 arch/mips/include/asm/io.h | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/arch/mips/include/asm/io.h b/arch/mips/include/asm/io.h
index 957442effd..a750f6c0e4 100644
--- a/arch/mips/include/asm/io.h
+++ b/arch/mips/include/asm/io.h
@@ -391,6 +391,27 @@ __BUILDIO(q, u64)
 #define readq                          readq
 #define writeq                         writeq
 
+/* in_le32(), out_le32() and friends */
+#define out_arch(type,endian,a,v)      __raw_write##type(cpu_to_##endian(v),a)
+#define in_arch(type,endian,a)         endian##_to_cpu(__raw_read##type(a))
+
+#define out_le64(a,v)  out_arch(q,le64,a,v)
+#define out_le32(a,v)  out_arch(l,le32,a,v)
+#define out_le16(a,v)  out_arch(w,le16,a,v)
+
+#define in_le64(a)     in_arch(q,le64,a)
+#define in_le32(a)     in_arch(l,le32,a)
+#define in_le16(a)     in_arch(w,le16,a)
+
+#define out_be32(a,v)  out_arch(l,be32,a,v)
+#define out_be16(a,v)  out_arch(w,be16,a,v)
+
+#define in_be32(a)     in_arch(l,be32,a)
+#define in_be16(a)     in_arch(w,be16,a)
+
+#define out_8(a,v)     __raw_writeb(v,a)
+#define in_8(a)                __raw_readb(a)
+
 #define __BUILD_MEMORY_STRING(bwlq, type)                              \
                                                                        \
 static inline void writes##bwlq(volatile void __iomem *mem,            \
-- 
2.19.1

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to