arch/arm: add support for AArch64

AArch64 id the 64-bit variant for ARM.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Zhenqiang Chen <zhenqiang.chen@linaro.org>
Cc: Michael Hope <michael.hope@linaro.org>
This commit is contained in:
Yann E. MORIN" 2013-12-30 23:28:18 +01:00
parent 9bda4536fe
commit 1bf982dd68
3 changed files with 18 additions and 4 deletions

View File

@ -1,6 +1,7 @@
# ARM specific configuration file # ARM specific configuration file
## select ARCH_SUPPORTS_32 ## select ARCH_SUPPORTS_32
## select ARCH_SUPPORTS_64
## select ARCH_DEFAULT_32 ## select ARCH_DEFAULT_32
## select ARCH_SUPPORTS_BOTH_MMU ## select ARCH_SUPPORTS_BOTH_MMU
## select ARCH_DEFAULT_HAS_MMU ## select ARCH_DEFAULT_HAS_MMU
@ -9,9 +10,9 @@
## select ARCH_SUPPORTS_WITH_ARCH ## select ARCH_SUPPORTS_WITH_ARCH
## select ARCH_SUPPORTS_WITH_CPU ## select ARCH_SUPPORTS_WITH_CPU
## select ARCH_SUPPORTS_WITH_TUNE ## select ARCH_SUPPORTS_WITH_TUNE
## select ARCH_SUPPORTS_WITH_FLOAT ## select ARCH_SUPPORTS_WITH_FLOAT if ARCH_32
## select ARCH_SUPPORTS_WITH_FPU ## select ARCH_SUPPORTS_WITH_FPU if ARCH_32
## select ARCH_SUPPORTS_SOFTFP ## select ARCH_SUPPORTS_SOFTFP if ARCH_32
## ##
## help The ARM architecture, as defined by: ## help The ARM architecture, as defined by:
## help http://www.arm.com/ ## help http://www.arm.com/

View File

@ -2,7 +2,16 @@
CT_DoArchTupleValues() { CT_DoArchTupleValues() {
# The architecture part of the tuple: # The architecture part of the tuple:
case "${CT_ARCH_BITNESS}" in
32)
CT_TARGET_ARCH="${CT_ARCH}${CT_ARCH_SUFFIX:-${target_endian_eb}}" CT_TARGET_ARCH="${CT_ARCH}${CT_ARCH_SUFFIX:-${target_endian_eb}}"
;;
64)
# ARM 64 (aka AArch64) is special
[ "${CT_ARCH_BE}" = "y" ] && target_endian_eb="_be"
CT_TARGET_ARCH="aarch64${CT_ARCH_SUFFIX:-${target_endian_eb}}"
;;
esac
# The system part of the tuple: # The system part of the tuple:
case "${CT_LIBC},${CT_ARCH_ARM_EABI}" in case "${CT_LIBC},${CT_ARCH_ARM_EABI}" in

View File

@ -110,6 +110,10 @@ do_kernel_install() {
V_OPT="V=${CT_KERNEL_LINUX_VERBOSE_LEVEL}" V_OPT="V=${CT_KERNEL_LINUX_VERBOSE_LEVEL}"
kernel_arch="${CT_ARCH}" kernel_arch="${CT_ARCH}"
case "${CT_ARCH}:${CT_ARCH_BITNESS}" in
# ARM 64 (aka AArch64) is special
arm:64) kernel_arch="arm64";;
esac
CT_DoLog EXTRA "Installing kernel headers" CT_DoLog EXTRA "Installing kernel headers"
CT_DoExecLog ALL \ CT_DoExecLog ALL \