Re: Threaded interrupts for synaptic touchscreen in HTC dream
From: Thomas Gleixner <hidden>
Date: 2009-07-22 14:53:10
Also in:
linux-i2c, lkml
On Wed, 22 Jul 2009, Mark Brown wrote:
On Wed, Jul 22, 2009 at 04:18:26PM +0200, Thomas Gleixner wrote:quoted
On Wed, 22 Jul 2009, Peter Zijlstra wrote:quoted
quoted
Also, how important is it that subhandler1..n run in their own thread? That is, can't we let them run from the thread that is otherwise waiting for the completino anyway?quoted
In those cases I suspect we can do that. I guess there can be async handling as well: the main handler queries the pending interrupts, masks them, wakes the handlers and returns. No wait for all threads to finish necessary before unmasking the main interrupt line.The chips I'm deling with can certainly support doing that but I'm not sure there'd be enormous advantages - a lot of the interrupt handlers will either be trivial (eg, RTC ticks or alarms) or be serialised by a need to interact with the chip anyway. I'd expect this to be generally true, though ICBW.
So in your case it would be possible to run the various subdevice thread_fn handlers from your main interrupt thread one after each other ? Well, that indeed makes it a candidate for a nested structure handling, where your main thread calls handle_nested_irq(irq) which simply runs the thread function of that nested interrupt while keeping the semantics vs. disable/enable ... intact. Thanks, tglx