aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/clk/clk.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/clk/clk.c')
-rw-r--r--drivers/clk/clk.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c
index 62ecac53b0a2..c6e8866289b4 100644
--- a/drivers/clk/clk.c
+++ b/drivers/clk/clk.c
@@ -587,8 +587,12 @@ unsigned long __clk_round_rate(struct clk *clk, unsigned long rate)
587 if (!clk) 587 if (!clk)
588 return -EINVAL; 588 return -EINVAL;
589 589
590 if (!clk->ops->round_rate) 590 if (!clk->ops->round_rate) {
591 return clk->rate; 591 if (clk->flags & CLK_SET_RATE_PARENT)
592 return __clk_round_rate(clk->parent, rate);
593 else
594 return clk->rate;
595 }
592 596
593 if (clk->parent) 597 if (clk->parent)
594 parent_rate = clk->parent->rate; 598 parent_rate = clk->parent->rate;