Commit-ID: 34dc1ae101018dbb50e1d04e88aa89052802a7db Gitweb: http://git.kernel.org/tip/34dc1ae101018dbb50e1d04e88aa89052802a7db Author: Qais Yousef <qais.yousef@xxxxxxxxxx> AuthorDate: Tue, 8 Dec 2015 13:20:21 +0000 Committer: Thomas Gleixner <tglx@xxxxxxxxxxxxx> CommitDate: Thu, 25 Feb 2016 10:56:57 +0100 genirq: Add send_ipi callbacks to irq_chip Introduce the new callbacks which can be used by the core code to implement a generic IPI send mechanism. Signed-off-by: Qais Yousef <qais.yousef@xxxxxxxxxx> Cc: <jason@xxxxxxxxxxxxxx> Cc: <marc.zyngier@xxxxxxx> Cc: <jiang.liu@xxxxxxxxxxxxxxx> Cc: <ralf@xxxxxxxxxxxxxx> Cc: <linux-mips@xxxxxxxxxxxxxx> Cc: <lisa.parratt@xxxxxxxxxx> Cc: Qais Yousef <qsyousef@xxxxxxxxx> Link: http://lkml.kernel.org/r/1449580830-23652-11-git-send-email-qais.yousef@xxxxxxxxxx Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx> --- include/linux/irq.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/include/linux/irq.h b/include/linux/irq.h index 10273dc..3b3a5b8 100644 --- a/include/linux/irq.h +++ b/include/linux/irq.h @@ -347,6 +347,8 @@ static inline irq_hw_number_t irqd_to_hwirq(struct irq_data *d) * @irq_get_irqchip_state: return the internal state of an interrupt * @irq_set_irqchip_state: set the internal state of a interrupt * @irq_set_vcpu_affinity: optional to target a vCPU in a virtual machine + * @ipi_send_single: send a single IPI to destination cpus + * @ipi_send_mask: send an IPI to destination cpus in cpumask * @flags: chip specific flags */ struct irq_chip { @@ -391,6 +393,9 @@ struct irq_chip { int (*irq_set_vcpu_affinity)(struct irq_data *data, void *vcpu_info); + void (*ipi_send_single)(struct irq_data *data, unsigned int cpu); + void (*ipi_send_mask)(struct irq_data *data, const struct cpumask *dest); + unsigned long flags; };