2009-06-12 05:59:41

by Shahbaz Khan

[permalink] [raw]
Subject: TPM drivers support and Linux Integrity Module for 2.6.30

Hi,

I am using Intel Q45 Express chipset with TPM version 1.2 specs of
TCG. The kernel version is 2.6.30. Problem is that the TPM drivers
cannot provide functionality to the TCG TSS giving error message:

"TCSD TDDL ERROR: Could not find a device to open!"

The device node in /dev is also not being created which should be
"/dev/tpm". If created manually then still it does not work.

What should be done?

Thanks.

--
Shaz


2009-06-12 14:32:33

by Mimi Zohar

[permalink] [raw]
Subject: Re: TPM drivers support and Linux Integrity Module for 2.6.30

On Fri, 2009-06-12 at 11:59 +0600, Shahbaz Khan wrote:
> Hi,
>
> I am using Intel Q45 Express chipset with TPM version 1.2 specs of
> TCG. The kernel version is 2.6.30. Problem is that the TPM drivers
> cannot provide functionality to the TCG TSS giving error message:
>
> "TCSD TDDL ERROR: Could not find a device to open!"
>
> The device node in /dev is also not being created which should be
> "/dev/tpm". If created manually then still it does not work.
>
> What should be done?
>
> Thanks.
>
> --
> Shaz

This is a device driver issue. Copying the TPM maintainers and the
forum.

Mimi

2009-06-14 03:55:49

by Rajiv Andrade

[permalink] [raw]
Subject: Re: TPM drivers support and Linux Integrity Module for 2.6.30

Hi Mimi, thanks for copying us.

Shaz,

If this is the same chip we find in the GM45 boards, iTPM, the upstream
driver won't work properly with it.
Mainly because this iTPM returns the wrong status code when the driver
didn't finish sending all bytes required for a specific command.
As suggested by Seiji Munetoh in the tpmdd-devel sf mailing list, you
can modify line 263 of tpm_tis.c as below:

- if ((status & TPM_STS_DATA_EXPECT) == 0) {
+ if ((status & TPM_STS_VALID) == 0) {


Then, after compiling it, since it also seems to not support PNP, load
it with force option on:

modprobe tpm_tis force=1

If modprobe fails the first time, try the second and then it will work.

I'm going to submit a patch to make the upstream driver work with it,
making this line depend on a module param too..

Thanks,
Rajiv

Mimi Zohar wrote:
> On Fri, 2009-06-12 at 11:59 +0600, Shahbaz Khan wrote:
>
>> Hi,
>>
>> I am using Intel Q45 Express chipset with TPM version 1.2 specs of
>> TCG. The kernel version is 2.6.30. Problem is that the TPM drivers
>> cannot provide functionality to the TCG TSS giving error message:
>>
>> "TCSD TDDL ERROR: Could not find a device to open!"
>>
>> The device node in /dev is also not being created which should be
>> "/dev/tpm". If created manually then still it does not work.
>>
>> What should be done?
>>
>> Thanks.
>>
>> --
>> Shaz
>>
>
> This is a device driver issue. Copying the TPM maintainers and the
> forum.
>
> Mimi
>
>