uboot: add support for bundling ATF BL31 into U-Boot
authorJagan Teki <jagannadh.teki@gmail.com>
Sun, 3 Dec 2017 21:48:07 +0000 (22:48 +0100)
committerPeter Korsgaard <peter@korsgaard.com>
Fri, 8 Dec 2017 12:37:49 +0000 (13:37 +0100)
commit2c4809e6088660dc71de9de8cee0bba312aafbe4
tree8ae62f54097551a4be8665a76987988fe26d7c88
parent968445911362642d4e353a4c5cdb8bc6fdaf6b92
uboot: add support for bundling ATF BL31 into U-Boot

Some ARM64 platforms (such as Allwinner A64/H5) have a boot process
where U-Boot encapsulates the BL31 part of the ARM trusted
firmware. For such platforms, we need to build ATF before U-Boot, and
pass a BL31 variable pointing to ATF bl31.bin to the U-Boot build
process.

This commit introduces a BR2_TARGET_UBOOT_NEEDS_ATF_BL31 variable to
achieve this.

Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
[Thomas:
 - Rename option to BR2_TARGET_UBOOT_NEEDS_ATF_BL31
 - Drop changes to arm-trusted-firmware.mk, they are taken care of by
   previous commits.
 - Improve Config.in help text
 - Add missing dependency on arm-trusted-firmware when
   BR2_TARGET_UBOOT_NEEDS_ATF_BL31 is enabled.
 - Use bl31.bin from $(BINARIES_DIR) instead of taking it from ATF's
   build dir.]
[Peter: depend on toplevel atf option and select bl31 option.  Ensure it
cannot be enabled together with ARM_TRUSTED_FIRMWARE_UBOOT_AS_BL33
as that would cause circular dependencies]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tested-by: Jagan Teki <jagan@amarulasolutions.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
boot/uboot/Config.in
boot/uboot/uboot.mk