[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v6 0/4] Add support for TPM Physical Presence interf
From: |
Marc-André Lureau |
Subject: |
[Qemu-devel] [PATCH v6 0/4] Add support for TPM Physical Presence interface |
Date: |
Thu, 28 Jun 2018 19:26:53 +0200 |
Hi,
The following patches implement the TPM Physical Presence Interface
that allows a user to set a command via ACPI (sysfs entry in Linux)
that, upon the next reboot, the firmware looks for and acts upon by
sending sequences of commands to the TPM.
A dedicated memory region is added to the TPM CRB & TIS devices, at
address/size 0xFED45000/0x400. A new "etc/tpm/config" fw_cfg entry
holds the location for that PPI region and some version details, to
allow for future flexibility.
With the associated edk2/ovmf firmware, the Windows HLK "PPI 1.3" test
now runs successfully.
It is based on previous work from Stefan Berger ("[PATCH v2 0/4]
Implement Physical Presence interface for TPM 1.2 and 2")
The edk2 support is merged upstream.
v6: (see changeset in patches)
- replace mmio region with ram
- ASL code improvements
- endianess fix on 8bit fw-cfg fields
v5:
- more code documentation (Marc-André)
- use some explicit named variables to ease reading (Marc-André)
- use fixed size fields/memory regions, remove PPI struct (Marc-André)
- only add PPI ACPI methods if PPI is enabled (Marc-André)
- document the qemu/firmware ACPI memory region (Stefan)
- remove the dummy ACPI memory clear interface patch
v4:
- add a "ppi" property, default to true, unless machine <= 2.12
- pass PPI address to tpm_ppi_init_io()
- renamed tpm_ppi struct name
Marc-André Lureau (1):
tpm: add a "ppi" boolean property
Stefan Berger (3):
tpm: implement virtual memory device for TPM PPI
acpi: add fw_cfg file for TPM and PPI virtual memory device
acpi: build TPM Physical Presence interface
hw/tpm/tpm_ppi.h | 25 +++
include/hw/acpi/tpm.h | 17 ++
include/hw/compat.h | 10 +
hw/i386/acpi-build.c | 420 +++++++++++++++++++++++++++++++++++++++++-
hw/tpm/tpm_crb.c | 11 ++
hw/tpm/tpm_ppi.c | 33 ++++
hw/tpm/tpm_tis.c | 11 ++
docs/specs/tpm.txt | 99 ++++++++++
hw/tpm/Makefile.objs | 2 +-
hw/tpm/trace-events | 4 +
10 files changed, 629 insertions(+), 3 deletions(-)
create mode 100644 hw/tpm/tpm_ppi.h
create mode 100644 hw/tpm/tpm_ppi.c
--
2.18.0.rc1
- [Qemu-devel] [PATCH v6 0/4] Add support for TPM Physical Presence interface,
Marc-André Lureau <=
- [Qemu-devel] [PATCH v6 1/4] tpm: add a "ppi" boolean property, Marc-André Lureau, 2018/06/28
- [Qemu-devel] [PATCH v6 2/4] tpm: implement virtual memory device for TPM PPI, Marc-André Lureau, 2018/06/28
- [Qemu-devel] [PATCH v6 4/4] acpi: build TPM Physical Presence interface, Marc-André Lureau, 2018/06/28
- [Qemu-devel] [PATCH v6 3/4] acpi: add fw_cfg file for TPM and PPI virtual memory device, Marc-André Lureau, 2018/06/28
- Re: [Qemu-devel] [PATCH v6 0/4] Add support for TPM Physical Presence interface, Stefan Berger, 2018/06/29