aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/base
diff options
context:
space:
mode:
authorJon Hunter <jonathanh@nvidia.com>2016-09-12 07:01:08 -0400
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2016-09-12 20:49:33 -0400
commitf58d4e5ab0ca3453f091eab514474e9fdbfc539f (patch)
treebd2ee3cec9ddd518b0502a2e42de09f7333fa3e0 /drivers/base
parent3468c9d9ef5cc0f5375b7bc0b2ab360b559fc1a9 (diff)
PM / Domains: Don't expose generic_pm_domain structure to clients
There should be no need to expose the generic_pm_domain structure to clients and this eliminates the need to implement reference counting for any external reference to a PM domain. Therefore, make the functions pm_genpd_lookup_dev() and of_genpd_get_from_provider() private to the PM domain core. The functions are renamed in accordance with the naming conventions for genpd static functions. Signed-off-by: Jon Hunter <jonathanh@nvidia.com> Acked-by: Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/base')
-rw-r--r--drivers/base/power/domain.c19
1 files changed, 9 insertions, 10 deletions
diff --git a/drivers/base/power/domain.c b/drivers/base/power/domain.c
index e12d3a8a29a9..d8c1eabc7117 100644
--- a/drivers/base/power/domain.c
+++ b/drivers/base/power/domain.c
@@ -45,7 +45,7 @@ static DEFINE_MUTEX(gpd_list_lock);
45 * and checks that the PM domain pointer is a real generic PM domain. 45 * and checks that the PM domain pointer is a real generic PM domain.
46 * Any failure results in NULL being returned. 46 * Any failure results in NULL being returned.
47 */ 47 */
48struct generic_pm_domain *pm_genpd_lookup_dev(struct device *dev) 48static struct generic_pm_domain *genpd_lookup_dev(struct device *dev)
49{ 49{
50 struct generic_pm_domain *genpd = NULL, *gpd; 50 struct generic_pm_domain *genpd = NULL, *gpd;
51 51
@@ -1119,7 +1119,7 @@ int pm_genpd_remove_device(struct generic_pm_domain *genpd,
1119 1119
1120 dev_dbg(dev, "%s()\n", __func__); 1120 dev_dbg(dev, "%s()\n", __func__);
1121 1121
1122 if (!genpd || genpd != pm_genpd_lookup_dev(dev)) 1122 if (!genpd || genpd != genpd_lookup_dev(dev))
1123 return -EINVAL; 1123 return -EINVAL;
1124 1124
1125 /* The above validation also means we have existing domain_data. */ 1125 /* The above validation also means we have existing domain_data. */
@@ -1466,7 +1466,7 @@ void of_genpd_del_provider(struct device_node *np)
1466EXPORT_SYMBOL_GPL(of_genpd_del_provider); 1466EXPORT_SYMBOL_GPL(of_genpd_del_provider);
1467 1467
1468/** 1468/**
1469 * of_genpd_get_from_provider() - Look-up PM domain 1469 * genpd_get_from_provider() - Look-up PM domain
1470 * @genpdspec: OF phandle args to use for look-up 1470 * @genpdspec: OF phandle args to use for look-up
1471 * 1471 *
1472 * Looks for a PM domain provider under the node specified by @genpdspec and if 1472 * Looks for a PM domain provider under the node specified by @genpdspec and if
@@ -1476,7 +1476,7 @@ EXPORT_SYMBOL_GPL(of_genpd_del_provider);
1476 * Returns a valid pointer to struct generic_pm_domain on success or ERR_PTR() 1476 * Returns a valid pointer to struct generic_pm_domain on success or ERR_PTR()
1477 * on failure. 1477 * on failure.
1478 */ 1478 */
1479struct generic_pm_domain *of_genpd_get_from_provider( 1479static struct generic_pm_domain *genpd_get_from_provider(
1480 struct of_phandle_args *genpdspec) 1480 struct of_phandle_args *genpdspec)
1481{ 1481{
1482 struct generic_pm_domain *genpd = ERR_PTR(-ENOENT); 1482 struct generic_pm_domain *genpd = ERR_PTR(-ENOENT);
@@ -1499,7 +1499,6 @@ struct generic_pm_domain *of_genpd_get_from_provider(
1499 1499
1500 return genpd; 1500 return genpd;
1501} 1501}
1502EXPORT_SYMBOL_GPL(of_genpd_get_from_provider);
1503 1502
1504/** 1503/**
1505 * of_genpd_add_device() - Add a device to an I/O PM domain 1504 * of_genpd_add_device() - Add a device to an I/O PM domain
@@ -1513,7 +1512,7 @@ int of_genpd_add_device(struct of_phandle_args *genpdspec, struct device *dev)
1513{ 1512{
1514 struct generic_pm_domain *genpd; 1513 struct generic_pm_domain *genpd;
1515 1514
1516 genpd = of_genpd_get_from_provider(genpdspec); 1515 genpd = genpd_get_from_provider(genpdspec);
1517 if (IS_ERR(genpd)) 1516 if (IS_ERR(genpd))
1518 return PTR_ERR(genpd); 1517 return PTR_ERR(genpd);
1519 1518
@@ -1535,11 +1534,11 @@ int of_genpd_add_subdomain(struct of_phandle_args *parent_spec,
1535{ 1534{
1536 struct generic_pm_domain *parent, *subdomain; 1535 struct generic_pm_domain *parent, *subdomain;
1537 1536
1538 parent = of_genpd_get_from_provider(parent_spec); 1537 parent = genpd_get_from_provider(parent_spec);
1539 if (IS_ERR(parent)) 1538 if (IS_ERR(parent))
1540 return PTR_ERR(parent); 1539 return PTR_ERR(parent);
1541 1540
1542 subdomain = of_genpd_get_from_provider(subdomain_spec); 1541 subdomain = genpd_get_from_provider(subdomain_spec);
1543 if (IS_ERR(subdomain)) 1542 if (IS_ERR(subdomain))
1544 return PTR_ERR(subdomain); 1543 return PTR_ERR(subdomain);
1545 1544
@@ -1561,7 +1560,7 @@ static void genpd_dev_pm_detach(struct device *dev, bool power_off)
1561 unsigned int i; 1560 unsigned int i;
1562 int ret = 0; 1561 int ret = 0;
1563 1562
1564 pd = pm_genpd_lookup_dev(dev); 1563 pd = genpd_lookup_dev(dev);
1565 if (!pd) 1564 if (!pd)
1566 return; 1565 return;
1567 1566
@@ -1642,7 +1641,7 @@ int genpd_dev_pm_attach(struct device *dev)
1642 return -ENOENT; 1641 return -ENOENT;
1643 } 1642 }
1644 1643
1645 pd = of_genpd_get_from_provider(&pd_args); 1644 pd = genpd_get_from_provider(&pd_args);
1646 of_node_put(pd_args.np); 1645 of_node_put(pd_args.np);
1647 if (IS_ERR(pd)) { 1646 if (IS_ERR(pd)) {
1648 dev_dbg(dev, "%s() failed to find PM domain: %ld\n", 1647 dev_dbg(dev, "%s() failed to find PM domain: %ld\n",