Message ID | 518C0097.50300@codeaurora.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 09/05/13 21:01, Stephen Boyd wrote: > I believe we'll need to update the check in __clk_init() to allow you to > have either a .round_rate or a .determine_rate op if you have a > .recalc_rate op. Right now it fails to register the clock and then > oopses later on while setting up clock debugfs. > > Here's a (probably whitespace damaged) patch for the first one. Thanks, I'll incorporate that. Cheers James
diff --git a/drivers/clk/clk.c b/drivers/clk/clk.c index e6e759e..d56291c 100644 --- a/drivers/clk/clk.c +++ b/drivers/clk/clk.c @@ -1668,8 +1668,8 @@ int __clk_init(struct device *dev, struct clk *clk) /* check that clk_ops are sane. See Documentation/clk.txt */ if (clk->ops->set_rate && - !(clk->ops->round_rate && clk->ops->recalc_rate)) { - pr_warning("%s: %s must implement .round_rate & .recalc_rate\n", + !((clk->ops->round_rate || clk->ops->determine_rate) && clk->ops->recalc_rate)) { + pr_warning("%s: %s must implement .round_rate or .determine_rate in addition to .recalc_rate\n", __func__, clk->name); ret = -EINVAL; goto out;