Add support for Hafnium code coverage
Signed-off-by: Saul Romero <saul.romero@arm.com>
Change-Id: I79504f7a9a17cad04fb345528cfedff8775dc163
diff --git a/job/tf-worker/run_fvp_test.sh b/job/tf-worker/run_fvp_test.sh
index b68f2e0..c402036 100755
--- a/job/tf-worker/run_fvp_test.sh
+++ b/job/tf-worker/run_fvp_test.sh
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
#
-# Copyright (c) 2019-2022, Arm Limited. All rights reserved.
+# Copyright (c) 2019-2023, Arm Limited. All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause
#
@@ -35,6 +35,9 @@
READELF="$(which 'arm-none-eabi-readelf')"
FALLBACK_PLUGIN_URL="http://files.oss.arm.com/downloads/tf-a/coverage-plugin"
FALLBACK_FILES="CoverageTrace.so,CoverageTrace.o,PluginUtils.o"
+ elif [[ "$TEST_GROUP" == spm* ]];then
+ PROJECT="HAFNIUM"
+ LIST_OF_BINARIES="secure_hafnium.elf hafnium.elf"
elif [[ "$TEST_GROUP" == tf* ]];then
PROJECT="TF-A"
LIST_OF_BINARIES="bl1.elf bl2.elf bl31.elf"
diff --git a/model/fvp_common.sh b/model/fvp_common.sh
index 399ee47..14ce8b8 100644
--- a/model/fvp_common.sh
+++ b/model/fvp_common.sh
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2019-2022, Arm Limited. All rights reserved.
+# Copyright (c) 2019-2023, Arm Limited. All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause
#
@@ -118,7 +118,7 @@
# runs, so that FVP trace log was properly dumped (and parsed by LAVA).
# Don't use it for other OpenCI runs, as it may lead to race condition
# with LAVA's capturing of FVP output.
-if echo "$RUN_CONFIG" | grep -iq 'tftf'; then
+if echo "$RUN_CONFIG" | grep -Eiq 'tftf|spm'; then
is_arm_env=0
if is_arm_jenkins_env; then
is_arm_env=1
diff --git a/script/gen_merge_report.sh b/script/gen_merge_report.sh
index 6045a3b..4cd4f67 100644
--- a/script/gen_merge_report.sh
+++ b/script/gen_merge_report.sh
@@ -196,6 +196,9 @@
tf*)
project="trusted_firmware"
jenkins_archive_folder=merge/outdir;;
+ spm*)
+ project="hafnium"
+ jenkins_archive_folder=merge/outdir;;
*)
exit 0;;
esac
diff --git a/script/qa-code-coverage.sh b/script/qa-code-coverage.sh
index 95b79f8..95cc32f 100644
--- a/script/qa-code-coverage.sh
+++ b/script/qa-code-coverage.sh
@@ -171,6 +171,25 @@
}
]
EOM
+elif [ "$PROJECT" = "HAFNIUM" ]; then
+ read -r -d '' scm_sources << EOM
+ [
+ {
+ "type": "git",
+ "URL": "$CC_TRUSTED_FIRMWARE_URL",
+ "COMMIT": "$CC_TRUSTED_FIRMWARE_COMMIT",
+ "REFSPEC": "$CC_TRUSTED_FIRMWARE_REFSPEC",
+ "LOCATION": "trusted_firmware"
+ },
+ {
+ "type": "git",
+ "URL": "$CC_SPM_URL",
+ "COMMIT": "$CC_SPM_COMMIT",
+ "REFSPEC": "$CC_SPM_REFSPEC",
+ "LOCATION": "spm"
+ }
+ ]
+EOM
else
echo "SCM sources not provided for project '${PROJECT}'"
exit 1