From: Jason Gunthorpe <jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
To: "Winkler, Tomas" <tomas.winkler-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Cc: "tpmdd-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org"
<tpmdd-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>
Subject: Re: [PATCH 1/3] tpm/tpm_crb: implement tpm crb idle state
Date: Wed, 7 Sep 2016 15:55:02 -0600 [thread overview]
Message-ID: <20160907215502.GB29666@obsidianresearch.com> (raw)
In-Reply-To: <5B8DA87D05A7694D9FA63FD143655C1B542CBABC-Jy8z56yoSI8MvF1YICWikbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
On Wed, Sep 07, 2016 at 09:14:35PM +0000, Winkler, Tomas wrote:
> > Jarkko and I have been talking about higher level locking (eg to sequence a
> > series of operations) it might make more sense to move the power
> > management up to that layer.
>
> I'm not sure this has much benefit, this would be much more error prone and
> would be unnecessary more complicated than just protecting the low API in one place.
Well, we will have the API, so it shouldn't be much risk. I guess it
can change later
> Yes, of course I've considered runtime_pm but I've pulled from using
> it for now is that it has many side effects that need to be mapped
> first, second because of the HW bug we cannot safely detect if the
> device is in idle state so some more complicated book keeping would
> have to be implemented. Last we need a simple solution to backport.
So are you going to send a runtime_pm patch too? What is the downside
to the idle state that requires it to be controlled by the host and
not internally?
> > > +static int __crb_go_idle(struct device *dev, struct crb_priv *priv) {
> > > +static int crb_go_idle(struct tpm_chip *chip) {
> > > + struct crb_priv *priv = dev_get_drvdata(&chip->dev);
> > > +
> > > + return __crb_go_idle(&chip->dev, priv);
> >
> > Hurm, these ugly wrappers should probably be part of the next patch, since
> > that is what needs them.
>
> You are right it missing a bit context if you're looking into single
> patch, but the paradigm is used widely in the kernel.
The widely used paradigm has the wrapper actually do something useful,
eg lock/unlock. This does nothing useful until you realize it is
needed because you don't have a chip yet in crb_map_io due to the work
around. Which begs the question if this is even the right approach at all,
or should be chip be allocated sooner (as tpm_tis does)..
So I'd rather see it in the next patch, and I'd rather not see it at
all, move the chip allocation up instead..
Jason
------------------------------------------------------------------------------
next prev parent reply other threads:[~2016-09-07 21:55 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-07 11:32 [PATCH 0/3] tpm/tpm_crb: implement power management Tomas Winkler
[not found] ` <1473247953-24617-1-git-send-email-tomas.winkler-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-09-07 11:32 ` [PATCH 1/3] tpm/tpm_crb: implement tpm crb idle state Tomas Winkler
[not found] ` <1473247953-24617-2-git-send-email-tomas.winkler-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-09-07 16:15 ` Jason Gunthorpe
[not found] ` <20160907161548.GA4791-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-09-07 21:14 ` Winkler, Tomas
[not found] ` <5B8DA87D05A7694D9FA63FD143655C1B542CBABC-Jy8z56yoSI8MvF1YICWikbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2016-09-07 21:55 ` Jason Gunthorpe [this message]
[not found] ` <20160907215502.GB29666-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-09-07 22:17 ` Winkler, Tomas
[not found] ` <5B8DA87D05A7694D9FA63FD143655C1B542CBB41-Jy8z56yoSI8MvF1YICWikbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2016-09-07 22:19 ` Jason Gunthorpe
[not found] ` <20160907221908.GA30192-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-09-07 22:28 ` Winkler, Tomas
[not found] ` <5B8DA87D05A7694D9FA63FD143655C1B542CBB6A-Jy8z56yoSI8MvF1YICWikbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2016-09-07 22:39 ` Jason Gunthorpe
[not found] ` <20160907223934.GA32261-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-09-07 23:16 ` Winkler, Tomas
2016-09-08 10:35 ` Jarkko Sakkinen
2016-09-08 11:11 ` Jarkko Sakkinen
[not found] ` <20160908111115.GD4712-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-09-08 11:17 ` Jarkko Sakkinen
[not found] ` <20160908111745.GF4712-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-09-08 12:35 ` Winkler, Tomas
[not found] ` <5B8DA87D05A7694D9FA63FD143655C1B542CC2AC-Jy8z56yoSI8MvF1YICWikbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2016-09-08 14:06 ` Jarkko Sakkinen
2016-09-07 11:32 ` [PATCH 2/3] tmp/tpm_crb: fix Intel PTT hw bug during " Tomas Winkler
[not found] ` <1473247953-24617-3-git-send-email-tomas.winkler-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-09-07 16:17 ` Jason Gunthorpe
[not found] ` <20160907161744.GB4791-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-09-07 21:21 ` Winkler, Tomas
[not found] ` <5B8DA87D05A7694D9FA63FD143655C1B542CBAD4-Jy8z56yoSI8MvF1YICWikbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2016-09-07 21:44 ` Jason Gunthorpe
[not found] ` <20160907214448.GA29666-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-09-07 21:52 ` Winkler, Tomas
[not found] ` <5B8DA87D05A7694D9FA63FD143655C1B542CBB13-Jy8z56yoSI8MvF1YICWikbfspsVTdybXVpNB7YpNyf8@public.gmane.org>
2016-09-07 21:55 ` Jason Gunthorpe
2016-09-08 11:14 ` Jarkko Sakkinen
[not found] ` <20160908111458.GE4712-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-09-08 13:44 ` Jarkko Sakkinen
2016-09-07 11:32 ` [PATCH 3/3] tpm/tpm_crb: cache cmd_size register value Tomas Winkler
[not found] ` <1473247953-24617-4-git-send-email-tomas.winkler-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-09-08 11:00 ` Jarkko Sakkinen
[not found] ` <20160908110034.GC4712-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-09-08 13:42 ` Jarkko Sakkinen
2016-09-07 15:19 ` [PATCH 0/3] tpm/tpm_crb: implement power management Jarkko Sakkinen
-- strict thread matches above, loose matches on Subject: below --
2016-09-07 10:25 Tomas Winkler
[not found] ` <1473243950-23579-1-git-send-email-tomas.winkler-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2016-09-07 10:25 ` [PATCH 1/3] tpm/tpm_crb: implement tpm crb idle state Tomas Winkler
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160907215502.GB29666@obsidianresearch.com \
--to=jgunthorpe-epgobjl8dl3ta4ec/59zmfatqe2ktcn/@public.gmane.org \
--cc=tomas.winkler-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=tpmdd-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).