summaryrefslogtreecommitdiff
path: root/tools/docker
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2025-04-22 13:36:56 -0600
committerTom Rini <[email protected]>2025-04-29 11:40:40 -0600
commitd75998b476de439a05b2f7ec95d426410bcaae18 (patch)
tree5609e4b84a3e63c7c444a301637d806b7c65454e /tools/docker
parentb249e08ec9b71f9d0b4eb48e3e63f63e8366b7e6 (diff)
Docker, CI: Add vexpress_fvp / vexpress_fvp_bloblist support
This adds the vexpress_fvp and vexpress_fvp_bloblist platforms to the list of platforms we test via emulator in CI. In order to do this we need to first have our container runtime have TF-A builds for the vexpress_fvp platform, both with and without transfer list support as well as installing "telnet" so that we can access console. In the CI files we check for the existence of /opt/tf-a/${TEST_PY_BD} and if found, copy bl1.bin and fip.bin to /tmp and set the variables so that we can later run FVP to run. Note that we currently disable the hostfs (semihosting) tests as they trigger a bug in FVP. This has been reported upstream, and can be enabled when fixed. Reviewed-by: Harrison Mutai <[email protected]> Acked-by: Ilias Apalodimas <[email protected]> Signed-off-by: Tom Rini <[email protected]>
Diffstat (limited to 'tools/docker')
-rw-r--r--tools/docker/Dockerfile17
1 files changed, 13 insertions, 4 deletions
diff --git a/tools/docker/Dockerfile b/tools/docker/Dockerfile
index dec1d516a6c..1d7d2a1877e 100644
--- a/tools/docker/Dockerfile
+++ b/tools/docker/Dockerfile
@@ -90,6 +90,7 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
help2man \
iasl \
imagemagick \
+ inetutils-telnet \
iputils-ping \
libconfuse-dev \
libgit2-dev \
@@ -232,10 +233,18 @@ RUN git clone https://gitlab.com/qemu-project/qemu.git /tmp/qemu && \
RUN git clone https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git /tmp/tf-a && \
cd /tmp/tf-a/ && \
git checkout v2.12.0 && \
- cd tools/fiptool && \
- make -j$(nproc) && \
- mkdir -p /usr/local/bin && \
- cp fiptool /usr/local/bin && \
+ make CROSS_COMPILE=/opt/gcc-${TCVER}-nolibc/aarch64-linux/bin/aarch64-linux- \
+ PLAT=fvp BL33=/dev/null -j$(nproc) all fip && \
+ mkdir -p /usr/local/bin /opt/tf-a/vexpress_fvp && \
+ cp tools/fiptool/fiptool /usr/local/bin && \
+ cp build/fvp/release/fip.bin build/fvp/release/bl1.bin \
+ /opt/tf-a/vexpress_fvp/ && \
+ rm -rf build/fvp && \
+ make CROSS_COMPILE=/opt/gcc-${TCVER}-nolibc/aarch64-linux/bin/aarch64-linux- \
+ PLAT=fvp BL33=/dev/null TRANSFER_LIST=1 -j$(nproc) all fip && \
+ mkdir -p /opt/tf-a/vexpress_fvp_bloblist && \
+ cp build/fvp/release/fip.bin build/fvp/release/bl1.bin \
+ /opt/tf-a/vexpress_fvp_bloblist/ && \
rm -rf /tmp/tf-a
# Download the Arm Architecture FVP platform. This file is double compressed.