tpm_tis: Probing function for Intel iTPM bug
authorStefan Berger <stefanb@linux.vnet.ibm.com>
Wed, 30 Mar 2011 16:13:33 +0000 (12:13 -0400)
committerRajiv Andrade <srajiv@linux.vnet.ibm.com>
Tue, 12 Jul 2011 21:53:09 +0000 (18:53 -0300)
commit9519de3f265f112e992aa7f446d905196bd608e8
tree112d43561d9ffb478ebce085d202d77d85ad3a1a
parenta7b66822b20f67f106690d0acee3d0ba667fd9bb
tpm_tis: Probing function for Intel iTPM bug

This patch introduces a function for automatic probing for the Intel iTPM
STS_DATA_EXPECT flaw.

The patch splits the current tpm_tis_send function into 2 parts where the 1st
part is now called tpm_tis_send_data() and merely sends the data to the TPM.
This function is then used for probing. The new tpm_tis_send function now
first calls tpm_tis_send_data and if that succeeds has the TPM process the
command and waits until the response is there.

The probing for the Intel iTPM is only invoked if the user has not passed
itpm=1 as parameter for the module *or* if such a TPM was detected via ACPI.
Previously it was necessary to pass itpm=1 when also passing force=1 to the
module when doing a 'modprobe'. This function is more general than the ACPI
test function and the function relying on ACPI could probably be removed.

Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
Signed-off-by: Rajiv Andrade <srajiv@linux.vnet.ibm.com>
drivers/char/tpm/tpm_tis.c