Re: [PATCH v2] Documentation: tpm_tis

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu Mar 21, 2024 at 6:09 PM EET, Stefan Berger wrote:
>
>
> 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@xxxxxxx>
> >>> CC: Daniel P. Smith <dpsmith@xxxxxxxxxxxxxxxxxxxx>
> >>> Cc: Lino Sanfilippo <l.sanfilippo@xxxxxxxxxx>
> >>> Cc: Jason Gunthorpe <jgg@xxxxxxxx>
> >>> Cc: Peter Huewe <peterhuewe@xxxxxx>
> >>> Cc: James Bottomley <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx>
> >>> Cc: Alexander Steffen <Alexander.Steffen@xxxxxxxxxxxx>
> >>> Cc: keyrings@xxxxxxxxxxxxxxx
> >>> Cc: linux-doc@xxxxxxxxxxxxxxx
> >>> Cc: linux-kernel@xxxxxxxxxxxxxxx
> >>> Cc: linux-integrity@xxxxxxxxxxxxxxx
> >>> Cc: Randy Dunlap <rdunlap@xxxxxxxxxxxxx>
> >>> Signed-off-by: Jarkko Sakkinen <jarkko@xxxxxxxxxx>
> >>> ---
> >>> v2:
> >>> - Fixed errors reported by Randy:
> >>>     https://lore.kernel.org/all/aed28265-d677-491a-a045-24b351854b24@xxxxxxxxxxxxx/
> >>> - 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.


FIFO interface is what is  used in the spec so I'll stick to that.

> > 
> >>
> >>> +
> >>> +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.

Oops, true! I'll fix this part thanks, had a blind spot :-)

Will fix for v3.

BR, Jarkko





[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux