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

From: Rabin Vincent
Date: Fri Oct 29 2010 - 11:21:44 EST


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.

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