summaryrefslogtreecommitdiffstats
path: root/drivers/soc
diff options
context:
space:
mode:
authorFinley Xiao <finley.xiao@rock-chips.com>2018-05-14 11:29:38 +0800
committerHeiko Stuebner <heiko@sntech.de>2018-05-14 11:53:26 +0200
commit9e59c5f66c624b43c766a9fe3b2430e0e976bf0e (patch)
treee8111baa8ef85409af0d993e38a8c1c396408330 /drivers/soc
parent60cc43fc888428bb2f18f08997432d426a243338 (diff)
downloadop-kernel-dev-9e59c5f66c624b43c766a9fe3b2430e0e976bf0e.zip
op-kernel-dev-9e59c5f66c624b43c766a9fe3b2430e0e976bf0e.tar.gz
soc: rockchip: power-domain: Fix wrong value when power up pd with writemask
Solve the pd could only ever turn off but never turn them on again, if the pd registers have the writemask bits. So far this affects the rk3328 only. Fixes: 79bb17ce8edb ("soc: rockchip: power-domain: Support domain control in hiword-registers") Cc: stable@vger.kernel.org Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com> Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com> Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Diffstat (limited to 'drivers/soc')
-rw-r--r--drivers/soc/rockchip/pm_domains.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/soc/rockchip/pm_domains.c b/drivers/soc/rockchip/pm_domains.c
index 53efc38..df7f30a 100644
--- a/drivers/soc/rockchip/pm_domains.c
+++ b/drivers/soc/rockchip/pm_domains.c
@@ -255,7 +255,7 @@ static void rockchip_do_pmu_set_power_domain(struct rockchip_pm_domain *pd,
return;
else if (pd->info->pwr_w_mask)
regmap_write(pmu->regmap, pmu->info->pwr_offset,
- on ? pd->info->pwr_mask :
+ on ? pd->info->pwr_w_mask :
(pd->info->pwr_mask | pd->info->pwr_w_mask));
else
regmap_update_bits(pmu->regmap, pmu->info->pwr_offset,
OpenPOWER on IntegriCloud