aarch64: add big endian(aarch64_be) support

Add aarch64_be support. Note that CONFIG_CPU_BIG_ENDIAN should be
defined in kernel config when building a big endian kernel.

Signed-off-by: Zhang Jian(Bamvor) <bamvor.zhangjian@huawei.com>
Acked-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
Bamvor Jian Zhang
2015-03-18 17:49:48 +08:00
committed by Thomas Petazzoni
parent 44c48b1274
commit 827ba46556
4 changed files with 28 additions and 17 deletions

View File

@@ -59,7 +59,15 @@ config BR2_armeb
http://en.wikipedia.org/wiki/ARM
config BR2_aarch64
bool "AArch64"
bool "AArch64 (little endian)"
select BR2_ARCH_IS_64
help
Aarch64 is a 64-bit architecture developed by ARM Holdings.
http://www.arm.com/products/processors/instruction-set-architectures/armv8-architecture.php
http://en.wikipedia.org/wiki/ARM
config BR2_aarch64_be
bool "AArch64 (big endian)"
select BR2_ARCH_IS_64
select BR2_ARCH_HAS_MMU_MANDATORY
help
@@ -347,7 +355,7 @@ if BR2_arm || BR2_armeb
source "arch/Config.in.arm"
endif
if BR2_aarch64
if BR2_aarch64 || BR2_aarch64_be
source "arch/Config.in.aarch64"
endif

View File

@@ -1,8 +1,10 @@
config BR2_ARCH
default "aarch64" if BR2_aarch64
default "aarch64_be" if BR2_aarch64_be
config BR2_ENDIAN
default "LITTLE"
default "LITTLE" if BR2_aarch64
default "BIG" if BR2_aarch64_be
config BR2_ARCH_HAS_ATOMICS
default y