[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190821175846.ewcrpam44fdm27ya@linux.intel.com>
Date: Wed, 21 Aug 2019 20:58:46 +0300
From: Jarkko Sakkinen <jarkko.sakkinen@...ux.intel.com>
To: Stephen Boyd <swboyd@...omium.org>
Cc: Peter Huewe <peterhuewe@....de>, linux-kernel@...r.kernel.org,
linux-integrity@...r.kernel.org,
Andrey Pronin <apronin@...omium.org>,
Duncan Laurie <dlaurie@...omium.org>,
Jason Gunthorpe <jgg@...pe.ca>, Arnd Bergmann <arnd@...db.de>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Guenter Roeck <groeck@...omium.org>,
Alexander Steffen <Alexander.Steffen@...ineon.com>
Subject: Re: [PATCH v4 4/6] tpm: tpm_tis_spi: Export functionality to other
drivers
On Mon, Aug 19, 2019 at 10:10:08AM -0700, Stephen Boyd wrote:
> Quoting Jarkko Sakkinen (2019-08-19 09:40:05)
> > On Mon, Aug 12, 2019 at 03:36:20PM -0700, Stephen Boyd wrote:
> > > Export a new function, tpm_tis_spi_init(), and the associated
> > > read/write/transfer APIs so that we can create variant drivers based on
> > > the core functionality of this TPM SPI driver. Variant drivers can wrap
> > > the tpm_tis_spi_phy struct with their own struct and override the
> > > behavior of tpm_tis_spi_transfer() by supplying their own flow control
> > > and pre-transfer hooks. This shares the most code between the core
> > > driver and any variants that want to override certain behavior without
> > > cluttering the core driver.
> >
> > I think this is adding way too much complexity for the purpose. We
> > definitely do want this three layer architecture here.
> >
> > Instead there should be a single tpm_tis_spi driver that dynamically
> > either TCG or CR50. I rather take some extra bytes in the LKM than
> > the added complexity.
> >
>
> Ok. I had that patch originally[1]. Do you want me to resend that patch
> and start review over from there?
>
> [1] https://lkml.kernel.org/r/5d2f955d.1c69fb81.35877.7018@mx.google.com
What if:
1. You mostly use this solution but have it as a separate source module
only.
2. Use TPM_IS_CR50 only once to bind the callbacks.
/Jarkko
Powered by blists - more mailing lists