On 12/05/2017 03:35 PM, Stefan Berger wrote:
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
The migration patch builds on a series of previous patches. These and
this series of patches can be found in my working branch:
https://github.com/stefanberger/qemu-tpm/commits/tpm-next+
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