Add support to test TF-A Measured Boot through an external TPM service.
Perform automatic tests to ensure that Measured Boot functionality on
TF-A can interact with an external TPM service.
This patch performs the following tests:
1.- Check that PCR0 Digest is not all zeros
2.- Check that the rest of PCRs are all zero
3.- Check that the event log written by TF-A is the same as read by
the TPM service.
The patch is not meant to test whether the digests are correct or not
(testing if the TPM service is buggy or not is beyond the scope of
this test). It just tests that an external TPM service is able to
access the TPM event log generated by TF-A and that it can be properly
processed.
Change-Id: I5fba87005886ff549345bd92675d2f2a9fe44e79
Signed-off-by: Javier Almansa Sobrino <javier.almansasobrino@arm.com>
diff --git a/fvp_utils.sh b/fvp_utils.sh
index 42434dc..8c146cd 100644
--- a/fvp_utils.sh
+++ b/fvp_utils.sh
@@ -58,6 +58,22 @@
archive_file "bl32.bin"
}
+# For Measured Boot tests using a TA based on OPTEE, it is necessary to use a
+# specific build rather than the default one generated by Jenkins.
+get_ftpm_optee_bin() {
+ url="${nfs_volume}/pdsw/downloads/tf-a/ftpm/optee/tee-header_v2.bin" \
+ saveas="bl32.bin" fetch_file
+ archive_file "bl32.bin"
+
+ url="${nfs_volume}/pdsw/downloads/tf-a/ftpm/optee/tee-pager_v2.bin" \
+ saveas="bl32_extra1.bin" fetch_file
+ archive_file "bl32_extra1.bin"
+
+ url="${nfs_volume}/pdsw/downloads/tf-a/ftpm/optee/tee-pageable_v2.bin" \
+ saveas="bl32_extra2.bin" fetch_file
+ archive_file "bl32_extra2.bin"
+}
+
get_uboot32_bin() {
local tmpdir="$(mktempdir)"