1 /* 2 * $Id: cfi_endian.h,v 1.11 2002/01/30 23:20:48 awozniak Exp $ 3 * 4 */ 5 6 #include <asm/byteorder.h> 7 8 #ifndef CONFIG_MTD_CFI_ADV_OPTIONS 9 10 #define CFI_HOST_ENDIAN 11 12 #else 13 14 #ifdef CONFIG_MTD_CFI_NOSWAP 15 #define CFI_HOST_ENDIAN 16 #endif 17 18 #ifdef CONFIG_MTD_CFI_LE_BYTE_SWAP 19 #define CFI_LITTLE_ENDIAN 20 #endif 21 22 #ifdef CONFIG_MTD_CFI_BE_BYTE_SWAP 23 #define CFI_BIG_ENDIAN 24 #endif 25 26 #endif 27 28 #if defined(CFI_LITTLE_ENDIAN) 29 #define cpu_to_cfi8(x) (x) 30 #define cfi8_to_cpu(x) (x) 31 #define cpu_to_cfi16(x) cpu_to_le16(x) 32 #define cpu_to_cfi32(x) cpu_to_le32(x) 33 #define cpu_to_cfi64(x) cpu_to_le64(x) 34 #define cfi16_to_cpu(x) le16_to_cpu(x) 35 #define cfi32_to_cpu(x) le32_to_cpu(x) 36 #define cfi64_to_cpu(x) le64_to_cpu(x) 37 #elif defined (CFI_BIG_ENDIAN) 38 #define cpu_to_cfi8(x) (x) 39 #define cfi8_to_cpu(x) (x) 40 #define cpu_to_cfi16(x) cpu_to_be16(x) 41 #define cpu_to_cfi32(x) cpu_to_be32(x) 42 #define cpu_to_cfi64(x) cpu_to_be64(x) 43 #define cfi16_to_cpu(x) be16_to_cpu(x) 44 #define cfi32_to_cpu(x) be32_to_cpu(x) 45 #define cfi64_to_cpu(x) be64_to_cpu(x) 46 #elif defined (CFI_HOST_ENDIAN) 47 #define cpu_to_cfi8(x) (x) 48 #define cfi8_to_cpu(x) (x) 49 #define cpu_to_cfi16(x) (x) 50 #define cpu_to_cfi32(x) (x) 51 #define cpu_to_cfi64(x) (x) 52 #define cfi16_to_cpu(x) (x) 53 #define cfi32_to_cpu(x) (x) 54 #define cfi64_to_cpu(x) (x) 55 #else 56 #error No CFI endianness defined 57 #endif 58