linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: josephl@nvidia.com (Joseph Lo)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH V2 2/6] ARM: tegra20: cpuidle: add powered-down state for secondary CPU
Date: Wed, 16 Jan 2013 11:17:17 +0800	[thread overview]
Message-ID: <1358306237.8826.7.camel@jlo-ubuntu-64.nvidia.com> (raw)
In-Reply-To: <20130115113427.GC26424@e102568-lin.cambridge.arm.com>

On Tue, 2013-01-15 at 19:34 +0800, Lorenzo Pieralisi wrote:
> On Tue, Jan 15, 2013 at 03:00:44AM +0000, Joseph Lo wrote:
> > On Fri, 2013-01-11 at 20:24 +0800, Lorenzo Pieralisi wrote:
> > > On Fri, Jan 11, 2013 at 07:20:29AM +0000, Joseph Lo wrote:
> > > > On Wed, 2012-12-05 at 18:50 +0800, Lorenzo Pieralisi wrote:
> > > > > On Wed, Dec 05, 2012 at 10:01:49AM +0000, Joseph Lo wrote:
> > > > You did mention there is an ARM generic locking scheme for MMU/coherency
> > > > off case before. Do you mean the patch below?
> > > > 
> > > > https://patchwork.kernel.org/patch/1957911/
> > > > https://patchwork.kernel.org/patch/1957901/
> > > 
> > > Those are used for first-man election when multiple CPUs come out of
> > > idle at once.
> > > 
> > > You should have a look at the entire series and in particular:
> > > 
> > > https://patchwork.kernel.org/patch/1957891/
> > > https://patchwork.kernel.org/patch/1957951/
> > > 
> > > > I gave it a review today. Looks it can't fit our usage for CPU idle
> > > > powered-down mode on Tegra20.
> > > > 
> > > > The generic mechanism only can be used when CPUs in non coherent world.
> > > > But our usage needs the mechanism could be used in both coherent and non
> > > > coherent case. OK. The case is we need to sync the status about the CPU1
> > > > was ready to power down. In this case, the CPU0 is still in coherent
> > > > world but the CPU1 isn't. So we need the locking scheme could be still
> > > > safe in this situation.
> > > 
> > > I know, I implemented something of that sort for an A9 based development
> > > platform, that's why I pointed you to this new patchset.
> > > 
> > > Have a look at the series, it should do what you want.
> > > 
> > Hi Lorenzo,
> > 
> > May I upstream this stuff first? I can promise to you I will re-work a
> > common CPUs and cluster power sync wrappers (platform_power_ops) for all
> > Tegra series that based on the generic framework. Because we didn't have
> > this work in Tegra tree yet and we indeed need it for supporting cluster
> > power down and switching.
> > 
> > But it need lots of time for re-work, testing and verification. And I
> > have lots of patches that need the function of cpu suspend that be
> > introduced in this patch series to support platform suspend for Tegra.
> > 
> > So I am asking the permission here for upstream this series first and I
> > will continue the job to come out a common CPUs and cluster power sync
> > wrappers for Tegra that we indeed need it to support cluster power down
> > and switching.
> 
> I understand that and you should not ask me permission :-) since I am
> not a maintainer. I just wanted to save you some effort, you will end
> up rewriting the whole thing anyway IMHO and I think the power API would
> have saved you time if it were there before.
> 
I think we are always taking care the comments from the community. And
it's really worth for us to reconsider the code design and re-use the
common framework to reduce the effort.
> 
> If you need help to integrate the power API please do ask questions.
> 
Thanks again.

Joseph

  reply	other threads:[~2013-01-16  3:17 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-12-05 10:01 [PATCH V2 0/6] ARM: tegra20: cpuidle: add power-down state Joseph Lo
2012-12-05 10:01 ` [PATCH V2 1/6] ARM: tegra: add pending SGI checking API Joseph Lo
2012-12-05 22:09   ` Stephen Warren
2012-12-06  7:04     ` Joseph Lo
2012-12-06 18:52       ` Stephen Warren
2012-12-05 10:01 ` [PATCH V2 2/6] ARM: tegra20: cpuidle: add powered-down state for secondary CPU Joseph Lo
2012-12-05 10:50   ` Lorenzo Pieralisi
2012-12-06  8:25     ` Joseph Lo
2012-12-06 18:56       ` Stephen Warren
2013-01-11  7:20     ` Joseph Lo
2013-01-11 12:24       ` Lorenzo Pieralisi
2013-01-15  3:00         ` Joseph Lo
2013-01-15 11:34           ` Lorenzo Pieralisi
2013-01-16  3:17             ` Joseph Lo [this message]
2013-01-12 17:33       ` Nicolas Pitre
2012-12-05 22:18   ` Stephen Warren
2012-12-06  7:22     ` Joseph Lo
2012-12-06 18:59       ` Stephen Warren
2012-12-05 10:01 ` [PATCH V2 3/6] ARM: tegra20: clocks: add CPU low-power function into tegra_cpu_car_ops Joseph Lo
2012-12-05 10:01 ` [PATCH V2 4/6] ARM: tegra20: flowctrl: add support for cpu_suspend_enter/exit Joseph Lo
2012-12-05 10:01 ` [PATCH V2 5/6] ARM: tegra20: cpuidle: add powered-down state for CPU0 Joseph Lo
2012-12-05 10:01 ` [PATCH V2 6/6] ARM: tegra20: cpuidle: apply coupled cpuidle for powered-down mode Joseph Lo
2012-12-05 10:01 ` Joseph Lo
2012-12-05 10:10   ` Joseph Lo
2012-12-06 11:03     ` Grant Likely
2012-12-05 10:01 ` Joseph Lo
2012-12-05 10:11   ` Joseph Lo

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=1358306237.8826.7.camel@jlo-ubuntu-64.nvidia.com \
    --to=josephl@nvidia.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).