@@ -7,11 +7,8 @@ TFA_INSTALL_TARGET = "bl1 fip"
TFA_DEBUG = "1"
TFA_MBEDTLS = "1"
TFA_UBOOT = "0"
+TFA_UEFI = "1"
-# Sgi575 needs the UEFI as bl33
-DEPENDS += "edk2-firmware"
-
-EXTRA_OEMAKE += "BL33=${RECIPE_SYSROOT}/firmware/uefi.bin"
EXTRA_OEMAKE += "TRUSTED_BOARD_BOOT=1 GENERATE_COT=1 ARM_ROTPK_LOCATION=devel_rsa \
ROT_KEY=plat/arm/board/common/rotpk/arm_rotprivk_rsa.pem"
EXTRA_OEMAKE += "CFLAGS=-mbranch-protection=none"
@@ -58,7 +58,11 @@ SRCREV_FORMAT:append = "${@bb.utils.contains('TFA_MBEDTLS', '1', '_mbedtls', '',
# U-boot support (set TFA_UBOOT to 1 to activate)
# When U-Boot support is activated BL33 is activated with u-boot.bin file
-TFA_UBOOT ?= "0"
+TFA_UBOOT ??= "0"
+
+# UEFI support (set TFA_UEFI to 1 to activate)
+# When UEFI support is activated BL33 is activated with uefi.bin file
+TFA_UEFI ??= "0"
# What to build
# By default we only build bl1, do_deploy will copy
@@ -125,7 +129,11 @@ EXTRA_OEMAKE += "${@bb.utils.contains('TFA_MBEDTLS', '1', 'MBEDTLS_DIR=${TFA_MBE
# Uboot support
DEPENDS += " ${@bb.utils.contains('TFA_UBOOT', '1', 'u-boot', '', d)}"
do_compile[depends] += " ${@bb.utils.contains('TFA_UBOOT', '1', 'u-boot:do_deploy', '', d)}"
-EXTRA_OEMAKE += "${@bb.utils.contains('TFA_UBOOT', '1', 'BL33=${DEPLOY_DIR_IMAGE}/u-boot.bin', '',d)}"
+EXTRA_OEMAKE += "${@bb.utils.contains('TFA_UBOOT', '1', 'BL33=${DEPLOY_DIR_IMAGE}/u-boot.bin', '', d)}"
+
+# UEFI support
+DEPENDS += " ${@bb.utils.contains('TFA_UEFI', '1', 'edk2-firmware', '', d)}"
+EXTRA_OEMAKE += "${@bb.utils.contains('TFA_UEFI', '1', 'BL33=${RECIPE_SYSROOT}/firmware/uefi.bin', '', d)}"
# Hafnium support
SEL2_SPMC = "${@'${TFA_SPMD_SPM_AT_SEL2}' if d.getVar('TFA_SPD', True) == 'spmd' else ''}"
@@ -1,9 +1,10 @@
SUMMARY = "UEFI EDK2 Firmware"
DESCRIPTION = "UEFI EDK2 Firmware for Arm reference platforms"
HOMEPAGE = "https://github.com/tianocore/edk2"
-
LICENSE = "BSD-2-Clause-Patent"
+PROVIDES = "virtual/bootloader"
+
# EDK2
LIC_FILES_CHKSUM = "file://License.txt;md5=2b415520383f7964e96700ae12b4570a"
# EDK2 Platforms
@@ -1,4 +1,5 @@
require recipes-bsp/uefi/edk2-firmware_202202.bb
+PROVIDES:remove = "virtual/bootloader"
LICENSE += "& Apache-2.0"
LIC_FILES_CHKSUM += "file://ShellPkg/Application/sbsa-acs/LICENSE.md;md5=2a944942e1496af1886903d274dedb13"
To prevent a collision with u-boot, add the same PROVIDES from it. The PROVIDES name need improvement, but this will work in the interim. This causes a need for making TF-A more flexible. Add the ability to reference the UEFI binary for the BL33 portion of the TF-A build command. SGI575 is already doing this. So, it is really just making it more generic for others to use. Signed-off-by: Jon Mason <jon.mason@arm.com> --- .../trusted-firmware-a/trusted-firmware-a-sgi575.inc | 5 +---- .../trusted-firmware-a/trusted-firmware-a.inc | 12 ++++++++++-- meta-arm/recipes-bsp/uefi/edk2-firmware.inc | 3 ++- meta-arm/recipes-bsp/uefi/sbsa-acs_3.1.bb | 1 + 4 files changed, 14 insertions(+), 7 deletions(-)