diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2011-02-15 10:33:57 +0100 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2011-02-19 12:58:24 +0100 |
commit | 77694b408abb8f92195ad5ed6ce5492f1d794c77 (patch) | |
tree | a0f7e81a0a155523f69146cd560cc2f49543a99e /include/linux/irq.h | |
parent | 781295762defc709a609efc01d8bb065276cd9a2 (diff) | |
download | op-kernel-dev-77694b408abb8f92195ad5ed6ce5492f1d794c77.zip op-kernel-dev-77694b408abb8f92195ad5ed6ce5492f1d794c77.tar.gz |
genirq; Add fasteoi irq_chip quirk
Some chips want irq_eoi() only called when an interrupt is actually
handled. So they have checks for INPROGRESS and DISABLED in their
irq_eoi callbacks. Add a chip flag, which allows to handle that in the
generic code. No impact on the fastpath.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/linux/irq.h')
-rw-r--r-- | include/linux/irq.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/include/linux/irq.h b/include/linux/irq.h index 3639097..ea2970c 100644 --- a/include/linux/irq.h +++ b/include/linux/irq.h @@ -328,10 +328,12 @@ struct irq_chip { /* * irq_chip specific flags * - * IRQCHIP_SET_TYPE_MASKED: Mask before calling chip.irq_set_type() + * IRQCHIP_SET_TYPE_MASKED: Mask before calling chip.irq_set_type() + * IRQCHIP_EOI_IF_HANDLED: Only issue irq_eoi() when irq was handled */ enum { IRQCHIP_SET_TYPE_MASKED = (1 << 0), + IRQCHIP_EOI_IF_HANDLED = (1 << 1), }; /* This include will go away once we isolated irq_desc usage to core code */ |