Lines Matching refs:pmd

65 	int (*pmu_set_state)(struct jh71xx_pmu_dev *pmd,
85 static int jh71xx_pmu_get_state(struct jh71xx_pmu_dev *pmd, u32 mask, bool *is_on) in jh71xx_pmu_get_state() argument
87 struct jh71xx_pmu *pmu = pmd->pmu; in jh71xx_pmu_get_state()
97 static int jh7110_pmu_set_state(struct jh71xx_pmu_dev *pmd, u32 mask, bool on) in jh7110_pmu_set_state() argument
99 struct jh71xx_pmu *pmu = pmd->pmu; in jh7110_pmu_set_state()
158 pmd->genpd.name, on ? "on" : "off"); in jh7110_pmu_set_state()
165 static int jh7110_aon_pmu_set_state(struct jh71xx_pmu_dev *pmd, u32 mask, bool on) in jh7110_aon_pmu_set_state() argument
167 struct jh71xx_pmu *pmu = pmd->pmu; in jh7110_aon_pmu_set_state()
185 static int jh71xx_pmu_set_state(struct jh71xx_pmu_dev *pmd, u32 mask, bool on) in jh71xx_pmu_set_state() argument
187 struct jh71xx_pmu *pmu = pmd->pmu; in jh71xx_pmu_set_state()
192 ret = jh71xx_pmu_get_state(pmd, mask, &is_on); in jh71xx_pmu_set_state()
195 pmd->genpd.name); in jh71xx_pmu_set_state()
201 pmd->genpd.name, on ? "en" : "dis"); in jh71xx_pmu_set_state()
205 return match_data->pmu_set_state(pmd, mask, on); in jh71xx_pmu_set_state()
210 struct jh71xx_pmu_dev *pmd = container_of(genpd, in jh71xx_pmu_on() local
212 u32 pwr_mask = BIT(pmd->domain_info->bit); in jh71xx_pmu_on()
214 return jh71xx_pmu_set_state(pmd, pwr_mask, true); in jh71xx_pmu_on()
219 struct jh71xx_pmu_dev *pmd = container_of(genpd, in jh71xx_pmu_off() local
221 u32 pwr_mask = BIT(pmd->domain_info->bit); in jh71xx_pmu_off()
223 return jh71xx_pmu_set_state(pmd, pwr_mask, false); in jh71xx_pmu_off()
289 struct jh71xx_pmu_dev *pmd; in jh71xx_pmu_init_domain() local
294 pmd = devm_kzalloc(pmu->dev, sizeof(*pmd), GFP_KERNEL); in jh71xx_pmu_init_domain()
295 if (!pmd) in jh71xx_pmu_init_domain()
298 pmd->domain_info = &pmu->match_data->domain_info[index]; in jh71xx_pmu_init_domain()
299 pmd->pmu = pmu; in jh71xx_pmu_init_domain()
300 pwr_mask = BIT(pmd->domain_info->bit); in jh71xx_pmu_init_domain()
302 pmd->genpd.name = pmd->domain_info->name; in jh71xx_pmu_init_domain()
303 pmd->genpd.flags = pmd->domain_info->flags; in jh71xx_pmu_init_domain()
305 ret = jh71xx_pmu_get_state(pmd, pwr_mask, &is_on); in jh71xx_pmu_init_domain()
308 pmd->genpd.name); in jh71xx_pmu_init_domain()
310 pmd->genpd.power_on = jh71xx_pmu_on; in jh71xx_pmu_init_domain()
311 pmd->genpd.power_off = jh71xx_pmu_off; in jh71xx_pmu_init_domain()
312 pm_genpd_init(&pmd->genpd, NULL, !is_on); in jh71xx_pmu_init_domain()
314 pmu->genpd_data.domains[index] = &pmd->genpd; in jh71xx_pmu_init_domain()