summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeng Fan <peng.fan@nxp.com>2021-05-10 12:00:45 +0800
committerLucas Stach <l.stach@pengutronix.de>2021-07-21 22:25:57 +0200
commit5eeb0765c110e7fa0f0358b74e6357c9149d08c1 (patch)
treedc2a7cd67173e580a45370903db1ad2bde7512c0
parent4cfc9d9980d63b44305f069641e68f4390c266ba (diff)
downloadlinux-5eeb0765c110e7fa0f0358b74e6357c9149d08c1.tar.gz
linux-5eeb0765c110e7fa0f0358b74e6357c9149d08c1.tar.xz
soc: imx: gpcv2: move reset assert after requesting domain power up
The i.MX8MM VPU power up sequence is a bit special, it must follow: 1. request power up 2. reset assert 3. reset deassert This change in this patch will not affect other domains, because the power domain default is in asserted state, unless bootloader deassert the reset. It also applies to GPU power domain. Reviewed-by: Frieder Schrempf <frieder.schrempf@kontron.de> Tested-by: Frieder Schrempf <frieder.schrempf@kontron.de> Signed-off-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
-rw-r--r--drivers/soc/imx/gpcv2.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/soc/imx/gpcv2.c b/drivers/soc/imx/gpcv2.c
index 2490757f759d..35bbb1bc5159 100644
--- a/drivers/soc/imx/gpcv2.c
+++ b/drivers/soc/imx/gpcv2.c
@@ -217,8 +217,6 @@ static int imx_pgc_power_up(struct generic_pm_domain *genpd)
goto out_regulator_disable;
}
- reset_control_assert(domain->reset);
-
if (domain->bits.pxx) {
/* request the domain to power up */
regmap_update_bits(domain->regmap, GPC_PU_PGC_SW_PUP_REQ,
@@ -241,6 +239,8 @@ static int imx_pgc_power_up(struct generic_pm_domain *genpd)
GPC_PGC_CTRL_PCR);
}
+ reset_control_assert(domain->reset);
+
/* delay for reset to propagate */
udelay(5);