Merge tag 'tpmdd-next-20190213' of git://git.infradead.org/users/jjs/linux-tpmdd...
authorJames Morris <james.morris@microsoft.com>
Wed, 13 Feb 2019 20:01:00 +0000 (12:01 -0800)
committerJames Morris <james.morris@microsoft.com>
Wed, 13 Feb 2019 20:01:00 +0000 (12:01 -0800)
commit5da10728037afea6743b76afddfdc9950cd711b3
treeefc57d8e14bebb64e7401b37d29d4d1fe4220c2d
parente7a44cfd639945a0dec749f896adc1d340c2a6aa
parent50a81b60bfe075a0023670ff86558abd02536799
Merge tag 'tpmdd-next-20190213' of git://git.infradead.org/users/jjs/linux-tpmdd into next-tpm

tpmdd updates for Linux v5.1

From: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>

Clean up the transmission flow
==============================

Cleaned up the whole transmission flow. Locking of the chip is now done in
the level of tpm_try_get_ops() and tpm_put_ops() instead taking the chip
lock inside tpm_transmit(). The nested calls inside tpm_transmit(), used
with the resource manager, have been refactored out.

Should make easier to perform more complex transactions with the TPM
without making the subsystem a bigger mess (e.g. encrypted channel patches
by James Bottomley).

PPI 1.3 support
===============

TPM PPI 1.3 introduces an additional optional command parameter that may be
needed for some commands. Display the parameter if the command requires
such a parameter. Only command 23 (SetPCRBanks) needs one.

The PPI request file will show output like this then:

   # echo "23 16" > request
   # cat request
   23 16

   # echo "5" > request
   # cat request
   5

Extend all PCR banks in IMA
===========================

Instead of static PCR banks array, the array of available PCR banks is now
allocated dynamically. The digests sizes are determined dynamically using a
probe PCR read without relying crypto's static list of hash algorithms.

This should finally make sealing of measurements in IMA safe and secure.

TPM 2.0 selftests
=================

Added a test suite to tools/testing/selftests/tpm2 previously outside of
the kernel tree: https://github.com/jsakkine-intel/tpm2-scripts.