[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170725201758.230de968@kitsune.suse.cz>
Date: Tue, 25 Jul 2017 20:17:58 +0200
From: Michal Suchánek <msuchanek@...e.de>
To: James Bottomley <jejb@...ux.vnet.ibm.com>
Cc: Christophe Ricard <christophe.ricard@...il.com>,
linux-kernel@...r.kernel.org, tpmdd-devel@...ts.sourceforge.net,
Jarkko Sakkinen <jarkko.sakkinen@...ux.intel.com>,
apronin@...omium.org
Subject: Re: [tpmdd-devel] tpm: read burstcount from TPM_STS in one 32-bit
transaction
On Tue, 25 Jul 2017 10:36:11 -0700
James Bottomley <jejb@...ux.vnet.ibm.com> wrote:
> On Tue, 2017-07-25 at 15:04 +0200, Michal Suchánek wrote:
> > Hello,
> >
> > in commit 9754d45e9970 ("tpm: read burstcount from TPM_STS in one
> > 32-bit transaction") you change reading of two 8-bit values to one
> > 32bit read. This is obviously wrong wrt endianess unless the
> > underlying tpm_tis_read32 does endian conversion.
>
> Some of the bus read primitives do do endianness conversions. The
> problem is with the SPI attachment, which has unclear endianness. A
> standard PCI bus attachment uses ioread32() which automatically
> transforms from a little endian bus to the cpu endianness, however SPI
> is forced to transfer the bytes one at a time over the serial bus and
> then transform. The assumption seems to be that the TIS TPM is
> replying in little endian format when SPI connected.
>
Yes, that makes sense.
Thanks for clarification.
Michal
Powered by blists - more mailing lists