aboutsummaryrefslogtreecommitdiff
path: root/boot
diff options
context:
space:
mode:
authorGravatar Etienne Carriere <etienne.carriere@linaro.org>2019-03-19 00:21:02 +0100
committerGravatar Thomas Petazzoni <thomas.petazzoni@bootlin.com>2019-03-20 22:33:30 +0100
commit9dbc934217e170578d4cbfdf524bc1b3988d0b9e (patch)
tree2544acf1cd90dccc5c674f5bf1261f080ff347b3 /boot
parentb38dfa7554760327b35b43d3137c73056c2419fd (diff)
downloadbuildroot-9dbc934217e170578d4cbfdf524bc1b3988d0b9e.tar.gz
buildroot-9dbc934217e170578d4cbfdf524bc1b3988d0b9e.tar.bz2
boot/arm-trusted-firmware: support 32bit Arm targets
This change allows one to build the TF-A (Trusted Firmware A) for 32bit architectures Armv7 and Armv8 platforms. TF-A supports these configuration since release v1.5. Change dependency on BR2_aarch64 into a dependency on either BR2_ARM_CPU_ARMV8A/BR2_ARM_CPU_ARMV7A to better define the target architectures supported by the package. Set package configuration directive ARM_ARCH_MAJOR according to BR2_ARM_CPU_ARMV8A/BR2_ARM_CPU_ARMV7A. Set package configuration directive ARCH based on BR2_aarch64/BR2_arm. Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Diffstat (limited to 'boot')
-rw-r--r--boot/arm-trusted-firmware/Config.in3
-rw-r--r--boot/arm-trusted-firmware/arm-trusted-firmware.mk12
2 files changed, 14 insertions, 1 deletions
diff --git a/boot/arm-trusted-firmware/Config.in b/boot/arm-trusted-firmware/Config.in
index 823a3510b5..428a4ce155 100644
--- a/boot/arm-trusted-firmware/Config.in
+++ b/boot/arm-trusted-firmware/Config.in
@@ -1,6 +1,7 @@
config BR2_TARGET_ARM_TRUSTED_FIRMWARE
bool "ARM Trusted Firmware (ATF)"
- depends on BR2_aarch64 && BR2_TARGET_UBOOT
+ depends on (BR2_ARM_CPU_ARMV8A || BR2_ARM_CPU_ARMV7A) && \
+ BR2_TARGET_UBOOT
help
Enable this option if you want to build the ATF for your ARM
based embedded device.
diff --git a/boot/arm-trusted-firmware/arm-trusted-firmware.mk b/boot/arm-trusted-firmware/arm-trusted-firmware.mk
index 8ca3864dd0..fb80bd1fbe 100644
--- a/boot/arm-trusted-firmware/arm-trusted-firmware.mk
+++ b/boot/arm-trusted-firmware/arm-trusted-firmware.mk
@@ -35,6 +35,18 @@ ARM_TRUSTED_FIRMWARE_MAKE_OPTS += \
$(call qstrip,$(BR2_TARGET_ARM_TRUSTED_FIRMWARE_ADDITIONAL_VARIABLES)) \
PLAT=$(ARM_TRUSTED_FIRMWARE_PLATFORM)
+ifeq ($(BR2_ARM_CPU_ARMV7A),y)
+ARM_TRUSTED_FIRMWARE_MAKE_OPTS += ARM_ARCH_MAJOR=7
+else ifeq ($(BR2_ARM_CPU_ARMV8A),y)
+ARM_TRUSTED_FIRMWARE_MAKE_OPTS += ARM_ARCH_MAJOR=8
+endif
+
+ifeq ($(BR2_arm),y)
+ARM_TRUSTED_FIRMWARE_MAKE_OPTS += ARCH=aarch32
+else ifeq ($(BR2_aarch64),y)
+ARM_TRUSTED_FIRMWARE_MAKE_OPTS += ARCH=aarch64
+endif
+
ifeq ($(BR2_TARGET_ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33),y)
ARM_TRUSTED_FIRMWARE_MAKE_OPTS += BL33=$(BINARIES_DIR)/u-boot.bin
ARM_TRUSTED_FIRMWARE_DEPENDENCIES += uboot