blob: 4e4d17c764cee1e573fb0cc94b3ef937f0a04594 [file] [log] [blame]
#!/usr/bin/env bash
#
# Copyright (c) 2024, Arm Limited. All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause
#
pre_tftf_build() {
targets="tftf cactus ivy" set_tftf_build_targets
}
post_tf_build() {
build_fip BL33="$archive/tftf.bin" BL32="$archive/secure_hafnium.bin"
}
generate_lava_job_template() {
payload_type="tftf" gen_yaml_template
}
generate_lava_job() {
local model="base-aemv8a"
uart="0" file="tftf.exp" track_expect
uart="1" file="hold_uart.exp" track_expect
# SPM(reference implementation of S-EL2 firmware) has SMMUv3 driver
# enabled to help with stage-2 translation and virtualization of
# upstream peripheral devices. Hence, enable the SMMUv3 IP in FVP
# by configuring the appropriate parameters of the SMMUv3 AEM.
# FEAT_FGT, FEAT_VHE, FEAT_RAS, FEAT_RASv1p1, FEAT_NV2, FEAT_TRF and
# FEAT_HCX are enabled implicitly due to the architecture version
# being set to ARMv9.3.
model="$model" \
arch_version="9.3" \
has_branch_target_exception="1" \
has_smmuv3_params="1" \
memory_tagging_support_level="2" \
amu_present="1" \
has_fgt2="1" \
has_ecv="1" \
has_csv2_2="1" \
has_s1pie="1" \
has_s2pie="1" \
has_s1poe="1" \
has_gcs="1" \
has_mpam="1" \
gicd_are_fixed_one="1" \
gicv3_ext_interrupt_range="1" \
gicd_ext_ppi_count="64" \
gicd_ext_spi_count="1024" \
gen_model_params
model="$model" gen_fvp_yaml
}