Subject: Re: [PATCH] ARM: imx6: cpuidle: omit the unnecessary unmask of GINT

From: Shawn Guo <[email-masked]>
Date: Wed, 20 Mar 2019 15:44:33 +0800

On Wed, Mar 20, 2019 at 01:12:01AM +0000, Peng Fan wrote:
> 
> 
> > -----Original Message-----
> > From: Kohji Okuno [mailto:[email-masked]]
> > Sent: 2019年3月20日 8:07
> > To: [email-masked]; Peng Fan <[email-masked]>
> > Cc: [email-masked]; [email-masked];
> > [email-masked]; [email-masked]; dl-linux-imx
> > <[email-masked]>; Peng Fan <[email-masked]>;
> > [email-masked]
> > Subject: Re: [PATCH] ARM: imx6: cpuidle: omit the unnecessary unmask of
> > GINT
> > 
> > Hi Peng and Shawn,
> > 
> > This patch was made by Peng. Peng, could you explain about this?
> > My guess is that the patch is to eliminate the unnecessary processing.
> 
> Yes. This is optimization, there is no need to unmask/mask when
> WAIT_CLOCKED. See the errata description.
> 	/*
> 	 * ERR007265: CCM: When improper low-power sequence is used,
> 	 * the SoC enters low power mode before the ARM core executes WFI.
> 	 *
> 	 * Software workaround:
> 	 * 1) Software should trigger IRQ #32 (IOMUX) to be always pending
> 	 *    by setting IOMUX_GPR1_GINT.
> 	 * 2) Software should then unmask IRQ #32 in GPC before setting CCM
> 	 *    Low-Power mode.
> 	 * 3) Software should mask IRQ #32 right after CCM Low-Power mode
> 	 *    is set (set bits 0-1 of CCM_CLPCR).
> 	 *
> 	 * Note that IRQ #32 is GIC SPI #0.
> 	 */

So are you saying the workaround of ERR007265 does not need to apply on
WAIT_CLOCKED mode?  But WAIT_CLOCKED is one of low-power modes, isn't
it?

Shawn

_______________________________________________
linux-arm-kernel mailing list
[email-masked]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel