[PATCH 2/3] ARM: smp_scu: enable SCU standby support

Shawn Guo shawn.guo at freescale.com
Mon Jul 21 02:27:04 PDT 2014


On Mon, Jul 21, 2014 at 09:51:50AM +0100, Will Deacon wrote:
> On Mon, Jul 21, 2014 at 08:45:54AM +0100, Shawn Guo wrote:
> > With SCU standby enabled, SCU CLK will be turned off when all processors
> > are in WFI mode.  And the clock will be turned on when any processor
> > leaves WFI mode.
> > 
> > This behavior should be preferable in terms of power efficiency of
> > system idle.  So let's set the SCU standby bit to enable the support in
> > function scu_enable().
> > 
> > Signed-off-by: Shawn Guo <shawn.guo at freescale.com>
> > ---
> >  arch/arm/kernel/smp_scu.c | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> > 
> > diff --git a/arch/arm/kernel/smp_scu.c b/arch/arm/kernel/smp_scu.c
> > index c947508f84e6..9f29d167d02c 100644
> > --- a/arch/arm/kernel/smp_scu.c
> > +++ b/arch/arm/kernel/smp_scu.c
> > @@ -18,6 +18,7 @@
> >  
> >  #define SCU_CTRL		0x00
> >  #define SCU_ENABLE		(1 << 0)
> > +#define SCU_STANDBY_ENABLE	(1 << 5)
> >  #define SCU_CONFIG		0x04
> >  #define SCU_CPU_STATUS		0x08
> >  #define SCU_INVALIDATE		0x0c
> > @@ -54,7 +55,7 @@ void scu_enable(void __iomem *scu_base)
> >  	if (scu_ctrl & SCU_ENABLE)
> >  		return;
> >  
> > -	scu_ctrl |= SCU_ENABLE;
> > +	scu_ctrl |= SCU_ENABLE | SCU_STANDBY_ENABLE;
> 
> I don't think this bit exists on all revisions of the A9.

Thanks for the info, Will.  Is there any side-effect to write the
standby bit on those revisions which do not define the bit?

Shawn



More information about the linux-arm-kernel mailing list