Lines Matching full:domain
3 * ZynqMP Generic PM domain support
23 /* Flag stating if PM nodes mapped to the PM domain has been requested */
30 * @gpd: Generic power domain
31 * @node_id: PM node ID corresponding to device inside PM domain
32 * @flags: ZynqMP PM domain flags
64 * zynqmp_gpd_power_on() - Power on PM domain
65 * @domain: Generic PM domain
67 * This function is called before devices inside a PM domain are resumed, to
68 * power on PM domain.
72 static int zynqmp_gpd_power_on(struct generic_pm_domain *domain) in zynqmp_gpd_power_on() argument
77 pd = container_of(domain, struct zynqmp_pm_domain, gpd); in zynqmp_gpd_power_on()
84 __func__, domain->name, pd->node_id, ret); in zynqmp_gpd_power_on()
88 pr_debug("%s() Powered on %s domain\n", __func__, domain->name); in zynqmp_gpd_power_on()
93 * zynqmp_gpd_power_off() - Power off PM domain
94 * @domain: Generic PM domain
96 * This function is called after devices inside a PM domain are suspended, to
97 * power off PM domain.
101 static int zynqmp_gpd_power_off(struct generic_pm_domain *domain) in zynqmp_gpd_power_off() argument
109 pd = container_of(domain, struct zynqmp_pm_domain, gpd); in zynqmp_gpd_power_off()
111 /* If domain is already released there is nothing to be done */ in zynqmp_gpd_power_off()
113 pr_debug("%s() %s domain is already released\n", in zynqmp_gpd_power_off()
114 __func__, domain->name); in zynqmp_gpd_power_off()
118 list_for_each_entry_safe(pdd, tmp, &domain->dev_list, list_node) { in zynqmp_gpd_power_off()
123 domain->name); in zynqmp_gpd_power_off()
132 * If powering down of any node inside this domain fails, in zynqmp_gpd_power_off()
137 __func__, domain->name, pd->node_id, ret); in zynqmp_gpd_power_off()
141 pr_debug("%s() Powered off %s domain\n", __func__, domain->name); in zynqmp_gpd_power_off()
146 * zynqmp_gpd_attach_dev() - Attach device to the PM domain
147 * @domain: Generic PM domain
152 static int zynqmp_gpd_attach_dev(struct generic_pm_domain *domain, in zynqmp_gpd_attach_dev() argument
158 pd = container_of(domain, struct zynqmp_pm_domain, gpd); in zynqmp_gpd_attach_dev()
161 if (domain->device_count) in zynqmp_gpd_attach_dev()
169 __func__, domain->name, pd->node_id, ret); in zynqmp_gpd_attach_dev()
175 pr_debug("%s() %s attached to %s domain\n", __func__, in zynqmp_gpd_attach_dev()
176 dev_name(dev), domain->name); in zynqmp_gpd_attach_dev()
181 * zynqmp_gpd_detach_dev() - Detach device from the PM domain
182 * @domain: Generic PM domain
185 static void zynqmp_gpd_detach_dev(struct generic_pm_domain *domain, in zynqmp_gpd_detach_dev() argument
191 pd = container_of(domain, struct zynqmp_pm_domain, gpd); in zynqmp_gpd_detach_dev()
194 if (domain->device_count) in zynqmp_gpd_detach_dev()
201 __func__, domain->name, pd->node_id, ret); in zynqmp_gpd_detach_dev()
207 pr_debug("%s() %s detached from %s domain\n", __func__, in zynqmp_gpd_detach_dev()
208 dev_name(dev), domain->name); in zynqmp_gpd_detach_dev()
230 * Add index in empty node_id of power domain list as no existing in zynqmp_gpd_xlate()
231 * power domain found for current index. in zynqmp_gpd_xlate()
276 pd->gpd.name = kasprintf(GFP_KERNEL, "domain%d", i); in zynqmp_gpd_probe()