summaryrefslogtreecommitdiffstats
path: root/drivers/opp/core.c
diff options
context:
space:
mode:
authorViresh Kumar <viresh.kumar@linaro.org>2018-06-07 11:20:43 +0200
committerViresh Kumar <viresh.kumar@linaro.org>2018-11-05 03:10:42 +0100
commit5d6d106fa45501ea6494a8653adbf2bee4a6f803 (patch)
treecbaea1ef9c2dc2bfb65bd8bb390f1922ca71a1db /drivers/opp/core.c
parentOPP: Separate out custom OPP handler specific code (diff)
downloadlinux-5d6d106fa45501ea6494a8653adbf2bee4a6f803.tar.xz
linux-5d6d106fa45501ea6494a8653adbf2bee4a6f803.zip
OPP: Populate required opp tables from "required-opps" property
The current implementation works only for the case where a single phandle is present in the "required-opps" property, while DT allows multiple phandles to be present there. This patch adds new infrastructure to parse all the phandles present in "required-opps" property and save pointers of the required OPP's OPP tables. These will be used by later commits. Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Diffstat (limited to 'drivers/opp/core.c')
-rw-r--r--drivers/opp/core.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/opp/core.c b/drivers/opp/core.c
index ebb3b648e0fd..85174a5c4850 100644
--- a/drivers/opp/core.c
+++ b/drivers/opp/core.c
@@ -901,6 +901,8 @@ static void _opp_table_kref_release(struct kref *kref)
struct opp_table *opp_table = container_of(kref, struct opp_table, kref);
struct opp_device *opp_dev, *temp;
+ _of_clear_opp_table(opp_table);
+
/* Release clk */
if (!IS_ERR(opp_table->clk))
clk_put(opp_table->clk);