aboutsummaryrefslogtreecommitdiffstats
path: root/meta-arm/recipes-bsp/trusted-firmware-a
AgeCommit message (Collapse)Author
2021-03-26arm/trusted-firmware-a: remove unused trusted-firmware-a 2.2Ross Burton
Change-Id: If2c92878e63614cfc91cf500a11fe39e5a82fe46 Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2021-03-16arm/machine: Create QEMU SBSA machineJon Mason
Add a QEMU machine for Server Base System Architecture (SBSA) development. Change-Id: Ic4e286a6583b38aee2a78ab4b53669048136f1a1 Signed-off-by: Jon Mason <jon.mason@arm.com>
2021-03-16arm: tf-a and edk2 cleanupsJon Mason
Do some preparatory moving of code for add QEMU SBSA machine support. Pulling out the qemuarm64 specific enablement from the universal inc file into a bbappend. Change-Id: I445132337f7851d666214f87e3250b2f0db84406 Signed-off-by: Jon Mason <jon.mason@arm.com>
2021-01-14arm/trusted-firmware-a: Add support for spmd build optionArunachalam Ganapathy
This patch adds generic dispatcher 'spmd' option for SPD along with SPMD_SPM_AT_SEL2 build option. Config: SPD=spmd and SPMD_SPM_AT_SEL2=1. Indicates the SPMC component runs at the S-EL2 - Add hafnium dependency - Set CTX_INCLUDE_EL2_REGS=1 and ARM_ARCH_MINOR=4 - Set BL32 to hafnium image - Set SP_LAYOUT_FILE and ARM_SPMC_MANIFEST build parameters Config: SPD=spmd and SPMD_SPM_AT_SEL2=0. Indicates the SPMC component runs at the S-EL1 execution state. Signed-off-by: Arunachalam Ganapathy <arunachalam.ganapathy@arm.com> Change-Id: Icd3970e5132e75de67ef7f41dbfc8f9e1cdde7f3 Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-12-22arm/trusted-firmware-a: remove git-specific recipeRoss Burton
This recipe isn't used by any machines and isn't tested, so remove it. Machines that use a git snapshot should extend the closest versioned recipe instead. Change-Id: Ia0970f2d0491204c23d171c065e85c9f65f9472f Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-12-22arm/trusted-firmware-a: remove unused 2.1 recipeRoss Burton
No machines in meta-arm are using this old release. Change-Id: I8b56b1cc3eb603ee423acc52950d1e7661502d0e Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-12-15arm/trusted-firmware-a: add upstream tag regexRoss Burton
So that the automatic latest upstream release detection works correctly, specify what release tags look like. Change-Id: Ie53e82fffe5392d8e6f8d530d9f4ed732f03b50f Signed-off-by: Ross Burton <ross.burton@arm.com>
2020-12-15arm/trusted-firmware-a: -Wtautological triggers removedBrett Warren
When compiling under clang, certain lines triggered -Wtautological errors. Cosmetic modifications were made via patches to mitigate this. Change-Id: I3d17dd5102267e03a8b7d157e66e0788b542bdd8 Signed-off-by: Brett Warren <brett.warren@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-12-15arm-bsp/trusted-firmware-a: enable explicit linking to runtime builtinBrett Warren
When compiling under clang for aarch32, linking fails because the compiler-rt builtins aren't implicitly linked. Recipes and patches have been modified and added to explicitly pass the runtime builtin when linking files. Change-Id: I4299b7d078d77c1fdd5576ceec1491f91e73c35d Signed-off-by: Brett Warren <brett.warren@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-12-07arm/trusted-firmware-a: no need to DEPENDS on a C runtimeRoss Burton
This recipe is for baremetal firmware, so remove libc from DEPENDS. Change-Id: I89d0dde3f48599b9221cb1e153344dbc05e8cebe Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-11-25arm-bsp/trusted-firmware-a: fix the Corstone-500 system timer issueAbdellatif El Khlifi
This commit applies the TF-A fix allowing to use the right FPGA system timer clock frequency for Corstone-500. Change-Id: Iaa09d33eb76d9b2b74cb3400897c8cc0e3c694db Signed-off-by: lakshmi Kailasanathan <lakshmi.Kailasanathan@arm.com> Signed-off-by: Abdellatif El Khlifi <abdellatif.elkhlifi@arm.com> Signed-off-by: Ross Burton <ross.burton@arm.com>
2020-11-20arm/trusted-firmare-a: add version 2.4Ross Burton
Change-Id: Ia31b459a497bb5029d18a202b8add5edc7fd6872 Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-11-20arm/trusted-firmware-a: consolidate SRC_URI and SRoss Burton
All the recipes use the same value for SRC_URI and S, so consolidate them into the include file. Change-Id: Ieda6b0104e163ce46190e9fc5756a264f7198f25 Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-11-19arm/trusted-firmware-a: add CVE_PRODUCTRoss Burton
trusted-firmware-a has gone by many names in the CVE database, so add them all. Change-Id: I51f64211d10245ffcae010e3a723657ff4114b9c Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-11-09arm/trusted-firmware-a: fix 2.4 build with OpenSSLRoss Burton
2.4 has added support for a global OPENSSL_DIR make option, instead of hard-coded /usr into the individual Makefiles. The TC0 build is now using a snapshot of TF-A after that change landed, so pass OPENSSL_DIR via EXTRA_OEMAKE to fix the build. Change-Id: I9e06991d15bb67f983a203ec3a1b1754cc6e2d7e Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-11-04arm/trusted-firmware-a: ensure LICENSE is correctRoss Burton
TF-A itself is BSD 3-clause licensed, so use that instead of the generic BSD license. The end result is only also Apache-2.0 licensed if mbed TLS is used, so add this only if mbed TLS is enabled. Change-Id: I243e664dcfc590d8b2dbe7b795bc414a973b379b Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-11-04arm/trusted-firmware-a: clean up license assignmentsRoss Burton
trusted-firmware-a.inc can set LIC_FILES_CHKSUM so do += in the .bb files. trusted-firmware-a.inc expects recipes to set LIC_FILES_CHKSUM_MBEDTLS, so just use = in the .bb files. Change-Id: I673aec6f2ae59c58cd11517e1f2aecc538427796 Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-10-19trusted-firmware-a: enable clang supportBrett Warren
The CC and LD parameters are used to point make to the currently used compiler and linkers. This change enables TFA to be compiled successfully when TOOLCHAIN=clang. Change-Id: Ice465318b8c9b2b69c08fe4f48f6d36c610978f0 Signed-off-by: Brett Warren <brett.warren@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-08-28arm/trusted-firmware-a: don't build all targets in parallelRoss Burton
There are build races in the Makefiles when you build all targets at once (missing dependencies): | tools/fiptool/fiptool create [...] | ERROR: fopen WORKDIR/build/juno/debug/fdts/juno_fw_config.dtb: No such file or directory These are non-trivial to fix so whilst upstream works on this we can just build each target serially. Change-Id: Iba0d0ae7de6faf199efea073135fd3b7232b81a1 Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-08-28arm/trusted-firmware-a: actually add mbedtls to SRC_URIRoss Burton
trusted-firmware-a.inc was conditionally adding the Mbed TLS tarball to SRC_URI, but all of the versioned recipes subsequently assigned over the top of it so the Mbed TLS tarball was never actually in SRC_URI. This resulted in machine overrides needing to add the tarball themselves. Solve by using _append so that the SRC_URI is actually changed. Change-Id: I05cf1dec2c6422a40a42c615fb2b9b6e8d6f1cb0 Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-08-25arm: trusted-firmware-a variable name misuseJon Mason
"processes" should be "processed" in trusted-firmware-a.inc, as it signifies if the relevant part has been installed/processed. Change-Id: I2d1ffbb0c6d14d280b6f9c9cc45c04c7c32409a7 Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-08-21arm/trusted-firmware-a: add support to install dtb built as part of TFAKhasim Mohammed
Device tree blobs (DTBs) generated as part of TFA were installed separately in the platform specific TFA recipes, its redundant as each platform was executing similar installation steps. The patch avoids skipping dtb installation and adds support to check for DTB entries in TFA_INSTALL_TARGET and install the same to respective deploy folder. Change-Id: I0f8f5c39dc4b4931d202696990fa915ea7ed60eb Issue-Id: PLATFORMS-3971 Signed-off-by: Khasim Syed Mohammed <khasim.mohammed@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-08-21arm/trusted-firmware-a: fix variable name typoKhasim Mohammed
Variable name "processes" is wrongly mentioned as "processed", this patch fixes the same. Change-Id: Id9362f514861c75f8f6a727582e11b0e65736349 Issue-Id: PLATFORMS-3971 Signed-off-by: Khasim Syed Mohammed <khasim.mohammed@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-08-11arm/trusted-firmware-a: add branch name for mbedtlsRoss Burton
The mbedtls repository has had some branch/tag pruning so the tags we were using are no longer on 'master'. Set the right branch name so the fetch is successful. Change-Id: I07dc7045cd7784b7e93e14c3a24721a22b79da8a Signed-off-by: Ross Burton <ross.burton@arm.com>
2020-08-11arm/trusted-firmware-a: add branch name for mbedtlsPrabin CA
It appears that the mbedtls team have moved the SHA which meta-arm was using from master branch. It is still present in mbedtls-2.16 branch so this is now used. Change-Id: If24915b1a1dc889d55b359863943439c76f6ca85 Signed-off-by: Prabin CA <prabin.ca@arm.com> Signed-off-by: Ross Burton <ross.burton@arm.com>
2020-08-05arm/trusted-firmware-a: add branch name for mbedtlsUsama Arif
It appears that the mbedtls team have moved the SHA which meta-arm was using from master branch. It is still present in mbedtls-2.18 branch so this is now used. Change-Id: Ie932f446067767e85a25583b1bdc02b4739e323f Signed-off-by: Usama Arif <usama.arif@arm.com> Signed-off-by: Prabin CA <prabin.ca@rm.com> Signed-off-by: Ross Burton <ross.burton@arm.com>
2020-07-31arm: add TF-A v1.5 recipesJon Mason
Add trusted-firmware-a recipes for v1.5. While old, there are platforms that are still using this older version. Change-Id: Id40414ad58fd274af86203bb2c8d449e18a10c7a Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-07-24arm/trusted-firmware-a: fix TC0 build when host doesn't have openssl-devRoss Burton
The TC0 bbappend needs the cert_create tool to be built, which hard-codes the fact that openssl is installed in /usr. Change-Id: I8a7ed54fe7d75697509f7873e7d73b3bf1b2b903 Signed-off-by: Ross Burton <ross.burton@arm.com>
2020-07-23arm/trusted-firmware-a: do verbose buildsRoss Burton
Verbose builds are useful when looking for compile problems, and as the logs go directly to files we can simply turn them on by default. Change-Id: I91c6314e331a5024543138ea77a111b1d59cf371 Signed-off-by: Ross Burton <ross.burton@arm.com>
2020-06-12trusted-firmware-a: fiptool build using BUILD_CFLAGS and BUILD_LDFLAGSDiego Sueiro
Since the TF-A fiptool is native tool we should be using the BUILD_CFLAGS and BUILD_LDFLAGS flags to proper build and execute it. Change-Id: I9634604dbc42ba7da85d9b9449f1ed94ecb38df2 Issue-Id: SCM-888 Signed-off-by: Diego Sueiro <diego.sueiro@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-05-28Add support for booting qemu with TFA and opteeJoshua Watt
Adds support for booting AArch64 Qemu machines using TF-A + optee + u-boot. Most of the changes are applicable to any AArch64 qemu target, and a reference machine called qemuarm64-secureboot has been added that show how to enable support for it. Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Reviewed-by: Denys Dmytriyenko <denys@ti.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-05-19trusted-firmware-a: re-enable generation of packagesDenys Dmytriyenko
There is no need to inherit nopackages. Even when the output binaries are being consumed from deploy or sysroot, and the main binary package is not meant to be installed in the rootfs, package generation is still useful for SDK use cases and as a way to distribute sources (e.g. src.rpm/SRPM) in Distros. Signed-off-by: Denys Dmytriyenko <denys@ti.com> Reviewed-by: Diego Sueiro <diego.sueiro@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-05-19trusted-firmware-a: remove stale checksums, not used for git fetchesDenys Dmytriyenko
All SRC_URIs for trusted-firmware-a now use git and checksums are not needed. Signed-off-by: Denys Dmytriyenko <denys@ti.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-05-15trusted-firmware-a: provide symlinks for canonical namesDenys Dmytriyenko
Some platforms expect canonical names, like bl31.bin, instead of bl31-<plat>.bin Provide symlinks for those as well. Signed-off-by: Denys Dmytriyenko <denys@ti.com> Reviewed-by: Diego Sueiro <diego.sueiro@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-05-15trusted-firmware-a: install/deploy multiple variants of the targetDenys Dmytriyenko
Installing and deploying .bin and .elf shouldn't be mutually exclusive. There are scenarios where both can be useful - .bin for booting and .elf for debugging. Signed-off-by: Denys Dmytriyenko <denys@ti.com> Reviewed-by: Diego Sueiro <diego.sueiro@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-05-15trusted-firmware-a: add support for SPD (Secure Payload Dispatcher) servicesDenys Dmytriyenko
Some platforms use Secure Payload Dispatcher - allow selecting one with TFA_SPD. Official SPD description: /******************************************************************************* * This is the Secure Payload Dispatcher (SPD). The dispatcher is meant to be a * plug-in component to the Secure Monitor, registered as a runtime service. The * SPD is expected to be a functional extension of the Secure Payload (SP) that * executes in Secure EL1. The Secure Monitor will delegate all SMCs targeting * the Trusted OS/Applications range to the dispatcher. The SPD will either * handle the request locally or delegate it to the Secure Payload. It is also * responsible for initialising and maintaining communication with the SP. ******************************************************************************/ Clean other EXTRA_OEMAKE to remove leading space not needed with += Signed-off-by: Denys Dmytriyenko <denys@ti.com> Reviewed-by: Diego Sueiro <diego.sueiro@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-05-15trusted-firmware-a: support multi-board platformsDenys Dmytriyenko
Some platforms can have multiple board configurations, passed as TARGET_BOARD="" that also becomes an extra directory level in the build output hierarchy. Signed-off-by: Denys Dmytriyenko <denys@ti.com> Reviewed-by: Diego Sueiro <diego.sueiro@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-05-13trusted-firmware-a: Install .elf file from subdirectoryJoshua Watt
The ELF files produced are in a subdirectory named by the build target (e.g. "bl31/bl31.elf") instead of the BUILD_PLAT directory. Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Reviewed-by: Diego Sueiro <diego.sueiro@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-05-13trusted-firmware-a: Build out of treeJoshua Watt
Use the BUILD_BASE variable to specify an out-of-tree build. Eliminates the need to set the TFA_BUILD_DIR. Signed-off-by: Joshua Watt <JPEWhacker@gmail.com> Reviewed-by: Diego Sueiro <diego.sueiro@arm.com> Reviewed-by: Denys Dmytriyenko <denys@ti.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-05-12Add recipes for TF-A versions 2.2 and 2.3Jon Mason
Add basic recipes for TF-A versions 2.2 and 2.3. Also, rearrange fields in the various TF-A recipes to make them uniform and move the do_compile_prepend to the inc file. Change-Id: I85e4ac7bdc44ed85449e40fd2c94d73bf3e7d9e8 Signed-off-by: Jon Mason <jon.mason@arm.com> Signed-off-by: Diego Sueiro <diego.sueiro@arm.com>
2020-04-23trusted-firmware-a: Deliver binaries artefacts to sysroot/firmwareDiego Sueiro
Make usage of the do_install task to deliver binaries artefacts to the `sysroot/firmware` path, making it easier for other recipes that depends on it to make usage of those binaries instead of copying them from the DEPLOY_DIR_IMAGE. This recipe still deploys its artefacts to DEPLOY_DIR_IMAGE. Change-Id: I97b97f90b23746557e981f8de10159c5f475becd Issue-Id: SCM-888 Signed-off-by: Diego Sueiro <diego.sueiro@arm.com> Reviewed-By: Bertrand Marquis <bertrand.marquis@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-04-23meta-arm-bsp:trusted-firmware-a: Remove custom do_clean taskDiego Sueiro
The custom do_clean task is not necessary and is misbehaving by not removing the output files from other tasks. Change-Id: I5ff837dece88030f24a0dd20c75a738b7b277d61 Issue-Id: SCM-888 Signed-off-by: Diego Sueiro <diego.sueiro@arm.com> Reviewed-By: Bertrand Marquis <bertrand.marquis@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-03-08TF-A: Add git development versionPatrik Berglund
Change-Id: I7f734d2f89ad8da6eae55403691806b9d9106f15 Signed-off-by: Patrik Berglund <patrik.berglund@arm.com> Signed-off-by: Jon Mason <jon.mason@arm.com>
2020-01-07Move TF-A recipes to meta-arm directoryJon Mason
The TF-A recipes should only be in meta-arm-integration after we have submitted them for inclusion in Yocto git tree. Move them to the proper location until this occurs. Change-Id: Ia2fa5c5a377392aa45b801bd1f2ae4ca0f056c34 Signed-off-by: Jon Mason <jon.mason@arm.com>