This series adds the capability to instantiate an MMIO TPM TIS in ARM virt.
The series was tested with the swtpm/libtpms emulator. Automatic guest LUKS volume unlocking (tpm2) was successful. EDK2 support is under development [3]. Thanks to Ard for supporting me when setting up the test environment. Best Regards Eric Testing: mkdir /tmp/tpm swtpm socket \ --tpm2 \ -t -d \ --tpmstate dir=/tmp/tpm \ --ctrl type=unixio,path=/tmp/swtpm-sock qemu command line must be augmented with the following options: -chardev socket,id=chrtpm,path=/tmp/swtpm-sock \ -tpmdev emulator,id=tpm0,chardev=chrtpm \ -device tpm-tis,tpmdev=tpm0 \ References: [1] libtpms: https://github.com/stefanberger/libtpms/wiki [2] swtpm: https://github.com/stefanberger/swtpm/wiki [3] [PATCH 0/4] ArmVirtPkg: implement measured boot for ArmVirtQemu This series can be found at: https://github.com/eauger/qemu/tree/v4.2.0-tpm-rfc Eric Auger (2): tpm: Let the TPM TIS device be usable on ARM hw/arm/virt: vTPM support hw/arm/Kconfig | 1 + hw/arm/sysbus-fdt.c | 36 ++++++++++++++++++++++++++++++++++++ hw/arm/virt.c | 7 +++++++ hw/tpm/Kconfig | 2 +- hw/tpm/tpm_tis.c | 16 ++++++++++++++++ 5 files changed, 61 insertions(+), 1 deletion(-) -- 2.20.1