[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <d957dbd3-4975-48d7-abc5-1a01c0959ea3@linux.ibm.com>
Date: Thu, 21 Mar 2024 12:09:30 -0400
From: Stefan Berger <stefanb@...ux.ibm.com>
To: Jarkko Sakkinen <jarkko@...nel.org>, linux-integrity@...r.kernel.org
Cc: Jonathan Corbet <corbet@....net>,
"Daniel P . Smith" <dpsmith@...rtussolutions.com>,
Lino Sanfilippo <l.sanfilippo@...bus.com>,
Jason Gunthorpe <jgg@...pe.ca>, Peter Huewe <peterhuewe@....de>,
James Bottomley <James.Bottomley@...senPartnership.com>,
Alexander Steffen <Alexander.Steffen@...ineon.com>,
keyrings@...r.kernel.org, linux-doc@...r.kernel.org,
linux-kernel@...r.kernel.org, Randy Dunlap <rdunlap@...radead.org>
Subject: Re: [PATCH v2] Documentation: tpm_tis
On 3/21/24 11:51, Jarkko Sakkinen wrote:
> On Wed Mar 20, 2024 at 6:15 PM EET, Stefan Berger wrote:
>>
>>
>> On 3/20/24 04:56, Jarkko Sakkinen wrote:
>>> Based recent discussions on LKML, provide preliminary bits of tpm_tis_core
>>> dependent drivers. Includes only bare essentials but can be extended later
>>> on case by case. This way some people may even want to read it later on.
>>>
>>> Cc: Jonathan Corbet <corbet@....net>
>>> CC: Daniel P. Smith <dpsmith@...rtussolutions.com>
>>> Cc: Lino Sanfilippo <l.sanfilippo@...bus.com>
>>> Cc: Jason Gunthorpe <jgg@...pe.ca>
>>> Cc: Peter Huewe <peterhuewe@....de>
>>> Cc: James Bottomley <James.Bottomley@...senPartnership.com>
>>> Cc: Alexander Steffen <Alexander.Steffen@...ineon.com>
>>> Cc: keyrings@...r.kernel.org
>>> Cc: linux-doc@...r.kernel.org
>>> Cc: linux-kernel@...r.kernel.org
>>> Cc: linux-integrity@...r.kernel.org
>>> Cc: Randy Dunlap <rdunlap@...radead.org>
>>> Signed-off-by: Jarkko Sakkinen <jarkko@...nel.org>
>>> ---
>>> v2:
>>> - Fixed errors reported by Randy:
>>> https://lore.kernel.org/all/aed28265-d677-491a-a045-24b351854b24@infradead.org/
>>> - Improved the text a bit to have a better presentation.
>>> ---
>>> Documentation/security/tpm/index.rst | 1 +
>>> Documentation/security/tpm/tpm_tis.rst | 30 ++++++++++++++++++++++++++
>>> 2 files changed, 31 insertions(+)
>>> create mode 100644 Documentation/security/tpm/tpm_tis.rst
>>>
>>> diff --git a/Documentation/security/tpm/index.rst b/Documentation/security/tpm/index.rst
>>> index fc40e9f23c85..f27a17f60a96 100644
>>> --- a/Documentation/security/tpm/index.rst
>>> +++ b/Documentation/security/tpm/index.rst
>>> @@ -5,6 +5,7 @@ Trusted Platform Module documentation
>>> .. toctree::
>>>
>>> tpm_event_log
>>> + tpm_tis
>>> tpm_vtpm_proxy
>>> xen-tpmfront
>>> tpm_ftpm_tee
>>> diff --git a/Documentation/security/tpm/tpm_tis.rst b/Documentation/security/tpm/tpm_tis.rst
>>> new file mode 100644
>>> index 000000000000..b331813b3c45
>>> --- /dev/null
>>> +++ b/Documentation/security/tpm/tpm_tis.rst
>>> @@ -0,0 +1,30 @@
>>> +.. SPDX-License-Identifier: GPL-2.0
>>> +
>>> +=========================
>>> +TPM FIFO interface Driver
>>> +=========================
>>> +
>>> +FIFO (First-In-First-Out) is the name of the hardware interface used by the
>>
>> FIFO is the type. I am surprised you call it a 'name'. I would say TIS
>> is the 'name'.
>
> It's what the official specification calls it [1].
>
>
>>
>>> +tpm_tis_core dependent drivers. The prefix "tis" comes from the TPM Interface
>>
>> tis is a tla -- a three letter *acronym*. You aren't using it as a 'prefix'.
>
> I don't know what "tla" means.
>
>>
>>> +Specification, which is the hardware interface specification for TPM 1.x chips.
>>
>> It's also available for TPM2.
>
> Yes, but TIS is the name used by the legacy specification.
The point is that TIS is not just a TPM 1.x interface but also used for
TPM 2.
>
>>
>>> +
>>> +Communication is based on a 5 KiB buffer shared by the TPM chip through a
>>
>> I thought it was typically 4 KiB.
>
> You are basing this on table 9 in [1]?
Yes. See below.
>
>>
>>> +hardware bus or memory map, depending on the physical wiring. The buffer is
>>> +further split into five equal-size buffers, which provide equivalent sets of
If you are referring to the MMIO region between 0xfed4 0000 and 0xfed4
4fff as a buffer then you are talking about a **20kb** MMIO region
(0x5000) that is **split** into equal-sized MMIO regions, each having
4kb (0x1000). Yes, that's the 4kb then but there that one is no 5kb
'further split into five equal-sized buffers' of presumably 1kb each.
Each locality has a 0x1000 sized MMIO region.
Powered by blists - more mailing lists