Re: [PATCH] genirq: handle shared irqs in handle_nested_irq()

From: Thomas Gleixner
Date: Fri Oct 29 2010 - 11:27:34 EST


On Fri, 29 Oct 2010, Rabin Vincent wrote:

> On Fri, Oct 29, 2010 at 12:24 AM, Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote:
> > On Thu, 28 Oct 2010, Rabin Vincent wrote:
> >> Allow shared irqs to work when nested threads are used for handling
> >> threaded interrupts.
> >
> > Why do we want this ? handle_nested_irq() is called from a interrupt
> > demultiplexer, so why would we need shared interrupts for this ?
>
> Threaded IRQ + handle_nested_irq() is used by I2C GPIO expander drivers
> like chained hander + generic_handle_irq() is used by on-chip GPIO
> drivers. If two irq handlers are registered on an on-chip GPIO
> interrupt (because two devices are externally connected), it works. If
> the handlers are instead registered on one of the expander's pins'
> interrupt, without this patch, only the handler registered first is
> called.

Have the hardware dudes not yet understood that shared interrupts are
a horrible idea ?

Sigh,

tglx
--
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/