summaryrefslogtreecommitdiffstats
path: root/kernel/irq/internals.h
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2011-02-07 01:08:49 +0100
committerThomas Gleixner <tglx@linutronix.de>2011-02-19 12:58:11 +0100
commit4912609f228da4a3d2bfbdf0f31de3d9eab2b7f8 (patch)
tree5e0a134187b877322e730421275dc87a5b797211 /kernel/irq/internals.h
parentgenirq: Do not fiddle with IRQ_MASKED in handle_edge_irq() (diff)
downloadlinux-4912609f228da4a3d2bfbdf0f31de3d9eab2b7f8.tar.xz
linux-4912609f228da4a3d2bfbdf0f31de3d9eab2b7f8.zip
genirq: Implement handle_irq_event()
Core code replacement for the ugly camel case. It contains all the code which is shared in all handlers. clear status flags set INPROGRESS flag unlock call action chain note_interrupt lock clr INPROGRESS flag Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'kernel/irq/internals.h')
-rw-r--r--kernel/irq/internals.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/kernel/irq/internals.h b/kernel/irq/internals.h
index c71fc4de0371..b61824cdadc6 100644
--- a/kernel/irq/internals.h
+++ b/kernel/irq/internals.h
@@ -45,6 +45,9 @@ extern void irq_disable(struct irq_desc *desc);
extern void init_kstat_irqs(struct irq_desc *desc, int node, int nr);
+irqreturn_t handle_irq_event_percpu(struct irq_desc *desc, struct irqaction *action);
+irqreturn_t handle_irq_event(struct irq_desc *desc);
+
/* Resending of interrupts :*/
void check_irq_resend(struct irq_desc *desc, unsigned int irq);
bool irq_wait_for_poll(struct irq_desc *desc);