summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVictor Gu <xigu@marvell.com>2017-04-11 10:28:21 +0800
committerHua Jing <jinghua@marvell.com>2017-04-21 09:38:54 +0300
commitc52deb31bf9526eb3943d6618e5eca1585b871e1 (patch)
treee83676a0c4dd961b374534591b3f3ff2378a7e0c
parent4cd5e7a3ee43dcfb56444a9c205bb855ab348f9c (diff)
fix: pm: a3700: set wake up option and source prior to ack the irq
It is possible to trigger extra interrupts during setting the wake up option and sources, which affects the suspend operation. Thus the wake up option and source setting should be done prior to ack the irq. Change-Id: I83f79193b935e98a29443c1efaaec7075b8eb01f Signed-off-by: Victor Gu <xigu@marvell.com> Reviewed-on: http://vgitil04.il.marvell.com:8080/38644 Tested-by: iSoC Platform CI <ykjenk@marvell.com> Reviewed-by: Hua Jing <jinghua@marvell.com>
-rw-r--r--plat/marvell/a3700/common/plat_pm.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/plat/marvell/a3700/common/plat_pm.c b/plat/marvell/a3700/common/plat_pm.c
index 4d357390..b8d42fe7 100644
--- a/plat/marvell/a3700/common/plat_pm.c
+++ b/plat/marvell/a3700/common/plat_pm.c
@@ -596,18 +596,18 @@ void a3700_pwr_domain_suspend(const psci_power_state_t *target_state)
/* Prevent interrupts from spuriously waking up this cpu */
plat_marvell_gic_cpuif_disable();
- /* SoC can not be powered down with pending IRQ, acknowledge all the pending IRQ */
- a3700_pm_ack_irq();
-
- /* Set power off options */
- a3700_set_pwr_off_option();
-
/* Set wake up options */
a3700_set_wake_up_option();
/* Set wake up sources */
a3700_set_wake_up_source();
+ /* SoC can not be powered down with pending IRQ, acknowledge all the pending IRQ */
+ a3700_pm_ack_irq();
+
+ /* Set power off options */
+ a3700_set_pwr_off_option();
+
/* Save the flag for enter the low power mode */
a3700_pm_save_lp_flag();