blob: 88410edbde89e3542ad48c66caec367f2536d9b8 [file] [log] [blame]
Manish V Badarkheb87f37b2021-11-10 18:53:05 +00001#
Sandrine Bailleux0bcf4132022-03-31 11:15:51 +02002# Copyright (c) 2021-2022, Arm Limited. All rights reserved.
Manish V Badarkheb87f37b2021-11-10 18:53:05 +00003#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6# Expect script for Linux/Buildroot using Measured Boot & fTPM
7# It is a copy of linux-tpm.exp which doesn't check PCR0 value,
8# as that doesn't apply to this config
9#
10
11source [file join [file dirname [info script]] utils.inc]
12source [file join [file dirname [info script]] handle-arguments.inc]
13
14# File to store the event log from the ftpm service.
15set TFA_DIGEST [get_param tfa_digest "tfa_event_log"]
Harrison Mutai47751e02025-02-28 12:08:09 +000016set FTPM_DIGEST [get_param ftpm_digest "ftpm_event_log"]
Manish V Badarkheb87f37b2021-11-10 18:53:05 +000017
18# regexp for non-zero PCR0
19set non_zero_pcr "(?!(\\s00){16})((\\s(\[0-9a-f\]){2}){16}\\s)"
20
Harrison Mutai47751e02025-02-28 12:08:09 +000021capture_log $TFA_DIGEST "Booting BL31"
Manish V Badarkheb87f37b2021-11-10 18:53:05 +000022
23expect {
24 "login" {
25 send "root\n"
26 }
Manish V Badarkheb87f37b2021-11-10 18:53:05 +000027}
28
29expect {
30 "#" {
31 # Load the fTPM driver
32 send "ftpm\n"
33 }
Manish V Badarkheb87f37b2021-11-10 18:53:05 +000034}
35
36expect {
37 "#" { }
Manish V Badarkheb87f37b2021-11-10 18:53:05 +000038}
39
40# Iterate over the rest of PCRs and check that they all are zeros.
41for {set i 1} {$i < 11} {incr i} {
42 send "pcrread -ha $i\n"
43
44 expect {
45 -re "(\\s00){16}\\s+(00\\s){16}" { }
46
47 -re $non_zero_pcr {
48 exit_uart -1
49 }
Manish V Badarkheb87f37b2021-11-10 18:53:05 +000050 }
51}
52
Chris Kay07756bc2022-11-24 17:21:48 +000053expect_string "#" "finished reading PCRs"
54
Harrison Mutai47751e02025-02-28 12:08:09 +000055compare_log $TFA_DIGEST $FTPM_DIGEST