| /linux/drivers/base/power/ |
| A D | domain.c | 510 ret = genpd->power_on(genpd); in _genpd_power_on() 518 ret = genpd->power_on(genpd); in _genpd_power_on() 559 ret = genpd->power_off(genpd); in _genpd_power_off() 567 ret = genpd->power_off(genpd); in _genpd_power_off() 658 if (genpd->gov && genpd->gov->power_down_ok) { in genpd_power_off() 673 genpd->states[genpd->state_idx].rejected++; in genpd_power_off() 679 genpd->states[genpd->state_idx].usage++; in genpd_power_off() 1077 genpd->state_idx = genpd->state_count - 1; in genpd_sync_power_off() 1605 ret = genpd->attach_dev ? genpd->attach_dev(genpd, dev) : 0; in genpd_add_device() 1679 genpd->detach_dev(genpd, dev); in genpd_remove_device() [all …]
|
| A D | domain_governor.c | 152 genpd->next_wakeup = domain_wakeup; in update_domain_next_wakeup() 272 if ((genpd->flags & GENPD_FLAG_MIN_RESIDENCY) && (genpd->next_wakeup != KTIME_MAX)) { in _default_power_down_ok() 289 if (!genpd->max_off_time_changed) { in _default_power_down_ok() 290 genpd->state_idx = genpd->cached_power_down_state_idx; in _default_power_down_ok() 303 genpd->max_off_time_ns = -1; in _default_power_down_ok() 305 genpd->cached_power_down_ok = true; in _default_power_down_ok() 320 genpd->state_idx = state_idx; in _default_power_down_ok() 321 genpd->cached_power_down_state_idx = genpd->state_idx; in _default_power_down_ok() 322 return genpd->cached_power_down_ok; in _default_power_down_ok() 377 i = genpd->state_idx; in cpu_power_down_ok() [all …]
|
| /linux/drivers/soc/tegra/ |
| A D | powergate-bpmp.c | 20 struct generic_pm_domain genpd; member 28 return container_of(genpd, struct tegra_powergate, genpd); in to_tegra_powergate() 199 struct generic_pm_domain *genpd = &powergate->genpd; in tegra_powergate_remove() local 206 genpd->name, err); in tegra_powergate_remove() 208 kfree(genpd->name); in tegra_powergate_remove() 256 struct genpd_onecell_data *genpd = &bpmp->genpd; in tegra_bpmp_add_powergates() local 274 powergate->genpd.name); in tegra_bpmp_add_powergates() 278 genpd->num_domains = count; in tegra_bpmp_add_powergates() 279 genpd->domains = domains; in tegra_bpmp_add_powergates() 289 kfree(genpd->domains); in tegra_bpmp_add_powergates() [all …]
|
| A D | pmc.c | 257 struct generic_pm_domain genpd; member 875 pg->genpd.name, err); in tegra_genpd_power_on() 894 pg->genpd.name, err); in tegra_genpd_power_off() 901 pg->genpd.name, err); in tegra_genpd_power_off() 1240 pg->genpd.name = np->name; in tegra_powergate_add() 1285 pm_genpd_remove(&pg->genpd); in tegra_powergate_add() 1352 genpd = devm_kzalloc(pmc->dev, sizeof(*genpd), GFP_KERNEL); in tegra_pmc_core_pd_add() 1353 if (!genpd) in tegra_pmc_core_pd_add() 1356 genpd->name = np->name; in tegra_pmc_core_pd_add() 1382 pm_genpd_remove(genpd); in tegra_pmc_core_pd_add() [all …]
|
| /linux/drivers/soc/renesas/ |
| A D | rmobile-sysc.c | 33 struct generic_pm_domain genpd; member 98 rmobile_pd->genpd.name, mask, in __rmobile_pd_power_up() 111 struct generic_pm_domain *genpd = &rmobile_pd->genpd; in rmobile_init_pm_domain() local 115 genpd->attach_dev = cpg_mstp_attach_dev; in rmobile_init_pm_domain() 116 genpd->detach_dev = cpg_mstp_detach_dev; in rmobile_init_pm_domain() 119 genpd->power_off = rmobile_pd_power_down; in rmobile_init_pm_domain() 120 genpd->power_on = rmobile_pd_power_up; in rmobile_init_pm_domain() 229 const char *name = pd->genpd.name; in rmobile_setup_pm_domain() 238 pd->genpd.flags |= GENPD_FLAG_ALWAYS_ON; in rmobile_setup_pm_domain() 254 pd->genpd.flags |= GENPD_FLAG_ALWAYS_ON; in rmobile_setup_pm_domain() [all …]
|
| A D | rcar-sysc.c | 177 struct generic_pm_domain genpd; member 208 struct generic_pm_domain *genpd = &pd->genpd; in rcar_sysc_pd_setup() local 209 const char *name = pd->genpd.name; in rcar_sysc_pd_setup() 218 genpd->flags |= GENPD_FLAG_ALWAYS_ON; in rcar_sysc_pd_setup() 226 genpd->flags |= GENPD_FLAG_ALWAYS_ON; in rcar_sysc_pd_setup() 231 genpd->flags |= GENPD_FLAG_ALWAYS_ON; in rcar_sysc_pd_setup() 414 pd->genpd.name = pd->name; in rcar_sysc_pd_init() 430 &pd->genpd); in rcar_sysc_pd_init() 463 struct generic_pm_domain *genpd; in rcar_sysc_power_cpu() local 472 if (!genpd) in rcar_sysc_power_cpu() [all …]
|
| A D | r8a779a0-sysc.c | 271 struct generic_pm_domain genpd; member 300 struct generic_pm_domain *genpd = &pd->genpd; in r8a779a0_sysc_pd_setup() local 301 const char *name = pd->genpd.name; in r8a779a0_sysc_pd_setup() 310 genpd->flags |= GENPD_FLAG_ALWAYS_ON; in r8a779a0_sysc_pd_setup() 318 genpd->flags |= GENPD_FLAG_ALWAYS_ON; in r8a779a0_sysc_pd_setup() 323 genpd->flags |= GENPD_FLAG_ALWAYS_ON; in r8a779a0_sysc_pd_setup() 329 genpd->attach_dev = cpg_mssr_attach_dev; in r8a779a0_sysc_pd_setup() 330 genpd->detach_dev = cpg_mssr_detach_dev; in r8a779a0_sysc_pd_setup() 422 pd->genpd.name = pd->name; in r8a779a0_sysc_pd_init() 430 domains->domains[area->pdr] = &pd->genpd; in r8a779a0_sysc_pd_init() [all …]
|
| /linux/drivers/clk/mmp/ |
| A D | pwr-island.c | 14 #define to_mmp_pm_domain(genpd) container_of(genpd, struct mmp_pm_domain, genpd) argument 17 struct generic_pm_domain genpd; member 26 static int mmp_pm_domain_power_on(struct generic_pm_domain *genpd) in mmp_pm_domain_power_on() argument 28 struct mmp_pm_domain *pm_domain = to_mmp_pm_domain(genpd); in mmp_pm_domain_power_on() 67 static int mmp_pm_domain_power_off(struct generic_pm_domain *genpd) in mmp_pm_domain_power_off() argument 69 struct mmp_pm_domain *pm_domain = to_mmp_pm_domain(genpd); in mmp_pm_domain_power_off() 109 pm_genpd_init(&pm_domain->genpd, NULL, true); in mmp_pm_domain_register() 110 pm_domain->genpd.name = name; in mmp_pm_domain_register() 111 pm_domain->genpd.power_on = mmp_pm_domain_power_on; in mmp_pm_domain_register() 112 pm_domain->genpd.power_off = mmp_pm_domain_power_off; in mmp_pm_domain_register() [all …]
|
| /linux/drivers/soc/bcm/bcm63xx/ |
| A D | bcm63xx-power.c | 20 struct generic_pm_domain genpd; member 30 struct generic_pm_domain **genpd; member 77 struct bcm63xx_power_dev, genpd); in bcm63xx_power_on() 85 struct bcm63xx_power_dev, genpd); in bcm63xx_power_off() 133 if (!power->genpd) in bcm63xx_power_probe() 136 power->genpd_data.domains = power->genpd; in bcm63xx_power_probe() 145 pmd->genpd.name = entry->name; in bcm63xx_power_probe() 146 pmd->genpd.flags = entry->flags; in bcm63xx_power_probe() 151 pmd->genpd.name); in bcm63xx_power_probe() 153 pmd->genpd.power_on = bcm63xx_power_on; in bcm63xx_power_probe() [all …]
|
| A D | bcm-pmb.c | 88 struct generic_pm_domain genpd; member 234 static int bcm_pmb_power_on(struct generic_pm_domain *genpd) in bcm_pmb_power_on() argument 236 struct bcm_pmb_pm_domain *pd = container_of(genpd, struct bcm_pmb_pm_domain, genpd); in bcm_pmb_power_on() 255 static int bcm_pmb_power_off(struct generic_pm_domain *genpd) in bcm_pmb_power_off() argument 257 struct bcm_pmb_pm_domain *pd = container_of(genpd, struct bcm_pmb_pm_domain, genpd); in bcm_pmb_power_off() 317 pd->genpd.name = e->name; in bcm_pmb_probe() 318 pd->genpd.power_on = bcm_pmb_power_on; in bcm_pmb_probe() 319 pd->genpd.power_off = bcm_pmb_power_off; in bcm_pmb_probe() 321 pm_genpd_init(&pd->genpd, NULL, true); in bcm_pmb_probe() 322 pmb->genpd_onecell_data.domains[e->id] = &pd->genpd; in bcm_pmb_probe()
|
| /linux/drivers/soc/imx/ |
| A D | gpcv2.c | 392 .genpd = { 404 .genpd = { 416 .genpd = { 452 .genpd = { 463 .genpd = { 474 .genpd = { 485 .genpd = { 496 .genpd = { 507 .genpd = { 520 .genpd = { [all …]
|
| A D | imx8m-blk-ctrl.c | 54 struct generic_pm_domain genpd; member 69 to_imx8m_blk_ctrl_domain(struct generic_pm_domain *genpd) in to_imx8m_blk_ctrl_domain() argument 71 return container_of(genpd, struct imx8m_blk_ctrl_domain, genpd); in to_imx8m_blk_ctrl_domain() 243 domain->genpd.name = data->name; in imx8m_blk_ctrl_probe() 244 domain->genpd.power_on = imx8m_blk_ctrl_power_on; in imx8m_blk_ctrl_probe() 245 domain->genpd.power_off = imx8m_blk_ctrl_power_off; in imx8m_blk_ctrl_probe() 248 ret = pm_genpd_init(&domain->genpd, NULL, true); in imx8m_blk_ctrl_probe() 265 lockdep_set_class(&domain->genpd.mlock, in imx8m_blk_ctrl_probe() 268 bc->onecell_data.domains[i] = &domain->genpd; in imx8m_blk_ctrl_probe() 292 pm_genpd_remove(&bc->domains[i].genpd); in imx8m_blk_ctrl_probe() [all …]
|
| A D | gpc.c | 54 to_imx_pm_domain(struct generic_pm_domain *genpd) in to_imx_pm_domain() argument 56 return container_of(genpd, struct imx_pm_domain, base); in to_imx_pm_domain() 59 static int imx6_pm_domain_power_off(struct generic_pm_domain *genpd) in imx6_pm_domain_power_off() argument 61 struct imx_pm_domain *pd = to_imx_pm_domain(genpd); in imx6_pm_domain_power_off() 87 static int imx6_pm_domain_power_on(struct generic_pm_domain *genpd) in imx6_pm_domain_power_on() argument 89 struct imx_pm_domain *pd = to_imx_pm_domain(genpd); in imx6_pm_domain_power_on() 118 pr_err("powerup request on domain %s timed out\n", genpd->name); in imx6_pm_domain_power_on()
|
| /linux/drivers/soc/amlogic/ |
| A D | meson-gx-pwrc-vpu.c | 34 struct generic_pm_domain genpd; member 50 struct meson_gx_pwrc_vpu *pd = genpd_to_pd(genpd); in meson_gx_pwrc_vpu_power_off() 88 struct meson_gx_pwrc_vpu *pd = genpd_to_pd(genpd); in meson_g12a_pwrc_vpu_power_off() 146 struct meson_gx_pwrc_vpu *pd = genpd_to_pd(genpd); in meson_gx_pwrc_vpu_power_on() 194 struct meson_gx_pwrc_vpu *pd = genpd_to_pd(genpd); in meson_g12a_pwrc_vpu_power_on() 256 .genpd = { 264 .genpd = { 343 vpu_pd->genpd.flags = GENPD_FLAG_ALWAYS_ON; in meson_gx_pwrc_vpu_probe() 344 pm_genpd_init(&vpu_pd->genpd, NULL, powered_off); in meson_gx_pwrc_vpu_probe() 347 &vpu_pd->genpd); in meson_gx_pwrc_vpu_probe() [all …]
|
| /linux/scripts/gdb/linux/ |
| A D | genpd.py | 46 def summary_one(self, genpd): argument 47 if genpd['status'] == 0: 50 status_string = 'off-{}'.format(genpd['state_idx']) 54 genpd['parent_links'], 60 genpd['name'].string(), 65 for pm_data in list_for_each_entry(genpd['dev_list'], 76 for genpd in list_for_each_entry( 80 self.summary_one(genpd)
|
| /linux/drivers/firmware/arm_scmi/ |
| A D | scmi_pm_domain.c | 18 struct generic_pm_domain genpd; member 24 #define to_scmi_pd(gpd) container_of(gpd, struct scmi_pm_domain, genpd) 124 scmi_pd->genpd.name = scmi_pd->name; in scmi_pm_domain_probe() 125 scmi_pd->genpd.power_off = scmi_pd_power_off; in scmi_pm_domain_probe() 126 scmi_pd->genpd.power_on = scmi_pd_power_on; in scmi_pm_domain_probe() 127 scmi_pd->genpd.attach_dev = scmi_pd_attach_dev; in scmi_pm_domain_probe() 128 scmi_pd->genpd.detach_dev = scmi_pd_detach_dev; in scmi_pm_domain_probe() 129 scmi_pd->genpd.flags = GENPD_FLAG_PM_CLK | in scmi_pm_domain_probe() 132 pm_genpd_init(&scmi_pd->genpd, NULL, in scmi_pm_domain_probe() 135 domains[i] = &scmi_pd->genpd; in scmi_pm_domain_probe()
|
| /linux/include/linux/ |
| A D | pm_domain.h | 132 unsigned int (*opp_to_performance_state)(struct generic_pm_domain *genpd, 134 int (*set_performance_state)(struct generic_pm_domain *genpd, 220 int pm_genpd_add_subdomain(struct generic_pm_domain *genpd, 222 int pm_genpd_remove_subdomain(struct generic_pm_domain *genpd, 224 int pm_genpd_init(struct generic_pm_domain *genpd, 226 int pm_genpd_remove(struct generic_pm_domain *genpd); 243 static inline int pm_genpd_add_device(struct generic_pm_domain *genpd, in pm_genpd_add_device() argument 262 static inline int pm_genpd_init(struct generic_pm_domain *genpd, in pm_genpd_init() argument 267 static inline int pm_genpd_remove(struct generic_pm_domain *genpd) in pm_genpd_remove() argument 318 struct generic_pm_domain *genpd); [all …]
|
| /linux/drivers/soc/mediatek/ |
| A D | mtk-pm-domains.c | 36 struct generic_pm_domain genpd; member 205 struct scpsys_domain *pd = container_of(genpd, struct scpsys_domain, genpd); in scpsys_power_on() 259 struct scpsys_domain *pd = container_of(genpd, struct scpsys_domain, genpd); in scpsys_power_off() 439 pd->genpd.name = node->name; in scpsys_add_one_domain() 441 pd->genpd.name = pd->data->name; in scpsys_add_one_domain() 451 scpsys->domains[id] = &pd->genpd; in scpsys_add_one_domain() 521 scpsys_power_off(&pd->genpd); in scpsys_remove_one_domain() 531 pd->genpd.name, ret); in scpsys_remove_one_domain() 539 struct generic_pm_domain *genpd; in scpsys_domain_cleanup() local 545 if (genpd) { in scpsys_domain_cleanup() [all …]
|
| A D | mtk-scpsys.c | 136 struct generic_pm_domain genpd; member 305 struct scp_domain *scpd = container_of(genpd, struct scp_domain, genpd); in scpsys_power_on() 363 struct scp_domain *scpd = container_of(genpd, struct scp_domain, genpd); in scpsys_power_off() 488 struct generic_pm_domain *genpd = &scpd->genpd; in init_scp() local 491 pd_data->domains[i] = genpd; in init_scp() 508 genpd->name = data->name; in init_scp() 509 genpd->power_off = scpsys_power_off; in init_scp() 510 genpd->power_on = scpsys_power_on; in init_scp() 526 struct generic_pm_domain *genpd = &scpd->genpd; in mtk_register_power_domains() local 535 on = !WARN_ON(genpd->power_on(genpd) < 0); in mtk_register_power_domains() [all …]
|
| /linux/drivers/firmware/ |
| A D | scpi_pm_domain.c | 16 struct generic_pm_domain genpd; member 31 #define to_scpi_pd(gpd) container_of(gpd, struct scpi_pm_domain, genpd) 108 domains[i] = &scpi_pd->genpd; in scpi_pm_domain_probe() 112 scpi_pd->genpd.name = devm_kasprintf(dev, GFP_KERNEL, in scpi_pm_domain_probe() 114 if (!scpi_pd->genpd.name) { in scpi_pm_domain_probe() 119 scpi_pd->genpd.power_off = scpi_pd_power_off; in scpi_pm_domain_probe() 120 scpi_pd->genpd.power_on = scpi_pd_power_on; in scpi_pm_domain_probe() 128 pm_genpd_init(&scpi_pd->genpd, NULL, true); in scpi_pm_domain_probe()
|
| /linux/drivers/soc/rockchip/ |
| A D | pm_domains.c | 69 struct generic_pm_domain genpd; member 164 struct generic_pm_domain *genpd = &pd->genpd; in rockchip_pmu_set_idle_request() local 191 genpd->name, val); in rockchip_pmu_set_idle_request() 200 genpd->name, is_idle); in rockchip_pmu_set_idle_request() 275 struct generic_pm_domain *genpd = &pd->genpd; in rockchip_do_pmu_set_power_domain() local 294 genpd->name, is_on); in rockchip_do_pmu_set_power_domain() 502 pd->genpd.name = pd->info->name; in rockchip_pm_add_one_domain() 535 pd->genpd.name, ret); in rockchip_pm_remove_one_domain() 550 struct generic_pm_domain *genpd; in rockchip_pm_domain_cleanup() local 556 if (genpd) { in rockchip_pm_domain_cleanup() [all …]
|
| /linux/drivers/soc/actions/ |
| A D | owl-sps.c | 39 #define to_owl_pd(gpd) container_of(gpd, struct owl_sps_domain, genpd) 42 struct generic_pm_domain genpd; member 86 pd->genpd.name = pd->info->name; in owl_sps_init_domain() 87 pd->genpd.power_on = owl_sps_power_on; in owl_sps_init_domain() 88 pd->genpd.power_off = owl_sps_power_off; in owl_sps_init_domain() 89 pd->genpd.flags = pd->info->genpd_flags; in owl_sps_init_domain() 90 pm_genpd_init(&pd->genpd, NULL, false); in owl_sps_init_domain() 92 sps->genpd_data.domains[index] = &pd->genpd; in owl_sps_init_domain()
|
| /linux/drivers/cpuidle/ |
| A D | cpuidle-psci-domain.c | 183 struct generic_pm_domain *genpd; in psci_pd_remove() local 188 genpd = of_genpd_remove_last(pd_provider->node); in psci_pd_remove() 189 if (!IS_ERR(genpd)) in psci_pd_remove() 190 kfree(genpd); in psci_pd_remove()
|
| /linux/drivers/clk/renesas/ |
| A D | renesas-cpg-mssr.c | 470 struct generic_pm_domain genpd; member 482 if (clkspec->np != pd->genpd.dev.of_node || clkspec->args_count != 2) in cpg_mssr_is_pm_clk() 560 struct generic_pm_domain *genpd; in cpg_mssr_add_clk_domain() local 571 genpd = &pd->genpd; in cpg_mssr_add_clk_domain() 572 genpd->name = np->name; in cpg_mssr_add_clk_domain() 573 genpd->flags = GENPD_FLAG_PM_CLK | GENPD_FLAG_ALWAYS_ON | in cpg_mssr_add_clk_domain() 575 genpd->attach_dev = cpg_mssr_attach_dev; in cpg_mssr_add_clk_domain() 576 genpd->detach_dev = cpg_mssr_detach_dev; in cpg_mssr_add_clk_domain() 577 pm_genpd_init(genpd, &pm_domain_always_on_gov, false); in cpg_mssr_add_clk_domain() 580 of_genpd_add_provider_simple(np, genpd); in cpg_mssr_add_clk_domain()
|
| A D | rzg2l-cpg.c | 856 struct generic_pm_domain *genpd; in rzg2l_cpg_add_clk_domain() local 858 genpd = devm_kzalloc(dev, sizeof(*genpd), GFP_KERNEL); in rzg2l_cpg_add_clk_domain() 859 if (!genpd) in rzg2l_cpg_add_clk_domain() 862 genpd->name = np->name; in rzg2l_cpg_add_clk_domain() 863 genpd->flags = GENPD_FLAG_PM_CLK | GENPD_FLAG_ALWAYS_ON | in rzg2l_cpg_add_clk_domain() 865 genpd->attach_dev = rzg2l_cpg_attach_dev; in rzg2l_cpg_add_clk_domain() 866 genpd->detach_dev = rzg2l_cpg_detach_dev; in rzg2l_cpg_add_clk_domain() 867 pm_genpd_init(genpd, &pm_domain_always_on_gov, false); in rzg2l_cpg_add_clk_domain() 869 of_genpd_add_provider_simple(np, genpd); in rzg2l_cpg_add_clk_domain()
|