[PATCH] clk: allow clocks without parents to change rate

Linus Walleij linus.walleij at linaro.org
Thu Jul 12 06:50:46 EDT 2012


On Thu, Jul 12, 2012 at 1:42 AM, Mike Turquette <mturquette at ti.com> wrote:

> This has been fixed in Pawell's patch, "clk: Check parent for NULL in
> clk_change_rate".

Yes, that'll probably work.

A small nitpick though:

I have slightly different semantics, Pawel's patch assigns zero if
parent is NULL, then use that as fallback, whereas I check for the
parent being NULL all the way. I was worried that the old sematics
could change like this:

So here it takes that:

+       if (clk->parent)
+               best_parent_rate = clk->parent->rate;
+

And I was cautious that if this changes the parent rate:

+               clk->ops->set_rate(clk->hw, clk->new_rate, best_parent_rate);

Then this passes the old parent rate to the recalc function:

+               clk->rate = clk->ops->recalc_rate(clk->hw, best_parent_rate);

It has no side-effects on my system but I worried about
others, so I just left the behaviour to re-read the rate from the parent
every time if possible.

Yours,
Linus Walleij



More information about the linux-arm-kernel mailing list