path: root/include/linux/irq.h
diff options
authorQais Yousef <qais.yousef@imgtec.com>2015-12-08 13:20:19 +0000
committerThomas Gleixner <tglx@linutronix.de>2016-02-25 10:56:56 +0100
commitd17bf24e695290d3fe7943aca52ab48098a10653 (patch)
tree3053c2e487c3b21c4541c3ee4102a8908fedd955 /include/linux/irq.h
parentac0a0cd266d1f21236d5975ca6bced9b377a2a6a (diff)
genirq: Add a new generic IPI reservation code to irq core
Add a generic mechanism to dynamically allocate an IPI. Depending on the underlying implementation this creates either a single Linux irq or a consective range of Linux irqs. The Linux irq is used later to send IPIs to other CPUs. [ tglx: Massaged the code and removed the 'consecutive mask' restriction for the single IRQ case ] Signed-off-by: Qais Yousef <qais.yousef@imgtec.com> Cc: <jason@lakedaemon.net> Cc: <marc.zyngier@arm.com> Cc: <jiang.liu@linux.intel.com> Cc: <ralf@linux-mips.org> Cc: <linux-mips@linux-mips.org> Cc: <lisa.parratt@imgtec.com> Cc: Qais Yousef <qsyousef@gmail.com> Link: http://lkml.kernel.org/r/1449580830-23652-9-git-send-email-qais.yousef@imgtec.com Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/linux/irq.h')
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/irq.h b/include/linux/irq.h
index a32b47fbf874..95f4f66f95f3 100644
--- a/include/linux/irq.h
+++ b/include/linux/irq.h
@@ -940,4 +940,7 @@ static inline u32 irq_reg_readl(struct irq_chip_generic *gc,
return readl(gc->reg_base + reg_offset);
+/* Contrary to Linux irqs, for hardware irqs the irq number 0 is valid */
+#define INVALID_HWIRQ (~0UL)
#endif /* _LINUX_IRQ_H */