* Pratyush Anand | 2011-08-30 17:28:01 [+0530]: >diff --git a/arch/arm/include/asm/io.h b/arch/arm/include/asm/io.h >index 815efa2..32282b4 100644 >--- a/arch/arm/include/asm/io.h >+++ b/arch/arm/include/asm/io.h >@@ -297,6 +297,14 @@ extern int valid_mmap_phys_addr_range(unsigned long pfn, size_t size); > extern int devmem_is_allowed(unsigned long pfn); > #endif > >+/* Big Endian */ >+#define out_be32(a, v) writel(__cpu_to_be32(v), a) >+#define in_be32(a) __be32_to_cpu(readl(a)) >+ >+/* Little endian */ >+#define out_le32(a, v) writel(__cpu_to_le32(v), a) >+#define in_le32(a) __le32_to_cpu(readl(a)) In LE-mode __le32_to_cpu() is NOP and you get a LE value. In BE-mode readl() will swap a and le32_to_cpu will swap a again. So you get a BE value. Is this what you want? >+ Please split this patch out and get it accepterd by ARM community. USB people won't merge this. Sebastian -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html