blob: 798efcf218d72b589d49cc7900e7fb7a14d94f72 [file] [log] [blame]
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:
.. code-block:: bash
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:
.. code-block:: bash
git pull --rebase --ff-only
git submodule update --init --recursive
To fetch the latest commits from all submodules, you can use:
.. code-block:: bash
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 14.3.Rel1 (GCC 14.3):
- `GCC cross-toolchain`_
In addition, the following optional packages and tools may be needed:
- For debugging, Arm `Development Studio (Arm-DS)`_.
.. _GCC cross-toolchain: https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/downloads
.. _Development Studio (Arm-DS): https://developer.arm.com/Tools%20and%20Software/Arm%20Development%20Studio
.. _.gitmodules: https://review.trustedfirmware.org/plugins/gitiles/TF-A/tf-a-tests/+/refs/heads/master/.gitmodules
--------------
*Copyright (c) 2019-2025, Arm Limited. All rights reserved.*