From: Stefan Berger <stefanb@linux.vnet.ibm.com>
To: linuxppc-dev@lists.ozlabs.org, nikunj@linux.vnet.ibm.com,
aik@au1.ibm.com, pmac@au1.ibm.com
Cc: gcwilson@us.ibm.com, dimitris@us.ibm.com, latten@us.ibm.com,
lo1@us.ibm.com, stefanb@us.ibm.com,
Stefan Berger <stefanb@linux.vnet.ibm.com>
Subject: [PATCH 00/16] Add vTPM support to SLOF
Date: Fri, 7 Aug 2015 21:54:49 -0400 [thread overview]
Message-ID: <1438998905-4085665-1-git-send-email-stefanb@linux.vnet.ibm.com> (raw)
The following series of patches adds TPM support to SLOF.
In particular it adds the following:
- TPM drivers for hardware interface and CRQ interface
- TPM initialization
- TPM logging area and firmware API to transfer it to the OS
(measurements are visible in sysfs)
- Some measurement code (Static Core Root Of Trust)
- TPM menu (accessible via 't' key during boot if TPM is available)
- Firmware API extensions following Power Firmware Doc
(to make trusted grub work)
Necessarily, some of its parts are written in Forth, many are written
in 'C'. The extensions are known to work with QEMU for ppc64 running Linux.
Patches 4-6 will eventually need to be merged to avoid compiler warnings
related to unused functions.
Regards,
Stefan
Stefan Berger (16):
Add a TPM driver implementation
Add TPM initialization support
Add sha1 implementation
Add initial support for logging
Extend internal firmware API
Return value of actual log in sml-get-handover-size
Perform some initial measurements
Add support for controlling the states of the TPM
Add support for a TPM menu to control the state of the TPM
Implement measurements of the master boot record
Measure the static core root of trust for measurements
Add TPM firmware API calls hash-all, log-event, hash-log-extend-event
Add TPM firmware API call get-maximum-cmd-size
Add TPM firmware API call pass-through-to-tpm
Add TPM firmware API call get-state
Add TPM firmware API call get-failure-reason
board-js2x/slof/OF.fs | 2 +
board-qemu/Makefile | 2 +-
board-qemu/slof/Makefile | 10 +-
board-qemu/slof/OF.fs | 7 +
board-qemu/slof/tree.fs | 3 +
board-qemu/slof/vio-vtpm-cdriver.fs | 144 ++++
board-qemu/slof/vtpm-sml.fs | 108 +++
include/helpers.h | 1 +
lib/Makefile | 2 +-
lib/libtpm/Makefile | 51 ++
lib/libtpm/sha1.c | 197 +++++
lib/libtpm/sha1.h | 20 +
lib/libtpm/tcgbios.c | 1563 +++++++++++++++++++++++++++++++++++
lib/libtpm/tcgbios.h | 53 ++
lib/libtpm/tcgbios_int.h | 206 +++++
lib/libtpm/tpm.code | 207 +++++
lib/libtpm/tpm.in | 33 +
lib/libtpm/tpm_drivers.c | 456 ++++++++++
lib/libtpm/tpm_drivers.h | 93 +++
slof/fs/packages/disk-label.fs | 6 +-
slof/fs/start-up.fs | 9 +
slof/fs/tpm/tpm-static.fs | 351 ++++++++
slof/helpers.c | 6 +
23 files changed, 3524 insertions(+), 6 deletions(-)
create mode 100644 board-qemu/slof/vio-vtpm-cdriver.fs
create mode 100644 board-qemu/slof/vtpm-sml.fs
create mode 100644 lib/libtpm/Makefile
create mode 100644 lib/libtpm/sha1.c
create mode 100644 lib/libtpm/sha1.h
create mode 100644 lib/libtpm/tcgbios.c
create mode 100644 lib/libtpm/tcgbios.h
create mode 100644 lib/libtpm/tcgbios_int.h
create mode 100644 lib/libtpm/tpm.code
create mode 100644 lib/libtpm/tpm.in
create mode 100644 lib/libtpm/tpm_drivers.c
create mode 100644 lib/libtpm/tpm_drivers.h
create mode 100644 slof/fs/tpm/tpm-static.fs
--
1.9.3
next reply other threads:[~2015-08-08 1:55 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-08 1:54 Stefan Berger [this message]
2015-08-08 1:54 ` [PATCH 01/16] Add a TPM driver implementation Stefan Berger
2015-08-08 1:54 ` [PATCH 02/16] Add TPM initialization support Stefan Berger
2015-08-08 1:54 ` [PATCH 03/16] Add sha1 implementation Stefan Berger
2015-08-08 1:54 ` [PATCH 04/16] Add initial support for logging Stefan Berger
2015-08-08 1:54 ` [PATCH 05/16] Extend internal firmware API Stefan Berger
2015-08-08 1:54 ` [PATCH 06/16] Return value of actual log in sml-get-handover-size Stefan Berger
2015-08-08 1:54 ` [PATCH 07/16] Perform some initial measurements Stefan Berger
2015-08-08 1:54 ` [PATCH 08/16] Add support for controlling the states of the TPM Stefan Berger
2015-08-08 1:54 ` [PATCH 09/16] Add support for a TPM menu to control the state " Stefan Berger
2015-08-08 1:54 ` [PATCH 10/16] Implement measurements of the master boot record Stefan Berger
2015-08-08 1:55 ` [PATCH 11/16] Measure the static core root of trust for measurements Stefan Berger
2015-08-08 1:55 ` [PATCH 12/16] Add TPM firmware API calls hash-all, log-event, hash-log-extend-event Stefan Berger
2015-08-08 1:55 ` [PATCH 13/16] Add TPM firmware API call get-maximum-cmd-size Stefan Berger
2015-08-08 1:55 ` [PATCH 14/16] Add TPM firmware API call pass-through-to-tpm Stefan Berger
2015-08-08 1:55 ` [PATCH 15/16] Add TPM firmware API call get-state Stefan Berger
2015-08-08 1:55 ` [PATCH 16/16] Add TPM firmware API call get-failure-reason Stefan Berger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1438998905-4085665-1-git-send-email-stefanb@linux.vnet.ibm.com \
--to=stefanb@linux.vnet.ibm.com \
--cc=aik@au1.ibm.com \
--cc=dimitris@us.ibm.com \
--cc=gcwilson@us.ibm.com \
--cc=latten@us.ibm.com \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=lo1@us.ibm.com \
--cc=nikunj@linux.vnet.ibm.com \
--cc=pmac@au1.ibm.com \
--cc=stefanb@us.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).