Re: [PATCH v2] tpm: Factor out common startup code

From: Jarkko Sakkinen
Date: Thu May 19 2016 - 05:07:26 EST


On Wed, May 18, 2016 at 11:13:20AM -0600, Jason Gunthorpe wrote:
> On Wed, May 18, 2016 at 12:59:24PM +0300, Jarkko Sakkinen wrote:
> > On Tue, May 17, 2016 at 10:53:04AM -0600, Jason Gunthorpe wrote:
> > > On Tue, May 17, 2016 at 07:15:57AM +0300, Jarkko Sakkinen wrote:
> > > > On Mon, May 16, 2016 at 12:25:47PM -0600, Jason Gunthorpe wrote:
> > > > > Provide some flags in tpm_class_ops to allow drivers to opt-in to the
> > > > > common startup sequence. This is the sequence used by tpm_tis and
> > > > > tpm_crb.
> > > > >
> > > > > All drivers should set this flag.
> > > >
> > > > The commit message should be a much much more verbose I cannot include
> > > > this without a better explanation. Please update this for the next
> > > > revision.
> > >
> > > What more description do you want to see?
> >
> > It is lacking a lot of relevant information:
> >
> > * It should explain what you mean by startup sequence".
> > * It should describe the constant TPM_OPS_AUTO_STARTUP
> > * It should explain what drivers are doing at the moment (before
> > this feature).
> > * It should explain what is the benefit for different HW drivers
> > after applying this patch.
> > * It should explain why you call the executed sequence "automatic"
> > and also use the word "standard". Yeah, I didn't understand this,
> > this not me being picky. Maybe it should be DEFAULT_STARTUP??
>
> Well, use something like this then. You can edit descriptions to your
> liking when you apply the patch, FWIW.
>
> tpm: Factor out common startup code
>
> The TCG standard startup sequence (get timeouts, tpm startup, etc) for
> TPM and TPM2 chips is being open coded in many drivers, move it into
> the core code.
>
> tpm_tis and tpm_crb are used as the basis for the core code
> implementation and the easy drivers are converted. In the process
> several small drivers bugs relating to error handling this flow
> are fixed.
>
> For now the flag TPM_OPS_AUTO_STARTUP is optional to allow a staged
> driver roll out, but ultimately all drivers should use this flow and
> the flag removed. Some drivers still do not implement the startup
> sequence at all and will need to be tested with it enabled.

This is so much better! Thank you.

I can always edit a description but I do not want completely rewrite
them :)

/Jarkko