#!/usr/bin/env bash
#
# Copyright (c) 2021-2023, Arm Limited. All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause
#
# It is a copy of fvp-linux.rootfs+ftpm with another expect script
# to run
#

post_tf_build() {
	# Get the images for the test.
	edk_url="$tfa_downloads/ftpm/FVP_AARCH64_EFI.fd"
	rootfs_url="$tfa_downloads/ftpm/boot-fat.uefi.img" get_rootfs
	url="$edk_url" saveas="edk2.bin" fetch_file
	archive_file "edk2.bin"
}

generate_lava_job_template() {
	# These UARTs are swapped because of an Expect script order requirement
	uart="1" port="5000" timeout="600" file="linux-tpm-384.exp" \
		set_primary="1" track_expect
	uart="0" port="5001" timeout="600" file="tpm-logs.exp" track_expect

	set_run_env "ports_script" "$ci_root/model/ftpm-ports.awk"
	set_run_env "num_uarts" "2"

	payload_type="linux" gen_yaml_template
}
