From: santosh.shilimkar@ti.com (Santosh Shilimkar)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v2 1/9] omap4: powerdomain: Add supported INACTIVE power state
Date: Tue, 8 Feb 2011 12:11:38 +0530 [thread overview]
Message-ID: <eeb0b3adcb43ef0e79ab2ef160f2090c@mail.gmail.com> (raw)
In-Reply-To: <alpine.DEB.2.00.1102071801540.21991@utopia.booyaka.com>
> -----Original Message-----
> From: Paul Walmsley [mailto:paul at pwsan.com]
> Sent: Tuesday, February 08, 2011 7:02 AM
> To: Santosh Shilimkar
> Cc: linux-omap at vger.kernel.org; Kevin Hilman; Benoit Cousson;
> Rajendra Nayak; linux-arm-kernel at lists.infradead.org
> Subject: RE: [PATCH v2 1/9] omap4: powerdomain: Add supported
> INACTIVE power state
>
> On Mon, 7 Feb 2011, Santosh Shilimkar wrote:
>
> > > -----Original Message-----
> > > From: Paul Walmsley [mailto:paul at pwsan.com]
> > > Sent: Monday, February 07, 2011 2:12 AM
> > >
> > > Continuing the discussion here:
> > >
> > > http://www.mail-archive.com/linux-
> > > omap at vger.kernel.org/msg43509.html
> > >
> > > 1. It appears that the OMAP4 powerdomain ON-ACTIVE state is a
> new
> > > state
> > > for OMAP4, and does not exist as such on previous chips (unless
> the
> > > PRM_VOLTCTRL.AUTO_* bits are all disabled)
> > >
> > Actually it's not new state but more of convention change. ON-
> ACTIVE
> > is like ON in OMAP3.
>
> Hmm, based on our earlier list mails, that seems confusing. Setting
> an
> OMAP3 powerdomain next-power-state to 'ON' in OMAP3 allows voltage
> domain
> transitions to the SLEEP level. But setting an OMAP4 powerdomain
> next-power-state to 'ON-ACTIVE' does not allow voltage domain
> transitions to the SLEEP level. And setting an OMAP4 powerdomain
> next-power-state to 'ON-INACTIVE' does allow voltage domain
> transitions to
> the SLEEP level. Is that correct?
>
You have point. And you are absolutely correct.
> If that's correct, then OMAP4 ON-ACTIVE is a functionally new
> powerdomain
> next-power-state setting, and OMAP4 ON-INACTIVE is the same state as
> OMAP3
> ON. Unless there's something obvious that I'm missing?
>
> > > 2. It also appears that the OMAP4 powerdomain ON-INACTIVE state
> > > is equivalent to the OMAP3 powerdomain ON state (again, assuming
> > > that the
> > > PRM_VOLTCTRL.AUTO_SLEEP bit is set on OMAP3).
> > >
> > This is correct.
> >
> > > Could you please comment on whether these statements are true or
> > > false?
> > >
> >
> > Just to summarise my undertsnaing of this here.
> > On OMAP3 too, we had possibility of being in a one of the
> > Two state when programmed to PD ON state.
> > ON-ACTIVE or ON-INACTIVE. The PD status registers just
> > says INACTIVE or ON based on the clodomains states within PD.
>
> Right, but when 'ON' is written into an OMAP3 powerdomain's
> next-power-state bits, voltage domain transitions are allowed. So
> I'm
> just trying to confirm that OMAP3 ON state is functionally
> equivalent to
> the OMAP4 ON-INACTIVE state, and not functionally equivalent to the
> OMAP4
> ON-ACTIVE state.
>
Yep. This is indeed the case.
> We have to ensure that the core code-internal meaning of the (ON,
> INACTIVE, RET, OFF) states doesn't vary across SoC types. Otherwise
> "ON"
> on OMAP4 won't mean "ON" on OMAP3, and the goal is for the core code
> to be SoC-independent.
>
Agree.
> One way to do that would be to add a small mapping layer for the
> powerdomain set-next-power-state code to:
>
> - allow programming INACTIVE on OMAP3, by ensuring that, when all
> powerdomains in a voltage domain are in INACTIVE, that AUTO_SLEEP
> is set to 1, and then setting the hardware next-power-state to ON;
> and
>
> - allow programming ON on OMAP3, by ensuring that AUTO_SLEEP is set
> to 0, and setting the hardware next-power-state to ON.
>
> On OMAP4, presumably it wouldn't be needed to mess with the
> AUTO_SLEEP
> bit.
>
> Probably to make that work cleanly, either clockdomains or
> powerdomains
> would need to be associated with voltage domains; and some kind of
> counter
> would need to be implemented in the voltage domains to indicate when
> it is
> appropriate to write to the AUTO_SLEEP bit.
>
Sounds right approach.
Regards,
Santosh
next prev parent reply other threads:[~2011-02-08 6:41 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-02-04 9:58 [PATCH v2 0/9] omap4: prcm: Few dpll, clockdomain and powerdomain updates Santosh Shilimkar
2011-02-04 9:58 ` [PATCH v2 1/9] omap4: powerdomain: Add supported INACTIVE power state Santosh Shilimkar
2011-02-06 20:42 ` Paul Walmsley
2011-02-07 7:03 ` Santosh Shilimkar
2011-02-08 1:32 ` Paul Walmsley
2011-02-08 6:41 ` Santosh Shilimkar [this message]
2011-02-04 9:58 ` [PATCH v2 2/9] omap4: prcm: Fix the CPUx clockdomain offsets Santosh Shilimkar
2011-02-08 4:55 ` Paul Walmsley
2011-02-25 20:07 ` Paul Walmsley
2011-02-04 9:58 ` [PATCH v2 3/9] omap4: powerdomain: Use intended PWRSTS_* flags instead of values Santosh Shilimkar
2011-02-08 1:45 ` Paul Walmsley
2011-02-08 6:37 ` Santosh Shilimkar
2011-02-25 20:10 ` Paul Walmsley
2011-02-04 9:58 ` [PATCH v2 4/9] omap: clocks: Add checks to see if enable/disable ops are supported Santosh Shilimkar
2011-02-08 1:48 ` Paul Walmsley
2011-02-08 3:25 ` Rajendra Nayak
2011-02-04 9:59 ` [PATCH v2 5/9] omap: clocks: Add allow_idle/deny_idle support in clkops Santosh Shilimkar
2011-02-04 9:59 ` [PATCH v2 6/9] omap: dpll: Add allow_idle/deny_idle support for all DPLL's Santosh Shilimkar
2011-02-08 2:57 ` Paul Walmsley
2011-02-08 3:28 ` Rajendra Nayak
2011-02-08 3:40 ` Paul Walmsley
2011-02-08 4:17 ` Rajendra Nayak
2011-02-08 4:16 ` Paul Walmsley
2011-02-04 9:59 ` [PATCH v2 7/9] omap4: dpll: Add dpll api to control GATE_CTRL Santosh Shilimkar
2011-02-04 9:59 ` [PATCH v2 8/9] omap4: dpll: Enable auto gate control for all MX postdividers Santosh Shilimkar
2011-02-04 9:59 ` [PATCH v2 9/9] omap4: clockdomain: Fix the CPUx domain name Santosh Shilimkar
2011-02-08 4:58 ` Paul Walmsley
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=eeb0b3adcb43ef0e79ab2ef160f2090c@mail.gmail.com \
--to=santosh.shilimkar@ti.com \
--cc=linux-arm-kernel@lists.infradead.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).