File: /usr/src/linux/include/asm-arm/byteorder.h

1     /*
2      *  linux/include/asm-arm/byteorder.h
3      *
4      * ARM Endian-ness.  In little endian mode, the data bus is connected such
5      * that byte accesses appear as:
6      *  0 = d0...d7, 1 = d8...d15, 2 = d16...d23, 3 = d24...d31
7      * and word accesses (data or instruction) appear as:
8      *  d0...d31
9      *
10      * When in big endian mode, byte accesses appear as:
11      *  0 = d24...d31, 1 = d16...d23, 2 = d8...d15, 3 = d0...d7
12      * and word accesses (data or instruction) appear as:
13      *  d0...d31
14      */
15     #ifndef __ASM_ARM_BYTEORDER_H
16     #define __ASM_ARM_BYTEORDER_H
17     
18     
19     #include <asm/types.h>
20     
21     #if !defined(__STRICT_ANSI__) || defined(__KERNEL__)
22     #  define __BYTEORDER_HAS_U64__
23     #  define __SWAB_64_THRU_32__
24     #endif
25     
26     #ifdef __ARMEB__
27     #include <linux/byteorder/big_endian.h>
28     #else
29     #include <linux/byteorder/little_endian.h>
30     #endif
31     
32     #endif
33     
34