summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra/tegra2_clocks.c
diff options
context:
space:
mode:
authorPreetham Chandru <pchandru@nvidia.com>2011-09-08 20:43:56 +0530
committerDan Willemsen <dwillemsen@nvidia.com>2011-11-30 21:49:27 -0800
commit33d146285173f2b1c8781511384d87d808359bee (patch)
tree9d99d061ffcec8675382a139d1cffda2b91978a2 /arch/arm/mach-tegra/tegra2_clocks.c
parent311d853f77b97a7b18ff9761d9bae78d4d80e113 (diff)
ARM: tegra2: clock: Update bus operations
Relaxed bus set rate success condition: instead of checking for the exact rate check for the closest rate. This makes bus clocks configurable from sources/PLLs with variable frequencies. Bug: 869054 Signed-off-by: Preetham Chandru <pchandru@nvidia.com> Reviewed-on: http://git-master/r/50747 (cherry picked from commit 61313ed2494424513cb6e42c22cb7ca31f21473e) Change-Id: Id4c9ff63da4cefb1d13888a627f0757a3b941994 Reviewed-on: http://git-master/r/56659 Tested-by: Preetham Chandru <pchandru@nvidia.com> Reviewed-by: Aleksandr Frid <afrid@nvidia.com> Reviewed-by: Mursalin Akon <makon@nvidia.com> Reviewed-by: Allen Martin <amartin@nvidia.com> Rebase-Id: R57ac9f6cebe9df5e02dadac345653e2f3cf23e83
Diffstat (limited to 'arch/arm/mach-tegra/tegra2_clocks.c')
-rw-r--r--arch/arm/mach-tegra/tegra2_clocks.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm/mach-tegra/tegra2_clocks.c b/arch/arm/mach-tegra/tegra2_clocks.c
index 3ae10fcb7e5d..4018caee5129 100644
--- a/arch/arm/mach-tegra/tegra2_clocks.c
+++ b/arch/arm/mach-tegra/tegra2_clocks.c
@@ -596,7 +596,7 @@ static int tegra2_bus_clk_set_rate(struct clk *c, unsigned long rate)
val = clk_readl(c->reg);
for (i = 1; i <= 4; i++) {
- if (rate == parent_rate / i) {
+ if (rate >= parent_rate / i) {
val &= ~(BUS_CLK_DIV_MASK << c->reg_shift);
val |= (i - 1) << c->reg_shift;
clk_writel(val, c->reg);