Skip to content

Commit

Permalink
sh: clkfwk: Handle NULL clkops for root clocks.
Browse files Browse the repository at this point in the history
root clocks may simply be placeholders for rate and ancestry information,
and have no real associated operations of their own. Account for this,
so we are still able to use these sorts of clocks for rate propagation.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
  • Loading branch information
Paul Mundt committed May 13, 2009
1 parent af777ce commit d672fef
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions arch/sh/kernel/cpu/clock.c
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ void propagate_rate(struct clk *tclk)
struct clk *clkp;

list_for_each_entry(clkp, &tclk->children, sibling) {
if (clkp->ops->recalc)
if (clkp->ops && clkp->ops->recalc)
clkp->rate = clkp->ops->recalc(clkp);
propagate_rate(clkp);
}
Expand Down Expand Up @@ -196,7 +196,7 @@ void recalculate_root_clocks(void)
struct clk *clkp;

list_for_each_entry(clkp, &root_clks, sibling) {
if (clkp->ops->recalc)
if (clkp->ops && clkp->ops->recalc)
clkp->rate = clkp->ops->recalc(clkp);
propagate_rate(clkp);
}
Expand Down Expand Up @@ -224,7 +224,7 @@ int clk_register(struct clk *clk)
list_add(&clk->sibling, &root_clks);

list_add(&clk->node, &clock_list);
if (clk->ops->init)
if (clk->ops && clk->ops->init)
clk->ops->init(clk);
mutex_unlock(&clock_list_sem);

Expand Down

0 comments on commit d672fef

Please sign in to comment.