| /linux/drivers/pmdomain/tegra/ |
| H A D | powergate-bpmp.c | 20 struct generic_pm_domain genpd; member 26 to_tegra_powergate(struct generic_pm_domain *genpd) in to_tegra_powergate() argument 28 return container_of(genpd, struct tegra_powergate, genpd); in to_tegra_powergate() 184 powergate->genpd.name = kstrdup(info->name, GFP_KERNEL); in tegra_powergate_add() 185 powergate->genpd.power_on = tegra_powergate_power_on; in tegra_powergate_add() 186 powergate->genpd.power_off = tegra_powergate_power_off; in tegra_powergate_add() 187 powergate->genpd.flags = GENPD_FLAG_NO_STAY_ON; in tegra_powergate_add() 189 err = pm_genpd_init(&powergate->genpd, NULL, off); in tegra_powergate_add() 191 kfree(powergate->genpd.name); in tegra_powergate_add() 200 struct generic_pm_domain *genpd = &powergate->genpd; in tegra_powergate_remove() local [all …]
|
| /linux/drivers/pmdomain/imx/ |
| H A D | imx93-pd.c | 26 struct generic_pm_domain genpd; member 33 #define to_imx93_pd(_genpd) container_of(_genpd, struct imx93_power_domain, genpd) 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() 44 dev_err(domain->dev, "failed to enable clocks for domain: %s\n", genpd->name); in imx93_pd_on() 55 dev_err(domain->dev, "pd_on timeout: name: %s, stat: %x\n", genpd->name, val); 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() 77 dev_err(domain->dev, "pd_off timeout: name: %s, stat: %x\n", genpd->name, val); in imx93_pd_off() 93 pm_genpd_remove(&domain->genpd); in imx93_pd_remove() [all …]
|
| H A D | imx8m-blk-ctrl.c | 63 struct generic_pm_domain genpd; member 80 to_imx8m_blk_ctrl_domain(struct generic_pm_domain *genpd) in to_imx8m_blk_ctrl_domain() argument 82 return container_of(genpd, struct imx8m_blk_ctrl_domain, genpd); in to_imx8m_blk_ctrl_domain() 85 static int imx8m_blk_ctrl_power_on(struct generic_pm_domain *genpd) in imx8m_blk_ctrl_power_on() argument 87 struct imx8m_blk_ctrl_domain *domain = to_imx8m_blk_ctrl_domain(genpd); in imx8m_blk_ctrl_power_on() 145 static int imx8m_blk_ctrl_power_off(struct generic_pm_domain *genpd) in imx8m_blk_ctrl_power_off() argument 147 struct imx8m_blk_ctrl_domain *domain = to_imx8m_blk_ctrl_domain(genpd); in imx8m_blk_ctrl_power_off() 272 domain->genpd.name = data->name; in imx8m_blk_ctrl_probe() 273 domain->genpd.power_on = imx8m_blk_ctrl_power_on; in imx8m_blk_ctrl_probe() 274 domain->genpd.power_off = imx8m_blk_ctrl_power_off; in imx8m_blk_ctrl_probe() [all …]
|
| H A D | imx8mp-blk-ctrl.c | 62 struct generic_pm_domain genpd; member 83 to_imx8mp_blk_ctrl_domain(struct generic_pm_domain *genpd) in to_imx8mp_blk_ctrl_domain() argument 85 return container_of(genpd, struct imx8mp_blk_ctrl_domain, genpd); in to_imx8mp_blk_ctrl_domain() 523 static int imx8mp_blk_ctrl_power_on(struct generic_pm_domain *genpd) in imx8mp_blk_ctrl_power_on() argument 525 struct imx8mp_blk_ctrl_domain *domain = to_imx8mp_blk_ctrl_domain(genpd); in imx8mp_blk_ctrl_power_on() 570 static int imx8mp_blk_ctrl_power_off(struct generic_pm_domain *genpd) in imx8mp_blk_ctrl_power_off() argument 572 struct imx8mp_blk_ctrl_domain *domain = to_imx8mp_blk_ctrl_domain(genpd); in imx8mp_blk_ctrl_power_off() 701 domain->genpd.name = data->name; in imx8mp_blk_ctrl_probe() 702 domain->genpd.power_on = imx8mp_blk_ctrl_power_on; in imx8mp_blk_ctrl_probe() 703 domain->genpd.power_off = imx8mp_blk_ctrl_power_off; in imx8mp_blk_ctrl_probe() [all …]
|
| H A D | gpc.c | 55 to_imx_pm_domain(struct generic_pm_domain *genpd) in to_imx_pm_domain() argument 57 return container_of(genpd, struct imx_pm_domain, base); in to_imx_pm_domain() 60 static int imx6_pm_domain_power_off(struct generic_pm_domain *genpd) in imx6_pm_domain_power_off() argument 62 struct imx_pm_domain *pd = to_imx_pm_domain(genpd); in imx6_pm_domain_power_off() 88 static int imx6_pm_domain_power_on(struct generic_pm_domain *genpd) in imx6_pm_domain_power_on() argument 90 struct imx_pm_domain *pd = to_imx_pm_domain(genpd); in imx6_pm_domain_power_on() 119 pr_err("powerup request on domain %s timed out\n", genpd->name); in imx6_pm_domain_power_on()
|
| /linux/drivers/pmdomain/arm/ |
| H A D | scmi_perf_domain.c | 17 struct generic_pm_domain genpd; member 24 #define to_scmi_pd(pd) container_of(pd, struct scmi_perf_domain, genpd) 27 scmi_pd_set_perf_state(struct generic_pm_domain *genpd, unsigned int state) in scmi_pd_set_perf_state() argument 29 struct scmi_perf_domain *pd = to_scmi_pd(genpd); in scmi_pd_set_perf_state() 40 dev_warn(&genpd->dev, "Failed with %d when trying to set %d perf level", in scmi_pd_set_perf_state() 47 scmi_pd_attach_dev(struct generic_pm_domain *genpd, struct device *dev) in scmi_pd_attach_dev() argument 49 struct scmi_perf_domain *pd = to_scmi_pd(genpd); in scmi_pd_attach_dev() 67 scmi_pd_detach_dev(struct generic_pm_domain *genpd, struct device *dev) in scmi_pd_detach_dev() argument 69 struct scmi_perf_domain *pd = to_scmi_pd(genpd); in scmi_pd_detach_dev() 126 scmi_pd->genpd.name = scmi_pd->info->name; in scmi_perf_domain_probe() [all …]
|
| H A D | scpi_pm_domain.c | 17 struct generic_pm_domain genpd; member 32 #define to_scpi_pd(gpd) container_of(gpd, struct scpi_pm_domain, genpd) 109 domains[i] = &scpi_pd->genpd; in scpi_pm_domain_probe() 113 scpi_pd->genpd.name = devm_kasprintf(dev, GFP_KERNEL, in scpi_pm_domain_probe() 115 if (!scpi_pd->genpd.name) { in scpi_pm_domain_probe() 120 scpi_pd->genpd.power_off = scpi_pd_power_off; in scpi_pm_domain_probe() 121 scpi_pd->genpd.power_on = scpi_pd_power_on; in scpi_pm_domain_probe() 129 pm_genpd_init(&scpi_pd->genpd, NULL, true); in scpi_pm_domain_probe()
|
| H 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) 97 scmi_pd->genpd.name = scmi_pd->name; in scmi_pm_domain_probe() 98 scmi_pd->genpd.power_off = scmi_pd_power_off; in scmi_pm_domain_probe() 99 scmi_pd->genpd.power_on = scmi_pd_power_on; in scmi_pm_domain_probe() 100 scmi_pd->genpd.flags = GENPD_FLAG_ACTIVE_WAKEUP; in scmi_pm_domain_probe() 102 pm_genpd_init(&scmi_pd->genpd, NULL, in scmi_pm_domain_probe() 105 domains[i] = &scmi_pd->genpd; in scmi_pm_domain_probe()
|
| /linux/drivers/pmdomain/bcm/ |
| H A D | bcm63xx-power.c | 19 struct generic_pm_domain genpd; member 29 struct generic_pm_domain **genpd; member 73 static int bcm63xx_power_on(struct generic_pm_domain *genpd) in bcm63xx_power_on() argument 75 struct bcm63xx_power_dev *pmd = container_of(genpd, in bcm63xx_power_on() 76 struct bcm63xx_power_dev, genpd); in bcm63xx_power_on() 81 static int bcm63xx_power_off(struct generic_pm_domain *genpd) in bcm63xx_power_off() argument 83 struct bcm63xx_power_dev *pmd = container_of(genpd, in bcm63xx_power_off() 84 struct bcm63xx_power_dev, genpd); in bcm63xx_power_off() 129 power->genpd = devm_kcalloc(dev, power->genpd_data.num_domains, in bcm63xx_power_probe() 132 if (!power->genpd) in bcm63xx_power_probe() [all …]
|
| H A D | bcm-pmb.c | 87 struct generic_pm_domain genpd; member 233 static int bcm_pmb_power_on(struct generic_pm_domain *genpd) in bcm_pmb_power_on() argument 235 struct bcm_pmb_pm_domain *pd = container_of(genpd, struct bcm_pmb_pm_domain, genpd); in bcm_pmb_power_on() 254 static int bcm_pmb_power_off(struct generic_pm_domain *genpd) in bcm_pmb_power_off() argument 256 struct bcm_pmb_pm_domain *pd = container_of(genpd, struct bcm_pmb_pm_domain, genpd); in bcm_pmb_power_off() 319 pd->genpd.name = e->name; in bcm_pmb_probe() 320 pd->genpd.power_on = bcm_pmb_power_on; in bcm_pmb_probe() 321 pd->genpd.power_off = bcm_pmb_power_off; in bcm_pmb_probe() 323 pm_genpd_init(&pd->genpd, NULL, true); in bcm_pmb_probe() 324 pmb->genpd_onecell_data.domains[e->id] = &pd->genpd; in bcm_pmb_probe()
|
| /linux/drivers/pmdomain/sunxi/ |
| H A D | sun50i-h6-prcm-ppu.c | 38 struct generic_pm_domain genpd; member 82 container_of(_genpd, struct sun50i_h6_ppu_pd, genpd) 104 static int sun50i_h6_ppu_pd_power_on(struct generic_pm_domain *genpd) in sun50i_h6_ppu_pd_power_on() argument 106 const struct sun50i_h6_ppu_pd *pd = to_sun50i_h6_ppu_pd(genpd); in sun50i_h6_ppu_pd_power_on() 111 static int sun50i_h6_ppu_pd_power_off(struct generic_pm_domain *genpd) in sun50i_h6_ppu_pd_power_off() argument 113 const struct sun50i_h6_ppu_pd *pd = to_sun50i_h6_ppu_pd(genpd); in sun50i_h6_ppu_pd_power_off() 155 pd->genpd.name = desc->name; in sun50i_h6_ppu_probe() 156 pd->genpd.power_off = sun50i_h6_ppu_pd_power_off; in sun50i_h6_ppu_probe() 157 pd->genpd.power_on = sun50i_h6_ppu_pd_power_on; in sun50i_h6_ppu_probe() 159 pd->genpd.flags = GENPD_FLAG_ALWAYS_ON; in sun50i_h6_ppu_probe() [all …]
|
| H 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() 95 static int sun20i_ppu_pd_power_off(struct generic_pm_domain *genpd) in sun20i_ppu_pd_power_off() argument 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() [all …]
|
| H A D | sun55i-pck600.c | 58 struct generic_pm_domain genpd; member 69 #define to_sunxi_pd(gpd) container_of(gpd, struct sunxi_pck600_pd, genpd) 74 struct generic_pm_domain *genpd = &pd->genpd; in sunxi_pck600_pd_set_power() local 92 genpd->name, str_on_off(on), ret); in sunxi_pck600_pd_set_power() 165 pd->genpd.name = desc->pd_names[i]; in sunxi_pck600_probe() 166 pd->genpd.power_off = sunxi_pck600_power_off; in sunxi_pck600_probe() 167 pd->genpd.power_on = sunxi_pck600_power_on; in sunxi_pck600_probe() 171 ret = pm_genpd_init(&pd->genpd, NULL, false); in sunxi_pck600_probe() 177 genpds->domains[i] = &pd->genpd; in sunxi_pck600_probe()
|
| /linux/drivers/pmdomain/starfive/ |
| H A D | jh71xx-pmu.c | 73 struct generic_pm_domain **genpd; member 82 struct generic_pm_domain genpd; member 158 pmd->genpd.name, on ? "on" : "off"); in jh7110_pmu_set_state() 195 pmd->genpd.name); in jh71xx_pmu_set_state() 201 pmd->genpd.name, on ? "en" : "dis"); in jh71xx_pmu_set_state() 208 static int jh71xx_pmu_on(struct generic_pm_domain *genpd) in jh71xx_pmu_on() argument 210 struct jh71xx_pmu_dev *pmd = container_of(genpd, in jh71xx_pmu_on() 211 struct jh71xx_pmu_dev, genpd); in jh71xx_pmu_on() 217 static int jh71xx_pmu_off(struct generic_pm_domain *genpd) in jh71xx_pmu_off() argument 219 struct jh71xx_pmu_dev *pmd = container_of(genpd, in jh71xx_pmu_off() [all …]
|
| /linux/scripts/gdb/linux/ |
| H 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'], 78 for genpd in list_for_each_entry( 82 self.summary_one(genpd)
|
| /linux/drivers/pmdomain/actions/ |
| H A D | owl-sps.c | 41 #define to_owl_pd(gpd) container_of(gpd, struct owl_sps_domain, genpd) 44 struct generic_pm_domain genpd; member 88 pd->genpd.name = pd->info->name; in owl_sps_init_domain() 89 pd->genpd.power_on = owl_sps_power_on; in owl_sps_init_domain() 90 pd->genpd.power_off = owl_sps_power_off; in owl_sps_init_domain() 91 pd->genpd.flags = pd->info->genpd_flags; in owl_sps_init_domain() 92 pm_genpd_init(&pd->genpd, NULL, false); in owl_sps_init_domain() 94 sps->genpd_data.domains[index] = &pd->genpd; in owl_sps_init_domain()
|
| /linux/drivers/pmdomain/mediatek/ |
| H A D | mtk-scpsys.c | 136 struct generic_pm_domain genpd; member 303 static int scpsys_power_on(struct generic_pm_domain *genpd) in scpsys_power_on() argument 305 struct scp_domain *scpd = container_of(genpd, struct scp_domain, genpd); in scpsys_power_on() 356 dev_err(scp->dev, "Failed to power on domain %s\n", genpd->name); in scpsys_power_on() 361 static int scpsys_power_off(struct generic_pm_domain *genpd) in scpsys_power_off() argument 363 struct scp_domain *scpd = container_of(genpd, struct scp_domain, genpd); in scpsys_power_off() 409 dev_err(scp->dev, "Failed to power off domain %s\n", genpd->name); in scpsys_power_off() 486 struct generic_pm_domain *genpd = &scpd->genpd; in init_scp() local 489 pd_data->domains[i] = genpd; in init_scp() 506 genpd->name = data->name; in init_scp() [all …]
|
| /linux/drivers/cpuidle/ |
| H A D | cpuidle-psci-domain.c | 109 struct generic_pm_domain *genpd; in psci_pd_remove() local 115 genpd = of_genpd_remove_last(pd_provider->node); in psci_pd_remove() 116 if (!IS_ERR(genpd)) in psci_pd_remove() 117 kfree(genpd); in psci_pd_remove()
|
| H A D | cpuidle-riscv-sbi.c | 426 struct generic_pm_domain *genpd; in sbi_pd_remove() local 431 genpd = of_genpd_remove_last(pd_provider->node); in sbi_pd_remove() 432 if (!IS_ERR(genpd)) in sbi_pd_remove() 433 kfree(genpd); in sbi_pd_remove()
|
| /linux/drivers/gpu/drm/amd/amdgpu/ |
| H A D | isp_v4_1_1.c | 67 static int isp_poweroff(struct generic_pm_domain *genpd) in isp_poweroff() argument 69 struct amdgpu_isp *isp = container_of(genpd, struct amdgpu_isp, ispgpd); in isp_poweroff() 75 static int isp_poweron(struct generic_pm_domain *genpd) in isp_poweron() argument 77 struct amdgpu_isp *isp = container_of(genpd, struct amdgpu_isp, ispgpd); in isp_poweron() 83 static int isp_set_performance_state(struct generic_pm_domain *genpd, in isp_set_performance_state() argument 86 struct amdgpu_isp *isp = container_of(genpd, struct amdgpu_isp, ispgpd); in isp_set_performance_state()
|
| H A D | amdgpu_acp.c | 130 static int acp_poweroff(struct generic_pm_domain *genpd) in acp_poweroff() argument 135 apd = container_of(genpd, struct acp_pm_domain, gpd); in acp_poweroff() 147 static int acp_poweron(struct generic_pm_domain *genpd) in acp_poweron() argument 152 apd = container_of(genpd, struct acp_pm_domain, gpd); in acp_poweron()
|
| /linux/drivers/clk/renesas/ |
| H A D | renesas-cpg-mssr.c | 578 struct generic_pm_domain genpd; member 590 if (clkspec->np != pd->genpd.dev.of_node || clkspec->args_count != 2) in cpg_mssr_is_pm_clk() 673 struct generic_pm_domain *genpd; in cpg_mssr_add_clk_domain() local 685 genpd = &pd->genpd; in cpg_mssr_add_clk_domain() 686 genpd->name = np->name; in cpg_mssr_add_clk_domain() 687 genpd->flags = GENPD_FLAG_PM_CLK | GENPD_FLAG_ALWAYS_ON | in cpg_mssr_add_clk_domain() 689 genpd->attach_dev = cpg_mssr_attach_dev; in cpg_mssr_add_clk_domain() 690 genpd->detach_dev = cpg_mssr_detach_dev; in cpg_mssr_add_clk_domain() 691 ret = pm_genpd_init(genpd, &pm_domain_always_on_gov, false); in cpg_mssr_add_clk_domain() 695 ret = devm_add_action_or_reset(dev, cpg_mssr_genpd_remove, genpd); in cpg_mssr_add_clk_domain() [all …]
|
| H A D | rzg2l-cpg.c | 168 struct generic_pm_domain genpd; member 1763 if (clkspec->np != priv->genpd.dev.of_node || clkspec->args_count != 2) in rzg2l_cpg_is_pm_clk() 1792 struct rzg2l_cpg_priv *priv = container_of(domain, struct rzg2l_cpg_priv, genpd); in rzg2l_cpg_attach_dev() 1854 struct generic_pm_domain *genpd = &priv->genpd; in rzg2l_cpg_add_clk_domain() local 1857 genpd->name = np->name; in rzg2l_cpg_add_clk_domain() 1858 genpd->flags = GENPD_FLAG_PM_CLK | GENPD_FLAG_ALWAYS_ON | in rzg2l_cpg_add_clk_domain() 1860 genpd->attach_dev = rzg2l_cpg_attach_dev; in rzg2l_cpg_add_clk_domain() 1861 genpd->detach_dev = rzg2l_cpg_detach_dev; in rzg2l_cpg_add_clk_domain() 1862 ret = pm_genpd_init(genpd, &pm_domain_always_on_gov, false); in rzg2l_cpg_add_clk_domain() 1866 ret = devm_add_action_or_reset(dev, rzg2l_cpg_genpd_remove, genpd); in rzg2l_cpg_add_clk_domain() [all …]
|
| H A D | rzv2h-cpg.c | 1455 struct generic_pm_domain genpd; member 1461 if (clkspec->np != pd->genpd.dev.of_node || clkspec->args_count != 2) in rzv2h_cpg_is_pm_clk() 1489 struct rzv2h_cpg_pd *pd = container_of(domain, struct rzv2h_cpg_pd, genpd); in rzv2h_cpg_attach_dev() 1559 pd->genpd.name = np->name; in rzv2h_cpg_add_pm_domains() 1561 pd->genpd.flags |= GENPD_FLAG_ALWAYS_ON | GENPD_FLAG_PM_CLK | GENPD_FLAG_ACTIVE_WAKEUP; in rzv2h_cpg_add_pm_domains() 1562 pd->genpd.attach_dev = rzv2h_cpg_attach_dev; in rzv2h_cpg_add_pm_domains() 1563 pd->genpd.detach_dev = rzv2h_cpg_detach_dev; in rzv2h_cpg_add_pm_domains() 1564 ret = pm_genpd_init(&pd->genpd, &pm_domain_always_on_gov, false); in rzv2h_cpg_add_pm_domains() 1568 ret = devm_add_action_or_reset(dev, rzv2h_cpg_genpd_remove_simple, &pd->genpd); in rzv2h_cpg_add_pm_domains() 1572 return of_genpd_add_provider_simple(np, &pd->genpd); in rzv2h_cpg_add_pm_domains()
|
| /linux/drivers/soc/tegra/ |
| H A D | pmc.c | 269 struct generic_pm_domain genpd; member 481 return container_of(domain, struct tegra_powergate, genpd); in to_powergate() 910 pg->genpd.name, err); in tegra_genpd_power_on() 929 pg->genpd.name, err); in tegra_genpd_power_off() 936 pg->genpd.name, err); in tegra_genpd_power_off() 1282 pg->genpd.name = np->name; in tegra_powergate_add() 1283 pg->genpd.flags = GENPD_FLAG_NO_SYNC_STATE; in tegra_powergate_add() 1284 pg->genpd.power_off = tegra_genpd_power_off; in tegra_powergate_add() 1285 pg->genpd.power_on = tegra_genpd_power_on; in tegra_powergate_add() 1318 pg->genpd.name, err); in tegra_powergate_add() [all …]
|