mirror of
				https://github.com/smaeul/u-boot.git
				synced 2025-11-03 21:48:15 +00:00 
			
		
		
		
	The toolchain sets __aarch64__ for both LE and BE. In the case of posix_types.h we cannot reliably use config.h as that will lead to problems. In the case of byteorder.h it's clearer to check the EB flag being set in either case instead. Cc: David Feng <fenghua@phytium.com.cn> Signed-off-by: Tom Rini <trini@ti.com> Amended by Albert ARIBAUD <albert.u.boot@aribaud.net> to actually remove the config.h include from the posix_types.h files, with permission from Tom Rini.
		
			
				
	
	
		
			33 lines
		
	
	
		
			828 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			828 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
 | 
						|
 | 
						|
#if defined(__ARMEB__) || defined(__AARCH64EB__)
 | 
						|
#include <linux/byteorder/big_endian.h>
 | 
						|
#else
 | 
						|
#include <linux/byteorder/little_endian.h>
 | 
						|
#endif
 | 
						|
 | 
						|
#endif
 |