parent
3ab675d30e
commit
a33982a51b
@ -0,0 +1,33 @@ |
||||
/*
|
||||
* linux/include/asm-arm/byteorder.h |
||||
* |
||||
* ARM Endian-ness. In little endian mode, the data bus is connected such |
||||
* that byte accesses appear as: |
||||
* 0 = d0...d7, 1 = d8...d15, 2 = d16...d23, 3 = d24...d31 |
||||
* and word accesses (data or instruction) appear as: |
||||
* d0...d31 |
||||
* |
||||
* When in big endian mode, byte accesses appear as: |
||||
* 0 = d24...d31, 1 = d16...d23, 2 = d8...d15, 3 = d0...d7 |
||||
* and word accesses (data or instruction) appear as: |
||||
* d0...d31 |
||||
*/ |
||||
#ifndef __ASM_ARM_BYTEORDER_H |
||||
#define __ASM_ARM_BYTEORDER_H |
||||
|
||||
|
||||
#include <asm/types.h> |
||||
|
||||
#if !defined(__STRICT_ANSI__) || defined(__KERNEL__) |
||||
# define __BYTEORDER_HAS_U64__ |
||||
# define __SWAB_64_THRU_32__ |
||||
#endif |
||||
|
||||
#ifdef __ARMEB__ |
||||
#include <linux/byteorder/big_endian.h> |
||||
#else |
||||
#include <linux/byteorder/little_endian.h> |
||||
#endif |
||||
|
||||
#endif |
||||
|
@ -0,0 +1,68 @@ |
||||
#ifndef _LINUX_BYTEORDER_LITTLE_ENDIAN_H |
||||
#define _LINUX_BYTEORDER_LITTLE_ENDIAN_H |
||||
|
||||
#ifndef __LITTLE_ENDIAN |
||||
#define __LITTLE_ENDIAN 1234 |
||||
#endif |
||||
#ifndef __LITTLE_ENDIAN_BITFIELD |
||||
#define __LITTLE_ENDIAN_BITFIELD |
||||
#endif |
||||
|
||||
#include <linux/byteorder/swab.h> |
||||
|
||||
#define __constant_htonl(x) ___constant_swab32((x)) |
||||
#define __constant_ntohl(x) ___constant_swab32((x)) |
||||
#define __constant_htons(x) ___constant_swab16((x)) |
||||
#define __constant_ntohs(x) ___constant_swab16((x)) |
||||
#define __constant_cpu_to_le64(x) ((__u64)(x)) |
||||
#define __constant_le64_to_cpu(x) ((__u64)(x)) |
||||
#define __constant_cpu_to_le32(x) ((__u32)(x)) |
||||
#define __constant_le32_to_cpu(x) ((__u32)(x)) |
||||
#define __constant_cpu_to_le16(x) ((__u16)(x)) |
||||
#define __constant_le16_to_cpu(x) ((__u16)(x)) |
||||
#define __constant_cpu_to_be64(x) ___constant_swab64((x)) |
||||
#define __constant_be64_to_cpu(x) ___constant_swab64((x)) |
||||
#define __constant_cpu_to_be32(x) ___constant_swab32((x)) |
||||
#define __constant_be32_to_cpu(x) ___constant_swab32((x)) |
||||
#define __constant_cpu_to_be16(x) ___constant_swab16((x)) |
||||
#define __constant_be16_to_cpu(x) ___constant_swab16((x)) |
||||
#define __cpu_to_le64(x) ((__u64)(x)) |
||||
#define __le64_to_cpu(x) ((__u64)(x)) |
||||
#define __cpu_to_le32(x) ((__u32)(x)) |
||||
#define __le32_to_cpu(x) ((__u32)(x)) |
||||
#define __cpu_to_le16(x) ((__u16)(x)) |
||||
#define __le16_to_cpu(x) ((__u16)(x)) |
||||
#define __cpu_to_be64(x) __swab64((x)) |
||||
#define __be64_to_cpu(x) __swab64((x)) |
||||
#define __cpu_to_be32(x) __swab32((x)) |
||||
#define __be32_to_cpu(x) __swab32((x)) |
||||
#define __cpu_to_be16(x) __swab16((x)) |
||||
#define __be16_to_cpu(x) __swab16((x)) |
||||
#define __cpu_to_le64p(x) (*(__u64*)(x)) |
||||
#define __le64_to_cpup(x) (*(__u64*)(x)) |
||||
#define __cpu_to_le32p(x) (*(__u32*)(x)) |
||||
#define __le32_to_cpup(x) (*(__u32*)(x)) |
||||
#define __cpu_to_le16p(x) (*(__u16*)(x)) |
||||
#define __le16_to_cpup(x) (*(__u16*)(x)) |
||||
#define __cpu_to_be64p(x) __swab64p((x)) |
||||
#define __be64_to_cpup(x) __swab64p((x)) |
||||
#define __cpu_to_be32p(x) __swab32p((x)) |
||||
#define __be32_to_cpup(x) __swab32p((x)) |
||||
#define __cpu_to_be16p(x) __swab16p((x)) |
||||
#define __be16_to_cpup(x) __swab16p((x)) |
||||
#define __cpu_to_le64s(x) do {} while (0) |
||||
#define __le64_to_cpus(x) do {} while (0) |
||||
#define __cpu_to_le32s(x) do {} while (0) |
||||
#define __le32_to_cpus(x) do {} while (0) |
||||
#define __cpu_to_le16s(x) do {} while (0) |
||||
#define __le16_to_cpus(x) do {} while (0) |
||||
#define __cpu_to_be64s(x) __swab64s((x)) |
||||
#define __be64_to_cpus(x) __swab64s((x)) |
||||
#define __cpu_to_be32s(x) __swab32s((x)) |
||||
#define __be32_to_cpus(x) __swab32s((x)) |
||||
#define __cpu_to_be16s(x) __swab16s((x)) |
||||
#define __be16_to_cpus(x) __swab16s((x)) |
||||
|
||||
#include <linux/byteorder/generic.h> |
||||
|
||||
#endif /* _LINUX_BYTEORDER_LITTLE_ENDIAN_H */ |
Loading…
Reference in new issue