diff options
author | James Liao <jamesjj.liao@mediatek.com> | 2016-04-12 16:34:30 +0800 |
---|---|---|
committer | Matthias Brugger <matthias.bgg@gmail.com> | 2016-04-13 11:55:08 +0200 |
commit | d9c9f3b809d2bb0356f013e88d10730eafab5346 (patch) | |
tree | ea2340ebca3c084817b2d4248caca18f2e0d97e6 /drivers/soc/mediatek | |
parent | f55532a0c0b8bb6148f4e07853b876ef73bc69ca (diff) | |
download | linux-stable-d9c9f3b809d2bb0356f013e88d10730eafab5346.tar.gz linux-stable-d9c9f3b809d2bb0356f013e88d10730eafab5346.tar.bz2 linux-stable-d9c9f3b809d2bb0356f013e88d10730eafab5346.zip |
Revert "soc: mediatek: SCPSYS: Fix double enabling of regulators"
This reverts commit cc8ed76938b5cf6a54ab3d60edabaf808dc960d1
("soc: mediatek: SCPSYS: Fix double enabling of regulators") [1].
This patch fixes mt8173-evb failing boot issue. With commit [1],
genpd state will not sync to real power domain state. So some
resources such as clocks and regulators may stay in a wrong state.
There is no regulator double enabling issue on mainline kernel, so
we can refert commit [1] safely.
Signed-off-by: James Liao <jamesjj.liao@mediatek.com>
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
Diffstat (limited to 'drivers/soc/mediatek')
-rw-r--r-- | drivers/soc/mediatek/mtk-scpsys.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/soc/mediatek/mtk-scpsys.c b/drivers/soc/mediatek/mtk-scpsys.c index 57e781c71e67..837effe19907 100644 --- a/drivers/soc/mediatek/mtk-scpsys.c +++ b/drivers/soc/mediatek/mtk-scpsys.c @@ -491,13 +491,14 @@ static int scpsys_probe(struct platform_device *pdev) genpd->dev_ops.active_wakeup = scpsys_active_wakeup; /* - * With CONFIG_PM disabled turn on all domains to make the - * hardware usable. + * Initially turn on all domains to make the domains usable + * with !CONFIG_PM and to get the hardware in sync with the + * software. The unused domains will be switched off during + * late_init time. */ - if (!IS_ENABLED(CONFIG_PM)) - genpd->power_on(genpd); + genpd->power_on(genpd); - pm_genpd_init(genpd, NULL, true); + pm_genpd_init(genpd, NULL, false); } /* |