/linux-6.3-rc2/drivers/base/power/ |
A D | domain.c | 564 ret = genpd->power_on(genpd); in _genpd_power_on() 572 ret = genpd->power_on(genpd); in _genpd_power_on() 615 ret = genpd->power_off(genpd); in _genpd_power_off() 623 ret = genpd->power_off(genpd); in _genpd_power_off() 720 if (genpd->gov && genpd->gov->power_down_ok) { in genpd_power_off() 735 genpd->states[genpd->state_idx].rejected++; in genpd_power_off() 741 genpd->states[genpd->state_idx].usage++; in genpd_power_off() 1142 genpd->state_idx = genpd->state_count - 1; in genpd_sync_power_off() 1644 ret = genpd->attach_dev ? genpd->attach_dev(genpd, dev) : 0; in genpd_add_device() 1720 genpd->detach_dev(genpd, dev); in genpd_remove_device() [all …]
|
A D | domain_governor.c | 157 genpd->gd->next_wakeup = domain_wakeup; in update_domain_next_wakeup() 167 genpd->states[state].residency_ns; in next_wakeup_allows_state() 184 genpd->states[state].power_on_latency_ns; in __default_power_down_ok() 254 genpd->states[state].power_on_latency_ns; in __default_power_down_ok() 268 struct genpd_governor_data *gd = genpd->gd; in _default_power_down_ok() 269 int state_idx = genpd->state_count - 1; in _default_power_down_ok() 278 update_domain_next_wakeup(genpd, now); in _default_power_down_ok() 331 genpd->state_idx = state_idx; in _default_power_down_ok() 379 genpd->gd->next_hrtimer = domain_wakeup; in cpu_power_down_ok() 386 i = genpd->state_idx; in cpu_power_down_ok() [all …]
|
/linux-6.3-rc2/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 | rcar-gen4-sysc.c | 192 struct generic_pm_domain genpd; member 221 struct generic_pm_domain *genpd = &pd->genpd; in rcar_gen4_sysc_pd_setup() local 222 const char *name = pd->genpd.name; in rcar_gen4_sysc_pd_setup() 231 genpd->flags |= GENPD_FLAG_ALWAYS_ON; in rcar_gen4_sysc_pd_setup() 239 genpd->flags |= GENPD_FLAG_ALWAYS_ON; in rcar_gen4_sysc_pd_setup() 244 genpd->flags |= GENPD_FLAG_ALWAYS_ON; in rcar_gen4_sysc_pd_setup() 250 genpd->attach_dev = cpg_mssr_attach_dev; in rcar_gen4_sysc_pd_setup() 251 genpd->detach_dev = cpg_mssr_detach_dev; in rcar_gen4_sysc_pd_setup() 351 pd->genpd.name = pd->name; in rcar_gen4_sysc_pd_init() 359 domains->domains[area->pdr] = &pd->genpd; in rcar_gen4_sysc_pd_init() [all …]
|
/linux-6.3-rc2/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 …]
|
/linux-6.3-rc2/drivers/soc/apple/ |
A D | apple-pmgr-pwrstate.c | 42 struct generic_pm_domain genpd; member 65 genpd->name); in apple_pmgr_ps_set() 80 genpd->name, pstate, reg); in apple_pmgr_ps_set() 121 spin_lock_irqsave(&ps->genpd.slock, flags); in apple_pmgr_reset_assert() 123 if (ps->genpd.status == GENPD_STATE_OFF) in apple_pmgr_reset_assert() 143 spin_lock_irqsave(&ps->genpd.slock, flags); in apple_pmgr_reset_deassert() 149 if (ps->genpd.status == GENPD_STATE_OFF) in apple_pmgr_reset_deassert() 227 ps->genpd.flags |= GENPD_FLAG_IRQ_SAFE; in apple_pmgr_ps_probe() 228 ps->genpd.name = name; in apple_pmgr_ps_probe() 239 ps->genpd.flags |= GENPD_FLAG_ALWAYS_ON; in apple_pmgr_ps_probe() [all …]
|
/linux-6.3-rc2/drivers/soc/imx/ |
A D | imx93-pd.c | 25 struct generic_pm_domain genpd; member 35 static int imx93_pd_on(struct generic_pm_domain *genpd) in imx93_pd_on() argument 37 struct imx93_power_domain *domain = to_imx93_pd(genpd); in imx93_pd_on() 62 static int imx93_pd_off(struct generic_pm_domain *genpd) in imx93_pd_off() argument 64 struct imx93_power_domain *domain = to_imx93_pd(genpd); in imx93_pd_off() 96 pm_genpd_remove(&domain->genpd); in imx93_pd_remove() 120 domain->genpd.name = dev_name(dev); in imx93_pd_probe() 121 domain->genpd.power_off = imx93_pd_off; in imx93_pd_probe() 122 domain->genpd.power_on = imx93_pd_on; in imx93_pd_probe() 131 domain->genpd.name); in imx93_pd_probe() [all …]
|
A D | gpcv2.c | 495 .genpd = { 507 .genpd = { 519 .genpd = { 563 .genpd = { 574 .genpd = { 585 .genpd = { 596 .genpd = { 607 .genpd = { 618 .genpd = { 631 .genpd = { [all …]
|
A D | imx93-blk-ctrl.c | 81 struct generic_pm_domain genpd; member 98 return container_of(genpd, struct imx93_blk_ctrl_domain, genpd); in to_imx93_blk_ctrl_domain() 158 dev_dbg(bc->dev, "pd_on: name: %s\n", genpd->name); in imx93_blk_ctrl_power_on() 176 dev_dbg(bc->dev, "pd_off: name: %s\n", genpd->name); in imx93_blk_ctrl_power_off() 261 domain->genpd.name = data->name; in imx93_blk_ctrl_probe() 262 domain->genpd.power_on = imx93_blk_ctrl_power_on; in imx93_blk_ctrl_probe() 263 domain->genpd.power_off = imx93_blk_ctrl_power_off; in imx93_blk_ctrl_probe() 266 ret = pm_genpd_init(&domain->genpd, NULL, true); in imx93_blk_ctrl_probe() 272 bc->onecell_data.domains[i] = &domain->genpd; in imx93_blk_ctrl_probe() 289 pm_genpd_remove(&bc->domains[i].genpd); in imx93_blk_ctrl_probe() [all …]
|
/linux-6.3-rc2/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-6.3-rc2/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() 320 pd->genpd.name = e->name; in bcm_pmb_probe() 321 pd->genpd.power_on = bcm_pmb_power_on; in bcm_pmb_probe() 322 pd->genpd.power_off = bcm_pmb_power_off; in bcm_pmb_probe() 324 pm_genpd_init(&pd->genpd, NULL, true); in bcm_pmb_probe() 325 pmb->genpd_onecell_data.domains[e->id] = &pd->genpd; in bcm_pmb_probe()
|
/linux-6.3-rc2/drivers/soc/starfive/ |
A D | jh71xx_pmu.c | 63 struct generic_pm_domain **genpd; member 72 struct generic_pm_domain genpd; member 101 pmd->genpd.name); in jh71xx_pmu_set_state() 107 pmd->genpd.name, on ? "en" : "dis"); in jh71xx_pmu_set_state() 162 pmd->genpd.name, on ? "on" : "off"); in jh71xx_pmu_set_state() 172 struct jh71xx_pmu_dev, genpd); in jh71xx_pmu_on() 181 struct jh71xx_pmu_dev, genpd); in jh71xx_pmu_off() 250 pmd->genpd.name); in jh71xx_pmu_init_domain() 252 pmd->genpd.power_on = jh71xx_pmu_on; in jh71xx_pmu_init_domain() 294 if (!pmu->genpd) in jh71xx_pmu_probe() [all …]
|
/linux-6.3-rc2/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-6.3-rc2/drivers/soc/sunxi/ |
A D | sun20i-ppu.c | 44 struct generic_pm_domain genpd; member 49 container_of(_genpd, struct sun20i_ppu_pd, genpd) 88 static int sun20i_ppu_pd_power_on(struct generic_pm_domain *genpd) in sun20i_ppu_pd_power_on() argument 90 const struct sun20i_ppu_pd *pd = to_sun20i_ppu_pd(genpd); in sun20i_ppu_pd_power_on() 97 const struct sun20i_ppu_pd *pd = to_sun20i_ppu_pd(genpd); in sun20i_ppu_pd_power_off() 152 pd->genpd.name = desc->names[i]; in sun20i_ppu_probe() 153 pd->genpd.power_off = sun20i_ppu_pd_power_off; in sun20i_ppu_probe() 154 pd->genpd.power_on = sun20i_ppu_pd_power_on; in sun20i_ppu_probe() 157 ret = pm_genpd_init(&pd->genpd, NULL, sun20i_ppu_pd_is_on(pd)); in sun20i_ppu_probe() 160 pd->genpd.name, ret); in sun20i_ppu_probe() [all …]
|
/linux-6.3-rc2/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 = { 346 vpu_pd->genpd.flags = GENPD_FLAG_ALWAYS_ON; in meson_gx_pwrc_vpu_probe() 347 pm_genpd_init(&vpu_pd->genpd, NULL, powered_off); in meson_gx_pwrc_vpu_probe() 350 &vpu_pd->genpd); in meson_gx_pwrc_vpu_probe() [all …]
|
/linux-6.3-rc2/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-6.3-rc2/include/linux/ |
A D | pm_domain.h | 144 unsigned int (*opp_to_performance_state)(struct generic_pm_domain *genpd, 146 int (*set_performance_state)(struct generic_pm_domain *genpd, 227 int pm_genpd_add_subdomain(struct generic_pm_domain *genpd, 229 int pm_genpd_remove_subdomain(struct generic_pm_domain *genpd, 231 int pm_genpd_init(struct generic_pm_domain *genpd, 233 int pm_genpd_remove(struct generic_pm_domain *genpd); 252 static inline int pm_genpd_add_device(struct generic_pm_domain *genpd, in pm_genpd_add_device() argument 271 static inline int pm_genpd_init(struct generic_pm_domain *genpd, in pm_genpd_init() argument 276 static inline int pm_genpd_remove(struct generic_pm_domain *genpd) in pm_genpd_remove() argument 334 struct generic_pm_domain *genpd); [all …]
|
/linux-6.3-rc2/drivers/soc/mediatek/ |
A D | mtk-pm-domains.c | 40 struct generic_pm_domain genpd; member 209 struct scpsys_domain *pd = container_of(genpd, struct scpsys_domain, genpd); in scpsys_power_on() 267 struct scpsys_domain *pd = container_of(genpd, struct scpsys_domain, genpd); in scpsys_power_off() 454 pd->genpd.name = node->name; in scpsys_add_one_domain() 456 pd->genpd.name = pd->data->name; in scpsys_add_one_domain() 469 scpsys->domains[id] = &pd->genpd; in scpsys_add_one_domain() 539 scpsys_power_off(&pd->genpd); in scpsys_remove_one_domain() 549 pd->genpd.name, ret); in scpsys_remove_one_domain() 557 struct generic_pm_domain *genpd; in scpsys_domain_cleanup() local 563 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-6.3-rc2/drivers/soc/rockchip/ |
A D | pm_domains.c | 218 if (genpd) { in rockchip_pmu_block() 224 genpd->name, ret); in rockchip_pmu_block() 235 if (genpd) { in rockchip_pmu_block() 259 if (genpd) { in rockchip_pmu_unblock() 297 struct generic_pm_domain *genpd = &pd->genpd; in rockchip_pmu_set_idle_request() local 325 genpd->name, val); in rockchip_pmu_set_idle_request() 334 genpd->name, is_idle); in rockchip_pmu_set_idle_request() 415 struct generic_pm_domain *genpd = &pd->genpd; in rockchip_do_pmu_set_power_domain() local 435 genpd->name, is_on); in rockchip_do_pmu_set_power_domain() 671 pd->genpd.name, ret); in rockchip_pm_remove_one_domain() [all …]
|
/linux-6.3-rc2/drivers/irqchip/ |
A D | irq-qcom-mpm.c | 86 struct generic_pm_domain genpd; member 291 static int mpm_pd_power_off(struct generic_pm_domain *genpd) in mpm_pd_power_off() argument 294 genpd); in mpm_pd_power_off() 324 struct generic_pm_domain *genpd; in qcom_mpm_init() local 393 genpd = &priv->genpd; in qcom_mpm_init() 394 genpd->flags = GENPD_FLAG_IRQ_SAFE; in qcom_mpm_init() 395 genpd->power_off = mpm_pd_power_off; in qcom_mpm_init() 398 if (!genpd->name) in qcom_mpm_init() 401 ret = pm_genpd_init(genpd, NULL, false); in qcom_mpm_init() 407 ret = of_genpd_add_provider_simple(np, genpd); in qcom_mpm_init() [all …]
|
/linux-6.3-rc2/drivers/firmware/arm_scmi/ |
A D | scmi_pm_domain.c | 17 struct generic_pm_domain genpd; member 23 #define to_scmi_pd(gpd) container_of(gpd, struct scmi_pm_domain, genpd) 102 scmi_pd->genpd.name = scmi_pd->name; in scmi_pm_domain_probe() 103 scmi_pd->genpd.power_off = scmi_pd_power_off; in scmi_pm_domain_probe() 104 scmi_pd->genpd.power_on = scmi_pd_power_on; in scmi_pm_domain_probe() 106 pm_genpd_init(&scmi_pd->genpd, NULL, in scmi_pm_domain_probe() 109 domains[i] = &scmi_pd->genpd; in scmi_pm_domain_probe()
|
/linux-6.3-rc2/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()
|