These patches are based on ppc-for-4.2 and are also available at:

  https://github.com/mdroth/qemu/commits/spapr-tpm-hcall-v2

This patchset implements the H_TPM_COMM hypercall, which provides a way
for an Ultravisor to pass raw TPM commands on to a host's TPM device,
either directly or through a TPM Resource Manager (needed to support
multiple guests).

Secure VMs running on an Ultravisor have a symmetric key that is
encrypted using a public key that is bound to a trusted host's TPM
hardware. This hypercall provides a means to decrypt the symmetric
key on behalf of a Secure VMs using the host's TPM hardware.

More details are provided in the spec summary introduced in patch 1.

Changes since v1:
 - use separate hcall table for SVM hcall range (David)
 - document reserved hcall range in ppc-spapr-uv-hcalls.txt

Changes since RFC/v0:
 - configure TPM path via -device spapr-tpm-proxy instead of -machine (David)
 - return H_FUNCTION (not H_RESOURCE) if TPM has not been configured (David)
 - drop use of global for storing TPM FD (David)
 - fix checkpatch errors relating to case statement indents, newlines in
   error_report(), and lines over 80.
 - fix some minor typos in documentation
 - rebased on ppc-for-4.2

 docs/specs/ppc-spapr-uv-hcalls.txt |  76 +++++++++++++++++++++++++++
 hw/ppc/Makefile.objs               |   1 +
 hw/ppc/spapr.c                     |  33 +++++++++++-
 hw/ppc/spapr_hcall.c               |  13 +++++
 hw/ppc/spapr_tpm_proxy.c           | 176 
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 hw/ppc/trace-events                |   4 ++
 include/hw/ppc/spapr.h             |  11 ++++
 include/hw/ppc/spapr_tpm_proxy.h   |  31 +++++++++++
 8 files changed, 344 insertions(+), 1 deletion(-)



Reply via email to