Home
last modified time | relevance | path

Searched refs:genpd (Results 1 – 25 of 25) sorted by relevance

/Linux-v5.4/drivers/base/power/
Ddomain.c29 #define GENPD_DEV_CALLBACK(genpd, type, callback, dev) \ argument
34 __routine = genpd->dev_ops.callback; \
45 void (*lock)(struct generic_pm_domain *genpd);
46 void (*lock_nested)(struct generic_pm_domain *genpd, int depth);
47 int (*lock_interruptible)(struct generic_pm_domain *genpd);
48 void (*unlock)(struct generic_pm_domain *genpd);
51 static void genpd_lock_mtx(struct generic_pm_domain *genpd) in genpd_lock_mtx() argument
53 mutex_lock(&genpd->mlock); in genpd_lock_mtx()
56 static void genpd_lock_nested_mtx(struct generic_pm_domain *genpd, in genpd_lock_nested_mtx() argument
59 mutex_lock_nested(&genpd->mlock, depth); in genpd_lock_nested_mtx()
[all …]
Ddomain_governor.c123 struct generic_pm_domain *genpd = pd_to_genpd(pd); in __default_power_down_ok() local
129 off_on_time_ns = genpd->states[state].power_off_latency_ns + in __default_power_down_ok()
130 genpd->states[state].power_on_latency_ns; in __default_power_down_ok()
138 list_for_each_entry(link, &genpd->master_links, master_node) { in __default_power_down_ok()
160 list_for_each_entry(pdd, &genpd->dev_list, list_node) { in __default_power_down_ok()
198 genpd->max_off_time_ns = min_off_time_ns - in __default_power_down_ok()
199 genpd->states[state].power_on_latency_ns; in __default_power_down_ok()
211 struct generic_pm_domain *genpd = pd_to_genpd(pd); in default_power_down_ok() local
214 if (!genpd->max_off_time_changed) { in default_power_down_ok()
215 genpd->state_idx = genpd->cached_power_down_state_idx; in default_power_down_ok()
[all …]
/Linux-v5.4/drivers/soc/renesas/
Drmobile-sysc.c35 struct generic_pm_domain genpd; member
45 return container_of(d, struct rmobile_pm_domain, genpd); in to_rmobile_pd()
48 static int rmobile_pd_power_down(struct generic_pm_domain *genpd) in rmobile_pd_power_down() argument
50 struct rmobile_pm_domain *rmobile_pd = to_rmobile_pd(genpd); in rmobile_pd_power_down()
71 pr_debug("%s: Power off, 0x%08x -> PSTR = 0x%08x\n", genpd->name, mask, in rmobile_pd_power_down()
100 rmobile_pd->genpd.name, mask, in __rmobile_pd_power_up()
106 static int rmobile_pd_power_up(struct generic_pm_domain *genpd) in rmobile_pd_power_up() argument
108 return __rmobile_pd_power_up(to_rmobile_pd(genpd)); in rmobile_pd_power_up()
113 struct generic_pm_domain *genpd = &rmobile_pd->genpd; in rmobile_init_pm_domain() local
116 genpd->flags |= GENPD_FLAG_PM_CLK | GENPD_FLAG_ACTIVE_WAKEUP; in rmobile_init_pm_domain()
[all …]
Drcar-sysc.c170 struct generic_pm_domain genpd; member
178 return container_of(d, struct rcar_sysc_pd, genpd); in to_rcar_pd()
181 static int rcar_sysc_pd_power_off(struct generic_pm_domain *genpd) in rcar_sysc_pd_power_off() argument
183 struct rcar_sysc_pd *pd = to_rcar_pd(genpd); in rcar_sysc_pd_power_off()
185 pr_debug("%s: %s\n", __func__, genpd->name); in rcar_sysc_pd_power_off()
189 static int rcar_sysc_pd_power_on(struct generic_pm_domain *genpd) in rcar_sysc_pd_power_on() argument
191 struct rcar_sysc_pd *pd = to_rcar_pd(genpd); in rcar_sysc_pd_power_on()
193 pr_debug("%s: %s\n", __func__, genpd->name); in rcar_sysc_pd_power_on()
201 struct generic_pm_domain *genpd = &pd->genpd; in rcar_sysc_pd_setup() local
202 const char *name = pd->genpd.name; in rcar_sysc_pd_setup()
[all …]
/Linux-v5.4/drivers/soc/tegra/
Dpowergate-bpmp.c21 struct generic_pm_domain genpd; member
27 to_tegra_powergate(struct generic_pm_domain *genpd) in to_tegra_powergate() argument
29 return container_of(genpd, struct tegra_powergate, genpd); in to_tegra_powergate()
185 powergate->genpd.name = kstrdup(info->name, GFP_KERNEL); in tegra_powergate_add()
186 powergate->genpd.power_on = tegra_powergate_power_on; in tegra_powergate_add()
187 powergate->genpd.power_off = tegra_powergate_power_off; 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
204 err = pm_genpd_remove(genpd); in tegra_powergate_remove()
[all …]
Dpmc.c146 struct generic_pm_domain genpd; member
357 return container_of(domain, struct tegra_powergate, genpd); in to_powergate()
665 pg->genpd.name, err); in tegra_genpd_power_on()
690 pg->genpd.name, err); in tegra_genpd_power_off()
1015 pg->genpd.name = np->name; in tegra_powergate_add()
1016 pg->genpd.power_off = tegra_genpd_power_off; in tegra_powergate_add()
1017 pg->genpd.power_on = tegra_genpd_power_on; in tegra_powergate_add()
1041 err = pm_genpd_init(&pg->genpd, NULL, off); in tegra_powergate_add()
1048 err = of_genpd_add_provider_simple(np, &pg->genpd); in tegra_powergate_add()
1055 dev_dbg(dev, "added PM domain %s\n", pg->genpd.name); in tegra_powergate_add()
[all …]
/Linux-v5.4/drivers/soc/imx/
Dgpcv2.c105 struct generic_pm_domain genpd; member
129 static int imx_gpc_pu_pgc_sw_pxx_req(struct generic_pm_domain *genpd, in imx_gpc_pu_pgc_sw_pxx_req() argument
132 struct imx_pgc_domain *domain = container_of(genpd, in imx_gpc_pu_pgc_sw_pxx_req()
134 genpd); in imx_gpc_pu_pgc_sw_pxx_req()
211 static int imx_gpc_pu_pgc_sw_pup_req(struct generic_pm_domain *genpd) in imx_gpc_pu_pgc_sw_pup_req() argument
213 return imx_gpc_pu_pgc_sw_pxx_req(genpd, true); in imx_gpc_pu_pgc_sw_pup_req()
216 static int imx_gpc_pu_pgc_sw_pdn_req(struct generic_pm_domain *genpd) in imx_gpc_pu_pgc_sw_pdn_req() argument
218 return imx_gpc_pu_pgc_sw_pxx_req(genpd, false); in imx_gpc_pu_pgc_sw_pdn_req()
223 .genpd = {
235 .genpd = {
[all …]
Dgpc.c54 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()
/Linux-v5.4/scripts/gdb/linux/
Dgenpd.py46 def summary_one(self, genpd): argument
47 if genpd['status'] == 0:
50 status_string = 'off-{}'.format(genpd['state_idx'])
54 genpd['master_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-v5.4/drivers/soc/amlogic/
Dmeson-gx-pwrc-vpu.c33 struct generic_pm_domain genpd; member
44 return container_of(d, struct meson_gx_pwrc_vpu, genpd); in genpd_to_pd()
47 static int meson_gx_pwrc_vpu_power_off(struct generic_pm_domain *genpd) in meson_gx_pwrc_vpu_power_off() argument
49 struct meson_gx_pwrc_vpu *pd = genpd_to_pd(genpd); in meson_gx_pwrc_vpu_power_off()
85 static int meson_g12a_pwrc_vpu_power_off(struct generic_pm_domain *genpd) in meson_g12a_pwrc_vpu_power_off() argument
87 struct meson_gx_pwrc_vpu *pd = genpd_to_pd(genpd); in meson_g12a_pwrc_vpu_power_off()
143 static int meson_gx_pwrc_vpu_power_on(struct generic_pm_domain *genpd) in meson_gx_pwrc_vpu_power_on() argument
145 struct meson_gx_pwrc_vpu *pd = genpd_to_pd(genpd); in meson_gx_pwrc_vpu_power_on()
191 static int meson_g12a_pwrc_vpu_power_on(struct generic_pm_domain *genpd) in meson_g12a_pwrc_vpu_power_on() argument
193 struct meson_gx_pwrc_vpu *pd = genpd_to_pd(genpd); in meson_g12a_pwrc_vpu_power_on()
[all …]
/Linux-v5.4/include/linux/
Dpm_domain.h116 unsigned int (*opp_to_performance_state)(struct generic_pm_domain *genpd,
118 int (*set_performance_state)(struct generic_pm_domain *genpd,
197 int pm_genpd_add_device(struct generic_pm_domain *genpd, struct device *dev);
199 int pm_genpd_add_subdomain(struct generic_pm_domain *genpd,
201 int pm_genpd_remove_subdomain(struct generic_pm_domain *genpd,
203 int pm_genpd_init(struct generic_pm_domain *genpd,
205 int pm_genpd_remove(struct generic_pm_domain *genpd);
219 static inline int pm_genpd_add_device(struct generic_pm_domain *genpd, in pm_genpd_add_device() argument
228 static inline int pm_genpd_add_subdomain(struct generic_pm_domain *genpd, in pm_genpd_add_subdomain() argument
233 static inline int pm_genpd_remove_subdomain(struct generic_pm_domain *genpd, in pm_genpd_remove_subdomain() argument
[all …]
/Linux-v5.4/drivers/firmware/
Dscpi_pm_domain.c16 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()
114 scpi_pd->genpd.name = scpi_pd->name; in scpi_pm_domain_probe()
115 scpi_pd->genpd.power_off = scpi_pd_power_off; in scpi_pm_domain_probe()
116 scpi_pd->genpd.power_on = scpi_pd_power_on; in scpi_pm_domain_probe()
124 pm_genpd_init(&scpi_pd->genpd, NULL, true); in scpi_pm_domain_probe()
/Linux-v5.4/drivers/firmware/arm_scmi/
Dscmi_pm_domain.c15 struct generic_pm_domain genpd; member
21 #define to_scmi_pd(gpd) container_of(gpd, struct scmi_pm_domain, genpd)
88 domains[i] = &scmi_pd->genpd; in scmi_pm_domain_probe()
93 scmi_pd->genpd.name = scmi_pd->name; in scmi_pm_domain_probe()
94 scmi_pd->genpd.power_off = scmi_pd_power_off; in scmi_pm_domain_probe()
95 scmi_pd->genpd.power_on = scmi_pd_power_on; in scmi_pm_domain_probe()
102 pm_genpd_init(&scmi_pd->genpd, NULL, in scmi_pm_domain_probe()
/Linux-v5.4/drivers/soc/rockchip/
Dpm_domains.c67 struct generic_pm_domain genpd; member
86 #define to_rockchip_pd(gpd) container_of(gpd, struct rockchip_pm_domain, genpd)
156 struct generic_pm_domain *genpd = &pd->genpd; in rockchip_pmu_set_idle_request() local
183 genpd->name, val); in rockchip_pmu_set_idle_request()
192 genpd->name, is_idle); in rockchip_pmu_set_idle_request()
267 struct generic_pm_domain *genpd = &pd->genpd; in rockchip_do_pmu_set_power_domain() local
286 genpd->name, is_on); in rockchip_do_pmu_set_power_domain()
343 static int rockchip_pd_attach_dev(struct generic_pm_domain *genpd, in rockchip_pd_attach_dev() argument
350 dev_dbg(dev, "attaching to power domain '%s'\n", genpd->name); in rockchip_pd_attach_dev()
373 static void rockchip_pd_detach_dev(struct generic_pm_domain *genpd, in rockchip_pd_detach_dev() argument
[all …]
/Linux-v5.4/drivers/soc/actions/
Dowl-sps.c39 #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-v5.4/drivers/soc/mediatek/
Dmtk-scpsys.c125 struct generic_pm_domain genpd; member
183 static int scpsys_power_on(struct generic_pm_domain *genpd) in scpsys_power_on() argument
185 struct scp_domain *scpd = container_of(genpd, struct scp_domain, genpd); in scpsys_power_on()
268 dev_err(scp->dev, "Failed to power on domain %s\n", genpd->name); in scpsys_power_on()
273 static int scpsys_power_off(struct generic_pm_domain *genpd) in scpsys_power_off() argument
275 struct scp_domain *scpd = container_of(genpd, struct scp_domain, genpd); in scpsys_power_off()
331 dev_err(scp->dev, "Failed to power off domain %s\n", genpd->name); in scpsys_power_off()
410 struct generic_pm_domain *genpd = &scpd->genpd; in init_scp() local
413 pd_data->domains[i] = genpd; in init_scp()
430 genpd->name = data->name; in init_scp()
[all …]
/Linux-v5.4/drivers/media/platform/qcom/camss/
Dcamss.c402 camss->genpd[id], DL_FLAG_STATELESS | in camss_pm_domain_on()
915 camss->genpd[PM_DOMAIN_VFE0] = dev_pm_domain_attach_by_id( in camss_probe()
917 if (IS_ERR(camss->genpd[PM_DOMAIN_VFE0])) in camss_probe()
918 return PTR_ERR(camss->genpd[PM_DOMAIN_VFE0]); in camss_probe()
920 camss->genpd[PM_DOMAIN_VFE1] = dev_pm_domain_attach_by_id( in camss_probe()
922 if (IS_ERR(camss->genpd[PM_DOMAIN_VFE1])) { in camss_probe()
923 dev_pm_domain_detach(camss->genpd[PM_DOMAIN_VFE0], in camss_probe()
925 return PTR_ERR(camss->genpd[PM_DOMAIN_VFE1]); in camss_probe()
952 dev_pm_domain_detach(camss->genpd[PM_DOMAIN_VFE0], true); in camss_delete()
953 dev_pm_domain_detach(camss->genpd[PM_DOMAIN_VFE1], true); in camss_delete()
Dcamss.h84 struct device *genpd[PM_DOMAIN_COUNT]; member
/Linux-v5.4/drivers/clk/renesas/
Drenesas-cpg-mssr.c451 struct generic_pm_domain genpd; member
463 if (clkspec->np != pd->genpd.dev.of_node || clkspec->args_count != 2) in cpg_mssr_is_pm_clk()
541 struct generic_pm_domain *genpd; in cpg_mssr_add_clk_domain() local
552 genpd = &pd->genpd; in cpg_mssr_add_clk_domain()
553 genpd->name = np->name; in cpg_mssr_add_clk_domain()
554 genpd->flags = GENPD_FLAG_PM_CLK | GENPD_FLAG_ALWAYS_ON | in cpg_mssr_add_clk_domain()
556 genpd->attach_dev = cpg_mssr_attach_dev; in cpg_mssr_add_clk_domain()
557 genpd->detach_dev = cpg_mssr_detach_dev; in cpg_mssr_add_clk_domain()
558 pm_genpd_init(genpd, &pm_domain_always_on_gov, false); in cpg_mssr_add_clk_domain()
561 of_genpd_add_provider_simple(np, genpd); in cpg_mssr_add_clk_domain()
/Linux-v5.4/scripts/gdb/
Dvmlinux-gdb.py38 import linux.genpd
/Linux-v5.4/drivers/gpu/drm/amd/amdgpu/
Damdgpu_acp.c125 static int acp_poweroff(struct generic_pm_domain *genpd) in acp_poweroff() argument
130 apd = container_of(genpd, struct acp_pm_domain, gpd); in acp_poweroff()
146 static int acp_poweron(struct generic_pm_domain *genpd) in acp_poweron() argument
151 apd = container_of(genpd, struct acp_pm_domain, gpd); in acp_poweron()
/Linux-v5.4/drivers/firmware/imx/
Dscu-pd.c171 to_imx_sc_pd(struct generic_pm_domain *genpd) in to_imx_sc_pd() argument
173 return container_of(genpd, struct imx_sc_pm_domain, pd); in to_imx_sc_pd()
/Linux-v5.4/include/soc/tegra/
Dbpmp.h87 struct genpd_onecell_data genpd; member
/Linux-v5.4/drivers/soc/qcom/
Drpmhpd.c282 static unsigned int rpmhpd_get_performance_state(struct generic_pm_domain *genpd, in rpmhpd_get_performance_state() argument
Drpmpd.c331 static unsigned int rpmpd_get_performance(struct generic_pm_domain *genpd, in rpmpd_get_performance() argument