diff options
author | Jacky Bai <ping.bai@nxp.com> | 2020-01-20 13:56:56 +0800 |
---|---|---|
committer | Jacky Bai <ping.bai@nxp.com> | 2020-02-09 20:58:49 +0800 |
commit | 2a045c8600f2bcab3a7bd7c36c64db49638ed1a9 (patch) | |
tree | fc3d5d887db84d349af63b3973441d077f6773d3 /plat/imx/imx8m/imx8m_psci_common.c | |
parent | 9dec5b6f55f236304f40f2181e3784c01708a97a (diff) |
plat: imx8m: Add the M4 low power audio support on imx8m
Add the M core low power audio support on i.MX8M.
Signed-off-by: Jacky Bai <ping.bai@nxp.com>
Diffstat (limited to 'plat/imx/imx8m/imx8m_psci_common.c')
-rw-r--r-- | plat/imx/imx8m/imx8m_psci_common.c | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/plat/imx/imx8m/imx8m_psci_common.c b/plat/imx/imx8m/imx8m_psci_common.c index fc649d51..f646de62 100644 --- a/plat/imx/imx8m/imx8m_psci_common.c +++ b/plat/imx/imx8m/imx8m_psci_common.c @@ -121,10 +121,13 @@ void imx_domain_suspend(const psci_power_state_t *target_state) imx_set_cluster_powerdown(core_id, CLUSTER_PWR_STATE(target_state)); if (is_local_state_off(SYSTEM_PWR_STATE(target_state))) { - imx_set_sys_lpm(core_id, true); - dram_enter_retention(); - imx_anamix_override(true); - imx_noc_wrapper_pre_suspend(core_id); + if (!imx_m4_lpa_active()) { + imx_set_sys_lpm(core_id, true); + dram_enter_retention(); + imx_anamix_override(true); + imx_noc_wrapper_pre_suspend(core_id); + } + imx_set_sys_wakeup(core_id, true); } } @@ -134,10 +137,13 @@ void imx_domain_suspend_finish(const psci_power_state_t *target_state) unsigned int core_id = MPIDR_AFFLVL0_VAL(mpidr); if (is_local_state_off(SYSTEM_PWR_STATE(target_state))) { - imx_noc_wrapper_post_resume(core_id); - imx_anamix_override(false); - dram_exit_retention(); - imx_set_sys_lpm(core_id, false); + if (!imx_m4_lpa_active()) { + imx_noc_wrapper_post_resume(core_id); + imx_anamix_override(false); + dram_exit_retention(); + imx_set_sys_lpm(core_id, false); + } + imx_set_sys_wakeup(core_id, false); } if (!is_local_state_run(CLUSTER_PWR_STATE(target_state))) { |