Re: [PATCH 1/2] input: misc: add twl4030-pwrbutton driver

Felipe Balbi
2009-02-27T20:39:28Z

On Fri, Feb 27, 2009 at 12:33:44PM -0800, Andrew Morton wrote:
> On Fri, 27 Feb 2009 21:28:02 +0200
> Felipe Balbi <me@felipebalbi.com> wrote:
>
> > +static irqreturn_t powerbutton_irq(int irq, void *dev_id)
> > +{
> > + int err;
> > + u8 value;
> > +
> > +#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
> > +
> > + err = twl4030_i2c_read_u8(TWL4030_MODULE_PM_MASTER, &value,
> > + STS_HW_CONDITIONS);
> > + if (!err) {
> > + input_report_key(powerbutton_dev, KEY_POWER,
> > + value & PWR_PWRON_IRQ);
> > + } else {
> > + dev_err(dbg_dev, "twl4030: i2c error %d while reading TWL4030"
> > + " PM_MASTER STS_HW_CONDITIONS register\n", err);
> > + }
> > +
> > + return IRQ_HANDLED;
> > +}
>
> Tell us some more about this lockdep thing ;)

David Brownell can comment better about it, that came from him when we
were converting twl4030 driver(s) to a more readable form :-)

If you take a look at all twl4030's children, you'll all of them needed
that.

Dave, could you comment, please ?

--
balbi