lkml.org 
[lkml]   [2015]   [Feb]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] tpm, tpm_tis: fix TPM 2.0 probing
On 02/10/2015 07:50 AM, Jarkko Sakkinen wrote:
> On Tue, Feb 10, 2015 at 07:16:32AM -0500, Stefan Berger wrote:
>> On 02/09/2015 03:39 AM, Jarkko Sakkinen wrote:
>>> On Mon, Feb 09, 2015 at 12:08:46AM +0100, Peter Hüwe wrote:
>>>> Am Mittwoch, 4. Februar 2015, 15:21:09 schrieb Jarkko Sakkinen:
>>>>> If during transmission system error was returned, the logic was to
>>>>> incorrectly deduce that chip is a TPM 1.x chip. This patch fixes this
>>>>> issue. Also, this patch changes probing so that message tag is used as the
>>>>> measure for TPM 2.x, which should be much more stable.
>>>> Is it aware that some TPMs may respond with 0x00C1 as TAG for TPM1.2 commands?
>>> I guess none of the TPM 1.2 command answer with the tag 0x8002?
>>
>> FYI: pdf page 26 , section 6.1 explains the predictable return value for a
>> TPM1.2 command seen by a TPM2
>>
>> http://www.trustedcomputinggroup.org/files/static_page_files/8C68ADA8-1A4B-B294-D0FC06D3773F7DAA/TPM%20Rev%202.0%20Part%203%20-%20Commands%2001.16-code.pdf
>>
>> Following this:
>>
>> Sending a TPM1.2 command to a TPM2 should return a TPM1.2 header (tag =
>> 0xc4) and error code (TPM_BADTAG = 0x1e)
>>
>> Sending a TPM 2 command to a TPM 2 will give a TPM 2 tag in the header.
>> Sending a TPM 2 command to a TPM 1.2 will give a TPM 1.2 tag in the header
>> and an error code.
> Thank you for the information. Do you think that for some reason
> tpm2_probe() shoould instead check that value is not this error
> instead of checking that tag is 0x80002?

Following your path, you are checking for TPM2_ST_NO_SESSION (0x8001),
which looks correct to me. A TPM1.2 would never send this tag back.

Stefan



\
 
 \ /
  Last update: 2015-02-11 20:01    [W:0.064 / U:0.224 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site