Prerequisites & Requirements

This document describes the software and hardware requiremnts for building TF-A Tests for AArch32 and AArch64 target platforms.

It may be possible to build TF-A Tests with combinations of software and hardware that are different from those listed below. The software and hardware described in this document are officially supported.

Build Host

TF-A Tests may be built using a Linux build host machine with a recent Linux distribution. We have performed tests using Ubuntu 22.04 LTS (64-bit), but other distributions should also work fine, provided that the tools and libraries can be installed.

Dependencies

TFTF includes several dependencies managed as Git submodules. You can find the full list of these dependencies in the .gitmodules file.

Initial Clone with Submodules

If you’re cloning the repository for the first time, run the following commands to initialize and fetch all submodules:

git clone --recurse-submodules "https://git.trustedfirmware.org/TF-A/tf-a-tests"

This ensures all submodules are correctly checked out.

Updating Submodules

If the project updates the reference to a submodule (e.g., points to a new commit of libtl), you can update your local copy by running:

git pull --rebase --ff-only
git submodule update --init --recursive

To fetch the latest commits from all submodules, you can use:

git submodule update --remote

Toolchain

Install the required packages to build TF-A Tests with the following command:

sudo apt-get install device-tree-compiler build-essential git python3

Note that at least Python 3.8 is required.

Download and install the GNU cross-toolchain from Arm. The TF-A Tests have been tested with version 15.2.Rel1 (GCC 15.2):

In addition, the following optional packages and tools may be needed:


Copyright (c) 2019-2026, Arm Limited. All rights reserved.