summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/clock.c
diff options
context:
space:
mode:
authormchourasia <mchourasia@nvidia.com>2011-06-27 12:04:21 +0530
committerDan Willemsen <dwillemsen@nvidia.com>2011-11-30 21:47:26 -0800
commit8638d91defeaa6cc5a790e50e0d578841173a5e5 (patch)
treefe9603b431015b879996de5d65dc4783d3f8ea84 /arch/arm/mach-tegra/clock.c
parent01b9f5a3ab49189ad10b36f9ecd0206d3e1b36c0 (diff)
tegra: clocks: Fix in clock settings
clk_disable_locked should not be called when clk_enable_locked is failed. Original-Change-Id: I2524ec0198f62de2487723676ca7657d15757eda Reviewed-on: http://git-master/r/38273 Reviewed-by: Varun Colbert <vcolbert@nvidia.com> Tested-by: Varun Colbert <vcolbert@nvidia.com> Rebase-Id: R1598bf84619449922c599d611a84dec791047837
Diffstat (limited to 'arch/arm/mach-tegra/clock.c')
-rw-r--r--arch/arm/mach-tegra/clock.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/arm/mach-tegra/clock.c b/arch/arm/mach-tegra/clock.c
index 2c4d56542166..99fad6ebf034 100644
--- a/arch/arm/mach-tegra/clock.c
+++ b/arch/arm/mach-tegra/clock.c
@@ -367,10 +367,10 @@ int clk_set_parent(struct clk *c, struct clk *parent)
*/
if ((c->refcnt == 0) && (c->flags & MUX)) {
pr_debug("Setting parent of clock %s with refcnt 0\n", c->name);
- disable = true;
ret = clk_enable_locked(c);
if (ret)
goto out;
+ disable = true;
}
if (clk_is_auto_dvfs(c) && c->refcnt > 0 &&
@@ -438,10 +438,10 @@ int clk_set_rate_locked(struct clk *c, unsigned long rate)
if ((c->refcnt == 0) && (c->flags & (DIV_U71 | DIV_U16)) &&
clk_is_auto_dvfs(c)) {
pr_debug("Setting rate of clock %s with refcnt 0\n", c->name);
- disable = true;
ret = clk_enable_locked(c);
if (ret)
goto out;
+ disable = true;
}
if (clk_is_auto_dvfs(c) && rate > old_rate && c->refcnt > 0) {