Re: [PATCH 01/01] MFD: add ADC support to DA9052/53 MFD core v2

From: Arnd Bergmann
Date: Mon Feb 20 2012 - 07:07:33 EST


On Monday 20 February 2012, Samuel Ortiz wrote:
> On Fri, Jan 13, 2012 at 08:00:51PM +0530, Ashish Jangam wrote:
> > +struct completion done;
> This shouldn't be a global variable, but a struct da9052 one instead.

Right. Since this thread has showed up in my inbox again, I've
also taken a look at the patch now and noticed another thing:

>> + ret = request_threaded_irq(da9052->irq_base + DA9052_IRQ_ADC_EOM,
>> + NULL, da9052_auxadc_irq,
>> + IRQF_TRIGGER_LOW | IRQF_ONESHOT,
>> + "adc irq", NULL);

First of all, to clarify: The last argument to this function needs to be
the pointer to da9052 so that it is available in the irq handler function.

Also, I would recommend using request_irq instead of request_threaded_irq
here because the function only has a single "complete()" call in it,
just like a threaded IRQ handler has. There is no point going through
another thread just to wake up the one that is blocked.

Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/