This series fixes alignment issues, cleans up a bit the TPM IO thread
handling, allows to report backend error to hw/frontend, and
implements the CRB device.
It is a resend of '[PATCH v2 0/5] tpm: CRB device and cleanups', '[PATCH
v3] tpm: add CRB device', and '[PATCH] tpm: fix alignment issues'
combined on top of master to ease maintainer work.
Marc-André Lureau (5):
tpm: fix alignment issues
tpm: lookup cancel path under tpm device class
tpm: replace GThreadPool with AIO threadpool
tpm: report backend request error
tpm: add CRB device
qapi/tpm.json | 5 +-
hw/tpm/tpm_util.h | 17 ++-
include/hw/acpi/tpm.h | 51 +++++++
include/sysemu/tpm.h | 5 +-
include/sysemu/tpm_backend.h | 15 +-
backends/tpm.c | 59 ++++----
hw/i386/acpi-build.c | 34 ++++-
hw/tpm/tpm_crb.c | 303 +++++++++++++++++++++++++++++++++++++
hw/tpm/tpm_emulator.c | 35 ++---
hw/tpm/tpm_passthrough.c | 71 +++++----
hw/tpm/tpm_tis.c | 3 +-
hw/tpm/tpm_util.c | 75 +++++----
tests/tpm-crb-test.c | 275 +++++++++++++++++++++++++++++++++
default-configs/i386-softmmu.mak | 1 +
default-configs/x86_64-softmmu.mak | 1 +
hw/tpm/Makefile.objs | 1 +
tests/Makefile.include | 2 +
17 files changed, 815 insertions(+), 138 deletions(-)
create mode 100644 hw/tpm/tpm_crb.c
create mode 100644 tests/tpm-crb-test.c
--
2.16.0.rc1.1.gef27df75a1