feat(sgi): add platform specific tftf expect script and run_config
Neoverse reference design platforms use secure uart for trusted firmware
logs and non-secure uart for tftf logs. Hence, add a new tftf expect
script that searches for tftf logs without expecting trusted firmware
logs on the same uart. Additionally, add a tftf run_config that uses
uart1 as the primary uart port and the newly added tftf expect script.
Also, update the tftf run_config used in group/tf-l3-boot-tests-css for
rdn1edge and sgi575 platforms to reflect the above mentioned changes.
Signed-off-by: Shriram K <shriram.k@arm.com>
Change-Id: If28a4a213e6b60c60359b6e1d1990151a38d4c7e
diff --git a/expect/tftf-sgi.exp b/expect/tftf-sgi.exp
new file mode 100644
index 0000000..56c28b8
--- /dev/null
+++ b/expect/tftf-sgi.exp
@@ -0,0 +1,32 @@
+#
+# Copyright (c) 2022 Arm Limited. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
+#
+# Expect script for Trusted Firmware Test Framework
+#
+
+source [file join [file dirname [info script]] handle-arguments.inc]
+
+expect_string "Booting trusted firmware test framework" "Starting TFTF"
+expect_re "Running at NS-EL(1|2)"
+
+expect {
+ "Tests Failed : 0" {
+ expect_string "Exiting tests." "<<TFTF Success>>"
+ exit_uart 0
+ }
+ "Tests Passed : 0" {
+ expect_string "Exiting tests." "<<TFTF no tests passed>>"
+ exit_uart -1
+ }
+ -re "Tests Failed : \[^0]" {
+ expect_string "Exiting tests." "<<TFTF Fail>>"
+ exit_uart -1
+ }
+ timeout {
+ exit_timeout
+ }
+}
+
+exit_uart -1
diff --git a/group/tf-l3-boot-tests-css/fvp-rdn1edge-tbb,fvp-rdn1edge-default:fvp-tftf-fip.tftf-rdn1edge b/group/tf-l3-boot-tests-css/fvp-rdn1edge-tbb,fvp-rdn1edge-default:fvp-tftf.sgi-fip.tftf-rdn1edge
similarity index 100%
rename from group/tf-l3-boot-tests-css/fvp-rdn1edge-tbb,fvp-rdn1edge-default:fvp-tftf-fip.tftf-rdn1edge
rename to group/tf-l3-boot-tests-css/fvp-rdn1edge-tbb,fvp-rdn1edge-default:fvp-tftf.sgi-fip.tftf-rdn1edge
diff --git a/group/tf-l3-boot-tests-css/fvp-sgi575-tbb,fvp-sgi575-default:fvp-tftf-fip.tftf-sgi575 b/group/tf-l3-boot-tests-css/fvp-sgi575-tbb,fvp-sgi575-default:fvp-tftf.sgi-fip.tftf-sgi575
similarity index 100%
rename from group/tf-l3-boot-tests-css/fvp-sgi575-tbb,fvp-sgi575-default:fvp-tftf-fip.tftf-sgi575
rename to group/tf-l3-boot-tests-css/fvp-sgi575-tbb,fvp-sgi575-default:fvp-tftf.sgi-fip.tftf-sgi575
diff --git a/run_config/fvp-tftf.sgi b/run_config/fvp-tftf.sgi
new file mode 100644
index 0000000..3e71521
--- /dev/null
+++ b/run_config/fvp-tftf.sgi
@@ -0,0 +1,13 @@
+#!/usr/bin/env bash
+#
+# Copyright (c) 2022 Arm Limited. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
+#
+
+fetch_tf_resource() {
+ uart="1" timeout="1200" set_primary="1" file="tftf-sgi.exp" track_expect
+ uart="0" file="hold_uart.exp" track_expect
+
+ payload_type="tftf" gen_fvp_yaml_template
+}
diff --git a/script/trusted-firmware.nomination.py b/script/trusted-firmware.nomination.py
index d0ec37e..eda06af 100644
--- a/script/trusted-firmware.nomination.py
+++ b/script/trusted-firmware.nomination.py
@@ -12,7 +12,7 @@
nomination_rules = {
# Run RDN1EDGE TF-A Tests and MISRA checks for any platform changes
"path:plat/arm/board/rdn1edge":
- ["tf-l3-boot-tests-css/fvp-rdn1edge-tbb,fvp-rdn1edge-default:fvp-tftf-fip.tftf-rdn1edge",
+ ["tf-l3-boot-tests-css/fvp-rdn1edge-tbb,fvp-rdn1edge-default:fvp-tftf.sgi-fip.tftf-rdn1edge",
"tf-l2-coverity-misra-nominated/fvp-rdn1edge-tbb:coverity-tf-misra.diff",
"tf-l3-boot-tests-css/fvp-rdn1edgex2-tbb:fvp-linux.sgi-fip.sgi-rdn1edgex2-debug",
"tf-l2-coverity-misra-nominated/fvp-rdn1edgex2-tbb:coverity-tf-misra.diff"],
@@ -25,7 +25,7 @@
# Run SGI575 boot test, TF-A Tests and MISRA checks for any changes with "sgi" in the path
"pathre:sgi":
["tf-l3-boot-tests-css/fvp-sgi575-tbb:fvp-linux.sgi-fip.sgi-sgi575-debug",
- "tf-l3-boot-tests-css/fvp-sgi575-tbb,fvp-sgi575-default:fvp-tftf-fip.tftf-sgi575",
+ "tf-l3-boot-tests-css/fvp-sgi575-tbb,fvp-sgi575-default:fvp-tftf.sgi-fip.tftf-sgi575",
"tf-l2-coverity-misra-nominated/fvp-sgi575-tbb:coverity-tf-misra.diff"],
# Run Coverity MISRA checks for tc platform changes