Hi Javier,
SBL communicate the type of TPM interface to OS using 'StartMethod' field in TPM2
ACPI table.
Device info about TPM is published via TPM SSDT table.
These tables are available in "Platform/CommonBoardPkg/AcpiTables/Tpm"
directory.
They are updated by TpmLib during Stage2 execution.
I have a test setup here with Linux kernel 4.14 and it is able to detect SPI TPM device
and install 'tpm_tis' kernel driver.
Can you check your kernel dmesg log and see if tpm driver is generating any error
message?
Thanks
Sachin
Date: Wed, 10 Apr 2019 16:58:55 +0000
From: Javier Santos Romo <jsantos(a)gmv.com>
To: "sbl-devel(a)lists.01.org" <sbl-devel(a)lists.01.org>
Subject: Re: [Sbl-devel] TPM Support on Fast SPI Bus
Message-ID: <c9161b0a100a4c71b9b458056c482f88(a)gmv.com>
Content-Type: text/plain; charset="iso-8859-1"
Hi Sachin,
Thanks for your answer. Following your guidelines I could finally verify TPM functionality
in SBL. However, I have tested that linux kernel doesn't detect the device. I think is
something related to ACPI like I told you in our last email. Do you have any example or
code snippet where TPM on FAST SPI is configured in a ACPI table?
Thanks,
Javier
-----Mensaje original-----
De: Agrawal, Sachin [mailto:sachin.agrawal@intel.com] Enviado el: mi?rcoles, 10 de abril
de 2019 0:01
Para: sbl-devel(a)lists.01.org; Javier Santos Romo <jsantos(a)gmv.com>
Asunto: Re: [Sbl-devel] TPM Support on Fast SPI Bus
Hi Javier,
Yes. If you want to use interrupt functionality for TPM device, you may have to report it
via ACPI table to OS.
Currently I believe it is working because OS driver is probably using polling mechanism.
Thanks
Sachin
Date: Tue, 9 Apr 2019 10:22:25 +0000
From: Javier Santos Romo <jsantos(a)gmv.com>
To: "sbl-devel(a)lists.01.org" <sbl-devel(a)lists.01.org>
Subject: Re: [Sbl-devel] TPM Support on Fast SPI Bus
Message-ID: <70bf0ebfbd874530ae1dcbaa6b60b39e(a)gmv.com>
Content-Type: text/plain; charset="iso-8859-1"
Hi Sachin,
OK, that GPIO configuration is right according to Apollo Lake Soc. Just one last question.
Then, if GPIO_9 is configured as TPM interrupt signal, is not it necessary to configure
this pin as TPM interrupt pin in some place around SBL code? I mean, to be able to use
this pin as interrupt I suppose it would have to be indicated in ACPI table or something
like that, isn?t it?
Thanks,
Javier
Show replies by date
Hi Sachin,
I could finally solve the problem. I added the GPIO configuration in a table in Stage1B,
but I forget to modify also same GPIO in Stage2 phase, so GPIO configuration was being
overwritten. Now I can see TPM driver working in Linux kernel 4.14 too. Thanks for your
support.
Regards,
Javier
-----Mensaje original-----
De: Agrawal, Sachin [mailto:sachin.agrawal@intel.com]
Enviado el: jueves, 11 de abril de 2019 7:21
Para: sbl-devel(a)lists.01.org; Javier Santos Romo <jsantos(a)gmv.com>
Asunto: RE: : [Sbl-devel] TPM Support on Fast SPI Bus
Hi Javier,
SBL communicate the type of TPM interface to OS using 'StartMethod' field in TPM2
ACPI table.
Device info about TPM is published via TPM SSDT table.
These tables are available in "Platform/CommonBoardPkg/AcpiTables/Tpm"
directory.
They are updated by TpmLib during Stage2 execution.
I have a test setup here with Linux kernel 4.14 and it is able to detect SPI TPM device
and install 'tpm_tis' kernel driver.
Can you check your kernel dmesg log and see if tpm driver is generating any error
message?
Thanks
Sachin
Date: Wed, 10 Apr 2019 16:58:55 +0000
From: Javier Santos Romo <jsantos(a)gmv.com>
To: "sbl-devel(a)lists.01.org" <sbl-devel(a)lists.01.org>
Subject: Re: [Sbl-devel] TPM Support on Fast SPI Bus
Message-ID: <c9161b0a100a4c71b9b458056c482f88(a)gmv.com>
Content-Type: text/plain; charset="iso-8859-1"
Hi Sachin,
Thanks for your answer. Following your guidelines I could finally verify TPM functionality
in SBL. However, I have tested that linux kernel doesn't detect the device. I think is
something related to ACPI like I told you in our last email. Do you have any example or
code snippet where TPM on FAST SPI is configured in a ACPI table?
Thanks,
Javier
-----Mensaje original-----
De: Agrawal, Sachin [mailto:sachin.agrawal@intel.com] Enviado el: mi?rcoles, 10 de abril
de 2019 0:01
Para: sbl-devel(a)lists.01.org; Javier Santos Romo <jsantos(a)gmv.com>
Asunto: Re: [Sbl-devel] TPM Support on Fast SPI Bus
Hi Javier,
Yes. If you want to use interrupt functionality for TPM device, you may have to report it
via ACPI table to OS.
Currently I believe it is working because OS driver is probably using polling mechanism.
Thanks
Sachin
Date: Tue, 9 Apr 2019 10:22:25 +0000
From: Javier Santos Romo <jsantos(a)gmv.com>
To: "sbl-devel(a)lists.01.org" <sbl-devel(a)lists.01.org>
Subject: Re: [Sbl-devel] TPM Support on Fast SPI Bus
Message-ID: <70bf0ebfbd874530ae1dcbaa6b60b39e(a)gmv.com>
Content-Type: text/plain; charset="iso-8859-1"
Hi Sachin,
OK, that GPIO configuration is right according to Apollo Lake Soc. Just one last question.
Then, if GPIO_9 is configured as TPM interrupt signal, is not it necessary to configure
this pin as TPM interrupt pin in some place around SBL code? I mean, to be able to use
this pin as interrupt I suppose it would have to be indicated in ACPI table or something
like that, isn?t it?
Thanks,
Javier
P Please consider the environment before printing this e-mail.