On Wed, Jul 22, 2009 at 09:39:32AM -0700, David Brownell wrote:
The normal model is that boards don't get involved with that level of
logic ... all IRQs get set up once on generic code, and flow handlers
don't change. Or if they do change, it's done when changing the IRQ's
trigger mode from edge to level, or vice versa.
Can that be cleaned up a bit, so that the handle_level_oneshot_irq()
and unmask_oneshot_irq() stuff kicks in automatically when needed,
instead of requiring board-specific (or driver-specific) code to get
that stuff right?
Thomas was reluctant to do that but up till now every single user has
been asking for it. A flag in the driver requesting the behaviour
sounds OK to me, there are devices that can use threaded IRQs while
interacting with the device in the primary handler NAPI style.