On Fri, Nov 27, 2009 at 04:44:20PM +0200, Grazvydas Ignotas wrote: > TWL4030/TPS65950 is a multi-function device with integrated charger, > which allows charging from AC or USB. This driver enables the > charger and provides several monitoring functions. > > Signed-off-by: Grazvydas Ignotas <notasas@xxxxxxxxx> > --- Thanks for the patch. [...] > +/* > + * Attend to TWL4030 CHG_PRES (AC charger presence) events > + */ > +static irqreturn_t twl4030_charger_interrupt(int irq, void *_di) > +{ > + struct twl4030_bci_device_info *di = _di; > + > +#ifdef CONFIG_LOCKDEP > + /* WORKAROUND for lockdep forcing IRQF_DISABLED on us, which > + * we don't want and can't tolerate. Although it might be > + * friendlier not to borrow this thread context... > + */ > + local_irq_enable(); > +#endif Can you explain why the driver can't tolerate disabled irqs? Calling schedule_delayed_work() from an irq context should be OK. > + schedule_delayed_work(&di->bat_work, msecs_to_jiffies(BCI_DELAY)); > + > + return IRQ_HANDLED; > +} -- Anton Vorontsov email: cbouatmailru@xxxxxxxxx irc://irc.freenode.net/bd2 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html