armv7: ls102xa: Disable QE before enter deep sleep
Otherwise system will hang after executing wfi. Signed-off-by: Ran Wang <ran.wang_1@nxp.com> Reviewed-by: York Sun <york.sun@nxp.com>
This commit is contained in:
parent
247058b9b4
commit
26cbc0d663
@ -73,6 +73,7 @@ static void __secure ls1_deepsleep_irq_cfg(void)
|
||||
* read, that is why we don't read it from register ippdexpcr1 itself.
|
||||
*/
|
||||
ippdexpcr1 = in_le32(&scfg->sparecr[7]);
|
||||
out_be32(&rcpm->ippdexpcr1, ippdexpcr1);
|
||||
|
||||
if (ippdexpcr0 & RCPM_IPPDEXPCR0_ETSEC)
|
||||
pmcintecr |= SCFG_PMCINTECR_ETSECRXG0 |
|
||||
@ -192,6 +193,9 @@ static void __secure ls1_deep_sleep(u32 entry_point)
|
||||
setbits_be32(&scfg->dpslpcr, SCFG_DPSLPCR_WDRR_EN);
|
||||
setbits_be32(&gur->crstsr, DCFG_CRSTSR_WDRFR);
|
||||
|
||||
/* Disable QE */
|
||||
setbits_be32(&gur->devdisr, CCSR_DEVDISR1_QE);
|
||||
|
||||
ls1_deepsleep_irq_cfg();
|
||||
|
||||
psci_v7_flush_dcache_all();
|
||||
|
@ -86,6 +86,8 @@ struct sys_info {
|
||||
unsigned long freq_localbus;
|
||||
};
|
||||
|
||||
#define CCSR_DEVDISR1_QE 0x00000001
|
||||
|
||||
/* Device Configuration and Pin Control */
|
||||
struct ccsr_gur {
|
||||
u32 porsr1; /* POR status 1 */
|
||||
|
Loading…
Reference in New Issue
Block a user