Re: [PATCH v2 1/4] [RFC] clk: new locking scheme for reentrancy

2012-09-04 Thread Shawn Guo
On Wed, Aug 15, 2012 at 04:43:31PM -0700, Mike Turquette wrote: > +void __clk_unprepare(struct clk *clk, struct clk *top) > +{ > if (clk->ops->unprepare) > clk->ops->unprepare(clk->hw); > > - __clk_unprepare(clk->parent); > + if (clk != top) > + __clk_unpre

Re: [PATCH v2 1/4] [RFC] clk: new locking scheme for reentrancy

2012-08-27 Thread Pankaj Jangra
Hi Mike, On Thu, Aug 16, 2012 at 5:13 AM, Mike Turquette wrote: > The global prepare_lock mutex prevents concurrent operations in the clk > api. This incurs a performance penalty when unrelated clock subtrees > are contending for the lock. > > Additionally there are use cases which benefit from

[PATCH v2 1/4] [RFC] clk: new locking scheme for reentrancy

2012-08-15 Thread Mike Turquette
The global prepare_lock mutex prevents concurrent operations in the clk api. This incurs a performance penalty when unrelated clock subtrees are contending for the lock. Additionally there are use cases which benefit from reentrancy into the clk api. A simple example is reparenting a mux clock w