[PATCH v2 00/10] tpm: Enhance sandbox tpm2 emulation
Simon Glass
sjg at chromium.org
Sun Jul 18 22:17:56 CEST 2021
At present the TPM2 emulator lacks the ability to load and save the
state. This means it cannot be used for verify-boot flow that includes
multiple phases (e.g. VPL and SPL). It also lacks support for
non-volatile data storage.
This series adds these features to the TPM2 emulator, with some code
from TPM1 moving into a common file.
A few other clean-ups are included to make the two emulators more similar.
Changes in v2:
- Add new patch to correct handling of SANDBOX_TPM_PCR_NB
- Drop the constant sandbox_extended_once_pcr since we can calculate it
- Update the commit message to explain that there is only one PCR
Simon Glass (10):
sandbox: tpm: Split out common nvdata code
sandbox: tpm: Tidy up reading and writing of device state
sandbox: tpm: Support the define-space command
sandbox: tpm: Correct handling of get-capability
sandbox: tpm: Finish comments for struct sandbox_tpm2
sandbox: tpm: Track whether the state is valid
sandbox: tpm: Support nvdata in TPM2
sandbox: tpm: Support storing device state in tpm2
sandbox: tpm: Correct handling of SANDBOX_TPM_PCR_NB
sandbox: tpm: Support extending a PCR multiple times
drivers/tpm/Makefile | 4 +-
drivers/tpm/sandbox_common.c | 77 +++++++++
drivers/tpm/sandbox_common.h | 108 +++++++++++++
drivers/tpm/tpm2_tis_sandbox.c | 283 +++++++++++++++++++++++++++++----
drivers/tpm/tpm_tis_sandbox.c | 171 ++++++--------------
include/tpm-v2.h | 2 +
test/py/tests/test_tpm2.py | 18 ++-
7 files changed, 505 insertions(+), 158 deletions(-)
create mode 100644 drivers/tpm/sandbox_common.c
create mode 100644 drivers/tpm/sandbox_common.h
--
2.32.0.402.g57bb445576-goog
More information about the U-Boot
mailing list