Lines Matching full:subdomain

285 	 * Also note that link->performance_state (subdomain's performance state  in _genpd_reeval_performance_state()
288 * of the devices/sub-domains of the subdomain) and so can have a in _genpd_reeval_performance_state()
688 * (2) When the domain has a subdomain being powered on. in genpd_power_off()
861 * genpd_power_off_work_fn - Power off PM domain whose subdomain count is 0.
1844 struct generic_pm_domain *subdomain) in genpd_add_subdomain() argument
1849 if (IS_ERR_OR_NULL(genpd) || IS_ERR_OR_NULL(subdomain) in genpd_add_subdomain()
1850 || genpd == subdomain) in genpd_add_subdomain()
1855 * context, ensure that the subdomain can also be in genpd_add_subdomain()
1858 if (!genpd_is_irq_safe(genpd) && genpd_is_irq_safe(subdomain)) { in genpd_add_subdomain()
1859 WARN(1, "Parent %s of subdomain %s must be IRQ safe\n", in genpd_add_subdomain()
1860 genpd->name, subdomain->name); in genpd_add_subdomain()
1868 genpd_lock(subdomain); in genpd_add_subdomain()
1871 if (!genpd_status_on(genpd) && genpd_status_on(subdomain)) { in genpd_add_subdomain()
1877 if (itr->child == subdomain && itr->parent == genpd) { in genpd_add_subdomain()
1885 link->child = subdomain; in genpd_add_subdomain()
1886 list_add_tail(&link->child_node, &subdomain->child_links); in genpd_add_subdomain()
1887 if (genpd_status_on(subdomain)) in genpd_add_subdomain()
1892 genpd_unlock(subdomain); in genpd_add_subdomain()
1899 * pm_genpd_add_subdomain - Add a subdomain to an I/O PM domain.
1900 * @genpd: Leader PM domain to add the subdomain to.
1901 * @subdomain: Subdomain to be added.
1904 struct generic_pm_domain *subdomain) in pm_genpd_add_subdomain() argument
1909 ret = genpd_add_subdomain(genpd, subdomain); in pm_genpd_add_subdomain()
1917 * pm_genpd_remove_subdomain - Remove a subdomain from an I/O PM domain.
1918 * @genpd: Leader PM domain to remove the subdomain from.
1919 * @subdomain: Subdomain to be removed.
1922 struct generic_pm_domain *subdomain) in pm_genpd_remove_subdomain() argument
1927 if (IS_ERR_OR_NULL(genpd) || IS_ERR_OR_NULL(subdomain)) in pm_genpd_remove_subdomain()
1930 genpd_lock(subdomain); in pm_genpd_remove_subdomain()
1933 if (!list_empty(&subdomain->parent_links) || subdomain->device_count) { in pm_genpd_remove_subdomain()
1934 pr_warn("%s: unable to remove subdomain %s\n", in pm_genpd_remove_subdomain()
1935 genpd->name, subdomain->name); in pm_genpd_remove_subdomain()
1941 if (link->child != subdomain) in pm_genpd_remove_subdomain()
1947 if (genpd_status_on(subdomain)) in pm_genpd_remove_subdomain()
1956 genpd_unlock(subdomain); in pm_genpd_remove_subdomain()
2163 * - Removes the PM domain as a subdomain to any parent domains,
2548 * of_genpd_add_subdomain - Add a subdomain to an I/O PM domain.
2550 * @subdomain_spec: OF phandle args to use for subdomain look-up
2552 * Looks-up a parent PM domain and subdomain based upon phandle args
2553 * provided and adds the subdomain to the parent PM domain. Returns a
2559 struct generic_pm_domain *parent, *subdomain; in of_genpd_add_subdomain() local
2570 subdomain = genpd_get_from_provider(subdomain_spec); in of_genpd_add_subdomain()
2571 if (IS_ERR(subdomain)) { in of_genpd_add_subdomain()
2572 ret = PTR_ERR(subdomain); in of_genpd_add_subdomain()
2576 ret = genpd_add_subdomain(parent, subdomain); in of_genpd_add_subdomain()
2586 * of_genpd_remove_subdomain - Remove a subdomain from an I/O PM domain.
2588 * @subdomain_spec: OF phandle args to use for subdomain look-up
2590 * Looks-up a parent PM domain and subdomain based upon phandle args
2591 * provided and removes the subdomain from the parent PM domain. Returns a
2597 struct generic_pm_domain *parent, *subdomain; in of_genpd_remove_subdomain() local
2608 subdomain = genpd_get_from_provider(subdomain_spec); in of_genpd_remove_subdomain()
2609 if (IS_ERR(subdomain)) { in of_genpd_remove_subdomain()
2610 ret = PTR_ERR(subdomain); in of_genpd_remove_subdomain()
2614 ret = pm_genpd_remove_subdomain(parent, subdomain); in of_genpd_remove_subdomain()