summaryrefslogtreecommitdiff
path: root/plat/imx/imx8m/imx8mp/gpc.c
diff options
context:
space:
mode:
authorJacky Bai <ping.bai@nxp.com>2020-04-16 14:48:06 +0800
committerJacky Bai <ping.bai@nxp.com>2020-04-23 20:26:45 +0800
commitee6e0f2781f2ab43b3eb5b66f7a6100f1a3a8450 (patch)
tree1d94141bb138ddf91609101bbf97c586fac8b72c /plat/imx/imx8m/imx8mp/gpc.c
parenta1b1945ac5a44c3fa66b708c48943e04749efb04 (diff)
MLK-23798 plat: imx8mp: Update the noc power down flow of imx8mp
When system entering DSM mode, the main NOC wrapper only need to be on if any of the MIX with ADB400 port is on, so update the flow for this. Signed-off-by: Jacky Bai <ping.bai@nxp.com> Reviewed-by: Anson Huang <Anson.Huang@nxp.com>
Diffstat (limited to 'plat/imx/imx8m/imx8mp/gpc.c')
-rw-r--r--plat/imx/imx8m/imx8mp/gpc.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/plat/imx/imx8m/imx8mp/gpc.c b/plat/imx/imx8m/imx8mp/gpc.c
index 08a1a82b..4556b80c 100644
--- a/plat/imx/imx8m/imx8mp/gpc.c
+++ b/plat/imx/imx8m/imx8mp/gpc.c
@@ -351,7 +351,8 @@ void imx_gpc_pm_domain_enable(uint32_t domain_id, bool on)
}
if (on) {
- pu_domain_status |= (1 << domain_id);
+ if (pwr_domain->need_sync)
+ pu_domain_status |= (1 << domain_id);
if (domain_id == HDMIMIX) {
/* assert the reset */
@@ -404,7 +405,8 @@ void imx_gpc_pm_domain_enable(uint32_t domain_id, bool on)
if (domain_id == AUDIOMIX)
imx_aips5_init();
} else {
- pu_domain_status &= ~(1 << domain_id);
+ if (pwr_domain->need_sync)
+ pu_domain_status &= ~(1 << domain_id);
/* handle the ADB400 sync */
if (!pwr_domain->init_on && pwr_domain->need_sync) {