summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/tegra2_clocks.c
diff options
context:
space:
mode:
authorAlex Frid <afrid@nvidia.com>2011-10-01 16:00:51 -0700
committerDan Willemsen <dwillemsen@nvidia.com>2012-03-22 23:48:03 -0700
commit79d73b75702faf530cacf769c8389b9aa8760a98 (patch)
treeb1c0d37cf26dba2b57a0493126960e81049b442a /arch/arm/mach-tegra/tegra2_clocks.c
parent8dbde2fa832663892c307e36d6692405f7399ce2 (diff)
ARM: tegra: clock: Re-factor shared bus locking
Current code: - on tegra2 unnecessary covers with bus lock shared user state update - on tegra3 does not cover shared bus rate update at all Modified to cover with bus lock shared bus rate update only on both tegra2 and tegra3. Change-Id: Iaa2597136a521adf4285c61eb579c917c2c7965c Reviewed-on: http://git-master/r/55640 Tested-by: Aleksandr Frid <afrid@nvidia.com> Reviewed-by: Prashant Gaikwad <pgaikwad@nvidia.com> Tested-by: Prashant Gaikwad <pgaikwad@nvidia.com> Reviewed-by: Mayuresh Kulkarni <mkulkarni@nvidia.com> Reviewed-by: Scott Williams <scwilliams@nvidia.com> Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com> Rebase-Id: R1b28f32ae37d47c56855023b18c943bf8fd93c74
Diffstat (limited to 'arch/arm/mach-tegra/tegra2_clocks.c')
-rw-r--r--arch/arm/mach-tegra/tegra2_clocks.c12
1 files changed, 0 insertions, 12 deletions
diff --git a/arch/arm/mach-tegra/tegra2_clocks.c b/arch/arm/mach-tegra/tegra2_clocks.c
index c0036a82cacd..6b93c714e91d 100644
--- a/arch/arm/mach-tegra/tegra2_clocks.c
+++ b/arch/arm/mach-tegra/tegra2_clocks.c
@@ -1516,13 +1516,9 @@ static int tegra_clk_shared_bus_set_rate(struct clk *c, unsigned long rate)
if (new_rate < 0)
return new_rate;
- clk_lock_save(c->parent, &flags);
-
c->u.shared_bus_user.rate = new_rate;
ret = tegra_clk_shared_bus_update(c->parent);
- clk_unlock_restore(c->parent, &flags);
-
return ret;
}
@@ -1536,15 +1532,11 @@ static int tegra_clk_shared_bus_enable(struct clk *c)
unsigned long flags;
int ret;
- clk_lock_save(c->parent, &flags);
-
c->u.shared_bus_user.enabled = true;
ret = tegra_clk_shared_bus_update(c->parent);
if (strcmp(c->name, "avp.sclk") == 0)
tegra2_statmon_start();
- clk_unlock_restore(c->parent, &flags);
-
return ret;
}
@@ -1553,15 +1545,11 @@ static void tegra_clk_shared_bus_disable(struct clk *c)
unsigned long flags;
int ret;
- clk_lock_save(c->parent, &flags);
-
if (strcmp(c->name, "avp.sclk") == 0)
tegra2_statmon_stop();
c->u.shared_bus_user.enabled = false;
ret = tegra_clk_shared_bus_update(c->parent);
WARN_ON_ONCE(ret);
-
- clk_unlock_restore(c->parent, &flags);
}
static struct clk_ops tegra_clk_shared_bus_ops = {