diff options
author | Victor Gu <xigu@marvell.com> | 2017-04-11 10:28:21 +0800 |
---|---|---|
committer | Hua Jing <jinghua@marvell.com> | 2017-04-21 09:38:54 +0300 |
commit | c52deb31bf9526eb3943d6618e5eca1585b871e1 (patch) | |
tree | e83676a0c4dd961b374534591b3f3ff2378a7e0c | |
parent | 4cd5e7a3ee43dcfb56444a9c205bb855ab348f9c (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.c | 12 |
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(); |