From: Tony Lindgren <tony@atomide.com>
To: Linus Walleij <linus.walleij@linaro.org>
Cc: Alexandre Courbot <gnurou@gmail.com>,
Grygorii Strashko <grygorii.strashko@ti.com>,
Keerthy <j-keerthy@ti.com>, Tero Kristo <t-kristo@ti.com>,
"open list:GPIO SUBSYSTEM" <linux-gpio@vger.kernel.org>,
Linux-OMAP <linux-omap@vger.kernel.org>,
Linux ARM <linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH] gpio: omap: Add level wakeup handling for omap4 based SoCs
Date: Tue, 18 Sep 2018 17:28:41 -0700 [thread overview]
Message-ID: <20180919002841.GN5662@atomide.com> (raw)
In-Reply-To: <CACRpkdbXuvWyp+UzxAjKo85bTBvdFuYXMt+wo56eN9KWOcLW+g@mail.gmail.com>
* Linus Walleij <linus.walleij@linaro.org> [180918 23:33]:
> On Mon, Sep 10, 2018 at 1:06 PM Tony Lindgren <tony@atomide.com> wrote:
>
> > I noticed that unlike omap2 and 3 based SoCs, omap4 based SoCs keep
> > the GPIO clocks enabled for GPIO level interrupts with wakeup enabled.
> > This blocks deeper idle states as the whole domain will stay busy.
> >
> > The GPIO clock seems to stay enabled if the wakeup register is enabled
> > and a level interrupt is triggered. In that case the only way to have
> > the GPIO module idle is to reset it. It is possible this has gone
> > unnoticed with OSWR (Open SWitch Retention) and off mode during idle
> > resetting GPIO context most GPIO instances in the earlier Android trees
> > for example.
> >
> > Looks like the way to deal with this is to have omap4 based SoCs
> > only set wake for the duration of idle and clear level registers for
> > the idle. With level interrupts we can do this as the level interrupt
> > from device will be still there on resume.
> >
> > I've taken the long path to fixing this to avoid yet more hard to
> > read code. I've set up a quirks flag, and a struct for function
> > pointers so we can use these to clean up other quirk handling easier
> > in the later patches. The current level quirk handling is moved to
> > the new functions.
> >
> > Cc: Grygorii Strashko <grygorii.strashko@ti.com>
> > Cc: Keerthy <j-keerthy@ti.com>
> > Cc: Tero Kristo <t-kristo@ti.com>
> > Signed-off-by: Tony Lindgren <tony@atomide.com>
>
> Do we have a conclusion on this? Shall I apply the patch on
> an immutable branch and pull into next, or do you folks need
> more time?
Thanks for checking, let's wait on this. There are few more things
I still need to check and test before reposting.
Regards,
Tony
WARNING: multiple messages have this Message-ID (diff)
From: tony@atomide.com (Tony Lindgren)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] gpio: omap: Add level wakeup handling for omap4 based SoCs
Date: Tue, 18 Sep 2018 17:28:41 -0700 [thread overview]
Message-ID: <20180919002841.GN5662@atomide.com> (raw)
In-Reply-To: <CACRpkdbXuvWyp+UzxAjKo85bTBvdFuYXMt+wo56eN9KWOcLW+g@mail.gmail.com>
* Linus Walleij <linus.walleij@linaro.org> [180918 23:33]:
> On Mon, Sep 10, 2018 at 1:06 PM Tony Lindgren <tony@atomide.com> wrote:
>
> > I noticed that unlike omap2 and 3 based SoCs, omap4 based SoCs keep
> > the GPIO clocks enabled for GPIO level interrupts with wakeup enabled.
> > This blocks deeper idle states as the whole domain will stay busy.
> >
> > The GPIO clock seems to stay enabled if the wakeup register is enabled
> > and a level interrupt is triggered. In that case the only way to have
> > the GPIO module idle is to reset it. It is possible this has gone
> > unnoticed with OSWR (Open SWitch Retention) and off mode during idle
> > resetting GPIO context most GPIO instances in the earlier Android trees
> > for example.
> >
> > Looks like the way to deal with this is to have omap4 based SoCs
> > only set wake for the duration of idle and clear level registers for
> > the idle. With level interrupts we can do this as the level interrupt
> > from device will be still there on resume.
> >
> > I've taken the long path to fixing this to avoid yet more hard to
> > read code. I've set up a quirks flag, and a struct for function
> > pointers so we can use these to clean up other quirk handling easier
> > in the later patches. The current level quirk handling is moved to
> > the new functions.
> >
> > Cc: Grygorii Strashko <grygorii.strashko@ti.com>
> > Cc: Keerthy <j-keerthy@ti.com>
> > Cc: Tero Kristo <t-kristo@ti.com>
> > Signed-off-by: Tony Lindgren <tony@atomide.com>
>
> Do we have a conclusion on this? Shall I apply the patch on
> an immutable branch and pull into next, or do you folks need
> more time?
Thanks for checking, let's wait on this. There are few more things
I still need to check and test before reposting.
Regards,
Tony
next prev parent reply other threads:[~2018-09-19 0:28 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-09-10 20:06 [PATCH] gpio: omap: Add level wakeup handling for omap4 based SoCs Tony Lindgren
2018-09-10 20:06 ` Tony Lindgren
2018-09-11 16:58 ` Grygorii Strashko
2018-09-11 16:58 ` Grygorii Strashko
2018-09-11 18:24 ` Tony Lindgren
2018-09-11 18:24 ` Tony Lindgren
2018-09-12 0:23 ` Grygorii Strashko
2018-09-12 0:23 ` Grygorii Strashko
2018-09-12 0:42 ` Tony Lindgren
2018-09-12 0:42 ` Tony Lindgren
2018-09-12 16:08 ` Grygorii Strashko
2018-09-12 16:08 ` Grygorii Strashko
2018-09-12 17:38 ` Tony Lindgren
2018-09-12 17:38 ` Tony Lindgren
2018-09-11 18:41 ` Tony Lindgren
2018-09-11 18:41 ` Tony Lindgren
2018-09-12 17:09 ` Tony Lindgren
2018-09-12 17:09 ` Tony Lindgren
2018-09-18 23:28 ` Linus Walleij
2018-09-18 23:28 ` Linus Walleij
2018-09-19 0:28 ` Tony Lindgren [this message]
2018-09-19 0:28 ` Tony Lindgren
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=20180919002841.GN5662@atomide.com \
--to=tony@atomide.com \
--cc=gnurou@gmail.com \
--cc=grygorii.strashko@ti.com \
--cc=j-keerthy@ti.com \
--cc=linus.walleij@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=t-kristo@ti.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.