cfi_endian.h
上传用户:szlgq88
上传日期:2009-04-28
资源大小:48287k
文件大小:1k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

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