uboot: arm64 arch build support
authorRonak Desai <ronak.desai@rockwellcollins.com>
Mon, 12 Oct 2015 18:53:16 +0000 (13:53 -0500)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Mon, 12 Oct 2015 19:59:44 +0000 (21:59 +0200)
For a 64bit arm architecture, Buildroot uses arm64 terminology and
from the top-level Makefile KERNEL_ARCH is set to arm64 which is then
passed to the uboot build.  This causes a compilation issue as uboot
uses the top-level system architecture as it's $(ARCH).  So
arch/$(ARCH)/Makefile doesn't work with arm64 unless we adjust the
arch.

[Thomas:
 - rewrap commit message text.
 - simplify comment in the code.]

Signed-off-by: Ronak Desai <ronak.desai@rockwellcollins.com>
Signed-off-by: Matt Weber <matthew.weber@rockwellcollins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
boot/uboot/uboot.mk

index eee0dba23b3a93962a5053962bc28fc0a77bc256..66e728f79db5dc7baa9ee7a41013ebab3099409b 100644 (file)
@@ -71,7 +71,13 @@ UBOOT_BIN = u-boot.bin
 UBOOT_BIN_IFT = $(UBOOT_BIN).ift
 endif
 
+# The kernel calls AArch64 'arm64', but U-Boot calls it just 'arm', so
+# we have to special case it.
+ifeq ($(KERNEL_ARCH),arm64)
+UBOOT_ARCH = arm
+else
 UBOOT_ARCH = $(KERNEL_ARCH)
+endif
 
 UBOOT_MAKE_OPTS += \
        CROSS_COMPILE="$(TARGET_CROSS)" \