Re: [PATCH] tpm_tis: use default timeout value if chip reports it as zero

From: Jarkko Sakkinen
Date: Wed Jan 25 2017 - 15:09:51 EST


On Tue, Jan 24, 2017 at 02:42:29PM +0100, Maciej S. Szmigiero wrote:
> On 24.01.2017 13:01, Jarkko Sakkinen wrote:
> > On Mon, Jan 23, 2017 at 06:23:55PM +0100, Maciej S. Szmigiero wrote:
> >> On 16.01.2017 17:39, Jarkko Sakkinen wrote:
> >>> On Mon, Jan 16, 2017 at 03:58:26PM +0100, Maciej S. Szmigiero wrote:
> >>>> On 16.01.2017 14:55, Jarkko Sakkinen wrote:
> >>>>> On Mon, Jan 16, 2017 at 03:46:12PM +0200, Jarkko Sakkinen wrote:
> >>>>>> On Mon, Jan 16, 2017 at 11:42:02AM +0200, Jarkko Sakkinen wrote:
> >>>>>>> On Fri, Jan 13, 2017 at 10:37:00PM +0100, Maciej S. Szmigiero wrote:
> >>>>>>>> Since commit 1107d065fdf1 ("tpm_tis: Introduce intermediate layer for TPM
> >>>>>>>> access") Atmel 3203 TPM on ThinkPad X61S (TPM firmware version 13.9) no
> >>>>>>>> longer works.
> >>>>>>>> The initialization proceeds fine until we get and start using chip-reported
> >>>>>>>> timeouts - and the chip reports C and D timeouts of zero.
> >>>>>>>>
> >>>>>>>> It turns out that until commit 8e54caf407b98e ("tpm: Provide a generic
> >>>>>>>> means to override the chip returned timeouts") we had actually let default
> >>>>>>>> timeout values remain in this case, so let's bring back this behavior to
> >>>>>>>> make chips like Atmel 3203 work again.
> >>>>>>>>
> >>>>>>>> Use a common code that was introduced by that commit so a warning is
> >>>>>>>> printed in this case and /sys/class/tpm/tpm*/timeouts correctly says the
> >>>>>>>> timeouts aren't chip-original.
> >>>>>>>>
> >>>>>>>> Signed-off-by: Maciej S. Szmigiero <mail@xxxxxxxxxxxxxxxxxxxxx>
> >>>>>>>>
> >>>>>>>> Fixes: 1107d065fdf1 ("tpm_tis: Introduce intermediate layer for TPM access")
> >>>>>>>> Cc: stable@xxxxxxxxxxxxxxx
> >>>>>>>
> >>>>>>> Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxxxxxxxx>
> >>>>>>
> >>>>>> It's now applied to my master branch so if someone wants to
> >>>>>> test it, it should be fairly easy.
> >>>>>
> >>>>> And I decided to squash the rename commit to it.
> >>>>
> >>>> Wouldn't it be better to squash the rename commit into "fix iTPM probe via
> >>>> probe_itpm() function" patch (if it isn't too late), since they touch the
> >>>> same functionality?
> >>>
> >>> It can be renamed, modified and even dropped as long as it is in my
> >>> master branch and I haven't sent pull request to James Morris.
> >>
> >> I see that "fix iTPM probe via probe_itpm() function" patch isn't present
> >> in your pull request for 4.11.
> >>
> >> What I meant in previous message was that you squashed and "rename
> >> TPM_TIS_ITPM_POSSIBLE to TPM_TIS_ITPM_WORKAROUND" patch into "use default timeout
> >> value if chip reports it as zero" patch while it was logically connected with
> >> "fix iTPM probe via probe_itpm() function" patch instead (which now isn't present
> >> at all in the tree).
> >> Sorry if it wasn't 100% clear.
> >
> > I see.
> >
> > I'll probably send later on pull request with fixes for release content
> > I can include that commit into that pull request. Does that work for
> > you?
>
> Yes, it would be fine, thanks.

It's now applied and pushed.

/Jarkko