| #!/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 |
| } |