Messages in this thread | | | Date | Tue, 1 Feb 2011 15:06:09 -0500 (EST) | From | Nicolas Pitre <> | Subject | Re: Locking in the clk API, part 2: clk_prepare/clk_unprepare |
| |
On Tue, 1 Feb 2011, Uwe Kleine-König wrote:
> My motivation for a more complicated clk_prepare was to make clk_prepare > atomic when that's possible (i.e. when the clk is already prepared) and > call it before the enable callback in clk_enable. Then everything > behaves nicely even if clk_enable is called from atomic context provided > that the clock was prepared before (or doesn't need to).
NOOOOOOOOO!!!
We _do_ want drivers to _always_ call clk_prepare() in sleepable context, and _then_ always call clk_enable() in whatever context they wish. Period.
Nicolas | |