public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Scott Wood <scottwood@freescale.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v2] powerpc/fsl: support low power boot for e500 and later
Date: Wed, 12 Aug 2015 00:17:35 -0500	[thread overview]
Message-ID: <1439356655.4099.73.camel@freescale.com> (raw)
In-Reply-To: <SN1PR0301MB1616DBBE774D362C9E28364C9D7E0@SN1PR0301MB1616.namprd03.prod.outlook.com>

On Wed, 2015-08-12 at 00:15 -0500, Wang Dongsheng-B40534 wrote:
> Hi Scott,
> 
> > -----Original Message-----
> > From: Wood Scott-B07421
> > Sent: Wednesday, August 12, 2015 12:55 PM
> > To: Wang Dongsheng-B40534
> > Cc: Sun York-R58495; u-boot at lists.denx.de
> > Subject: Re: [PATCH v2] powerpc/fsl: support low power boot for e500 and 
> > later
> > 
> > On Tue, 2015-08-11 at 15:15 +0800, Dongsheng Wang wrote:
> > > From: Wang Dongsheng <dongsheng.wang@freescale.com>
> > > 
> > > low power boot means u-boot will put non-boot cpus into a low power
> > > status. Non-boot cpus don't need any more spin wait. e500, e500v2 will
> > > going to DOZE status. e500mc, e5500, e6500 will going to PW10 state.
> > > 
> > > e500/e500v2 will be kicked up by MPIC-IPI, e500mc later will be kicked 
> > > up
> > > by doorbell.
> > > 
> > > This feature tested on:
> > > POWER UP TEST:
> > > P1022DS(e500v2),96k times.
> > > P4080(e500mc),  110k times.
> > > T1024(e5500),   83k times.
> > > T4240(e6500),   150k times.
> > > 
> > > CPU HOTPLUG TEST:
> > > P1022DS(e500v2),1.4 million times.
> > > P4080(e500mc),  1.8 million times.
> > > T1024(e5500),   1.3 million times.
> > > T4240(e6500),   1.1 million times.
> > > 
> > > Signed-off-by: Wang Dongsheng <dongsheng.wang@freescale.com>
> > > ---
> > > *V2*
> > > Add:
> > >     Add Config option to select Boot Method, Boot by SPIN TABLE or Boot 
> > > By
> > >     LOW POWER.
> > >     The default boot method is SPIN TABLE.
> > > 
> > > Modify:
> > >     Rebase code to compatible with spin.
> > > 
> > > Delete:
> > >     Delete e6500rev2 PW20 state.
> > > 
> > > The default boot method SPIN TABLE has tested on last kernel. The low 
> > > power
> > > boot
> > > method need add a kernel patch to support. Now PPC smp cpu boot, cpu
> > > hotplug,
> > > sleep, and deep sleep patches is rebasing for upstream, after ppc smp 
> > > cpu
> > > boot
> > > upstreamed i will commit a kernel patch to complete support low power 
> > > boot
> > > method.
> > > 
> > > diff --git a/arch/powerpc/cpu/mpc85xx/Kconfig
> > > b/arch/powerpc/cpu/mpc85xx/Kconfig
> > > index 3e8d0b1..9c81d97 100644
> > > --- a/arch/powerpc/cpu/mpc85xx/Kconfig
> > > +++ b/arch/powerpc/cpu/mpc85xx/Kconfig
> > > @@ -199,3 +199,26 @@ source "board/xes/xpedite550x/Kconfig"
> > >  source "board/Arcturus/ucp1020/Kconfig"
> > > 
> > >  endmenu
> > > +
> > > +menu "mpc85xx CPU Boot Method"
> > > +     depends on MPC85xx
> > > +
> > > +choice
> > > +     prompt "Boot select"
> > > +     default BOOT_BY_SPIN
> > > +
> > > +config       BOOT_BY_SPIN
> > > +     bool "Spin boot cpus"
> > > +     help
> > > +       Non-boot cpus will be falled in a spin state when U-boot
> > > +       started up.
> > > +
> > > +config       BOOT_BY_LOW_POWER
> > > +     bool "Low power boot cpus"
> > > +     help
> > > +       Non-boot cpus will be falled in a low power state when U-boot
> > > +       started up.
> > > +
> > > +endchoice
> > 
> > I was going to say that this could be made dynamically configurable by 
> > always
> > putting the cores into low power mode, and then waking them at bootm time 
> > if
> > the spin table is chosen in the environment -- but if we can do that, we 
> > can
> > also just leave the secondary cpus in holdoff until bootm.
> > 
> > At that point, we might as well just always use the spin table because the
> > time from bootm to the OS releasing the secondaries should be small.
> > 
> Yes, if all of cpus will enable in kernel. But in some cases we do not 
> enable all
> the CPU in the kernel, so we need to push them to low power state.

If you don't plan to release a CPU in the OS, tell U-Boot to keep it disabled.

-Scott

  reply	other threads:[~2015-08-12  5:17 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-11  7:15 [U-Boot] [PATCH v2] powerpc/fsl: support low power boot for e500 and later Dongsheng Wang
2015-08-12  4:54 ` Scott Wood
2015-08-12  5:15   ` Wang Dongsheng
2015-08-12  5:17     ` Scott Wood [this message]
2015-08-12  5:50       ` Wang Dongsheng
2015-08-12  5:59         ` Scott Wood

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=1439356655.4099.73.camel@freescale.com \
    --to=scottwood@freescale.com \
    --cc=u-boot@lists.denx.de \
    /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