Messages in this thread | | | Date | Fri, 11 Jun 2010 10:14:35 +0200 | From | Lothar Waßmann <> | Subject | Re: [RFC,PATCH 1/2] Add a common struct clk |
| |
Hi,
> > > +static inline int clk_enable(struct clk *clk) > > > +{ > > > + int ret = 0; > > > + > > > + if (!clk->ops->enable) > > > + return 0; > > > + > > > + mutex_lock(&clk->mutex); > > > + if (!clk->enable_count) > > > + ret = clk->ops->enable(clk); > > > + > > > + if (!ret) > > > + clk->enable_count++; > > > + mutex_unlock(&clk->mutex); > > > + > > > + return ret; > > > +} > > Using a mutex in clk_enable()/clk_disable() is a bad idea, since that makes it impossible to call those functions in interrupt context.
Lothar Waßmann -- ___________________________________________________________
Ka-Ro electronics GmbH | Pascalstraße 22 | D - 52076 Aachen Phone: +49 2408 1402-0 | Fax: +49 2408 1402-10 Geschäftsführer: Matthias Kaussen Handelsregistereintrag: Amtsgericht Aachen, HRB 4996
www.karo-electronics.de | info@karo-electronics.de ___________________________________________________________ -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |