Hi Sylvain,

Thank you for your review.

> -----Original Message-----
> From: Sylvain Rochet [mailto:sylvain.roc...@finsecur.com]
> Sent: Saturday, January 24, 2015 3:17 AM
> To: Yang, Wenyou
> Cc: Ferre, Nicolas; li...@arm.linux.org.uk; linux-kernel@vger.kernel.org;
> alexandre.bell...@free-electrons.com; p...@axentia.se; linux-arm-
> ker...@lists.infradead.org
> Subject: Re: [PATCH 08/12] pm: at91: rename file name: pm_slowclock.S --
> >pm_suspend.S
> 
> Hello Wenyou,
> 
> On Tue, Jan 20, 2015 at 04:17:01PM +0800, Wenyou Yang wrote:
> >
> > diff --git a/arch/arm/mach-at91/pm_suspend.S
> > b/arch/arm/mach-at91/pm_suspend.S new file mode 100644 index
> > 0000000..420e730
> > --- /dev/null
> 
> 
> > +   /* Turn off the main oscillator */
> > +   ldr     tmp1, [pmc, #AT91_CKGR_MOR]
> > +   bic     tmp1, tmp1, #AT91_PMC_MOSCEN
> 
> at91sam9x5 and probably others need a key here:
>       orr     tmp1, tmp1, #AT91_PMC_KEY
> 
Yes, I am preparing the patches to support other SoCs.

> > +   str     tmp1, [pmc, #AT91_CKGR_MOR]
> 
> 
> 
> > +   /* Wait for interrupt */
> > +   mcr     p15, 0, tmp1, c7, c0, 4
> 
> The linux-3.10-at91 branch uses a different approach which seem necessary for
> newer board, you probably forget to merge the following:
> 
> /*
>  * Put the processor to enter into Standby mode, wait for interrupt to wakeup 
>  */
>       .macro _do_wfi
> 
> #if defined(CONFIG_CPU_V7)
>       dsb
> 
>       /* Disable the processor clock */
>       mov     tmp1, #AT91_PMC_PCK
>       str     tmp1, [pmc, #AT91_PMC_SCDR]
> 
>       wfi             @ Wait For Interrupt
> #else
>       mcr     p15, 0, tmp1, c7, c0, 4
> #endif
> 
>       .endm
> 
>       .text
> 
I will send the new patch serials to support it in this week. Thanks.

> ENTRY(at91_slow_clock)
> (...)
>       /* Wait for interrupt */
>       _do_wfi
> (...)
> 
> 
> 
> 
> > +   /* Turn on the main oscillator */
> > +   ldr     tmp1, [pmc, #AT91_CKGR_MOR]
> > +   orr     tmp1, tmp1, #AT91_PMC_MOSCEN
> 
> at91sam9x5 and probably others need a key here:
>         orr     tmp1, tmp1, #AT91_PMC_KEY
> 
> > +   str     tmp1, [pmc, #AT91_CKGR_MOR]
> 
> 
> 
> What about the following parts which are also in linux-3.10-at91 branch but 
> not in
> this rework, are they necessary ?
Yes, they are necessary, I will send the next patch serial in this week.

> 
> sdr_sr_done:
>       /* Disable MPDDRC Clock*/
>       cmp     ddrcid, #0
>       beq     2f
>       bic     tmp2, ddrcid, #0xe0 /* fetch lowest 5 bits */
>       mov     tmp1, #0x01
>       mov     tmp1, tmp1, lsl tmp2
> 
>       tst     ddrcid, #0x20   /* > 32 ? */
>       beq     1f
>       str     tmp1, [pmc, #AT91_PMC_PCDR1]
>       b       2f
> 1:
>       str     tmp1, [pmc, #AT91_PMC_PCDR]
> 2:
> 
>       /* Disable DDR Clock */
>       mov     tmp1, #AT91_PMC_SYS_DDR
>       str     tmp1, [pmc, #AT91_PMC_SCDR]
> 
> 
> 
> 
>       /* Enable MPDDRC Clock*/
>       cmp     ddrcid, #0
>       beq     4f
>       bic     tmp2, ddrcid, #0xe0 /* fetch lowest 5 bits */
>       mov     tmp1, #0x01
>       mov     tmp1, tmp1, lsl tmp2
> 
>       tst     ddrcid, #0x20   /* > 32 ? */
>       beq     3f
>       str     tmp1, [pmc, #AT91_PMC_PCER1]
>       b       4f
> 3:
>       str     tmp1, [pmc, #AT91_PMC_PCER]
> 4:
> 
>       /* Enable DDR clock */
>       mov     tmp1, #AT91_PMC_SYS_DDR
>       str     tmp1, [pmc, #AT91_PMC_SCER]
> 
> 
> 
> Sylvain

Best Regards,
Wenyou Yang

Reply via email to