mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-09-23 16:11:54 +00:00
0ae7653128
Relocation code based on a patch by Scott Wood, which is: Signed-off-by: Scott Wood <scottwood@freescale.com> Signed-off-by: David Feng <fenghua@phytium.com.cn>
44 lines
988 B
C
44 lines
988 B
C
/*
|
|
* 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 CONFIG_ARM64
|
|
|
|
#ifdef __AARCH64EB__
|
|
#include <linux/byteorder/big_endian.h>
|
|
#else
|
|
#include <linux/byteorder/little_endian.h>
|
|
#endif
|
|
|
|
#else /* CONFIG_ARM64 */
|
|
|
|
#ifdef __ARMEB__
|
|
#include <linux/byteorder/big_endian.h>
|
|
#else
|
|
#include <linux/byteorder/little_endian.h>
|
|
#endif
|
|
|
|
#endif /* CONFIG_ARM64 */
|
|
|
|
#endif
|