Commit 6aa841c8 authored by Elaine Zhang's avatar Elaine Zhang Committed by Heiko Stuebner

soc: rockchip: power-domain: make idle handling optional

Not all new socs need to handle idle states on domain state changes,
so add the possibility to make them optional.
Signed-off-by: default avatarElaine Zhang <zhangqing@rock-chips.com>
Signed-off-by: default avatarHeiko Stuebner <heiko@sntech.de>
parent f55532a0
...@@ -68,9 +68,9 @@ struct rockchip_pmu { ...@@ -68,9 +68,9 @@ struct rockchip_pmu {
{ \ { \
.pwr_mask = BIT(pwr), \ .pwr_mask = BIT(pwr), \
.status_mask = BIT(status), \ .status_mask = BIT(status), \
.req_mask = BIT(req), \ .req_mask = (req >= 0) ? BIT(req) : 0, \
.idle_mask = BIT(idle), \ .idle_mask = (idle >= 0) ? BIT(idle) : 0, \
.ack_mask = BIT(ack), \ .ack_mask = (ack >= 0) ? BIT(ack) : 0, \
} }
#define DOMAIN_RK3288(pwr, status, req) \ #define DOMAIN_RK3288(pwr, status, req) \
...@@ -96,6 +96,9 @@ static int rockchip_pmu_set_idle_request(struct rockchip_pm_domain *pd, ...@@ -96,6 +96,9 @@ static int rockchip_pmu_set_idle_request(struct rockchip_pm_domain *pd,
struct rockchip_pmu *pmu = pd->pmu; struct rockchip_pmu *pmu = pd->pmu;
unsigned int val; unsigned int val;
if (pd_info->req_mask == 0)
return 0;
regmap_update_bits(pmu->regmap, pmu->info->req_offset, regmap_update_bits(pmu->regmap, pmu->info->req_offset,
pd_info->req_mask, idle ? -1U : 0); pd_info->req_mask, idle ? -1U : 0);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment