The following series of patches adds vTPM emulator support for the ppc64 platform (pSeries).
It can be tested as follows with swtpm/libtpms: #> swtpm socket --tpmstate dir=/tmp/mytpm1 \ --ctrl type=unixio,path=/tmp/mytpm1/ctrl.sock \ --log level=2 If TPM 2 is desired, add --tpm2 as parameter to the above and use the latest tpm2-preview branches of libtpms and swtpm. In another terminal start QEMU: #> sudo ./ppc64-softmmu/qemu-system-ppc64 -m 1024 \ -monitor stdio -vnc :12 -vga std \ --chardev socket,id=chrtpm,path=/tmp/mytpm1/ctrl.sock \ -tpmdev emulator,id=tpm0,chardev=chrtpm \ -device tpm-spapr,tpmdev=tpm0 \ -L /tmp -bios boot_rom.bin \ myimage.raw Links: - libtpms: https://github.com/stefanberger/libtpms/wiki - swtpm: https://github.com/stefanberger/swtpm/wiki Regards, Stefan Stefan Berger (2): tpm_spapr: Support TPM for ppc64 using CRQ based interface tpm_spapr: Support suspend and resume hw/tpm/Makefile.objs | 1 + hw/tpm/tpm_spapr.c | 433 +++++++++++++++++++++++++++++++++++++++++++++++++++ include/sysemu/tpm.h | 3 + qapi/tpm.json | 5 +- 4 files changed, 440 insertions(+), 2 deletions(-) create mode 100644 hw/tpm/tpm_spapr.c -- 2.5.5