Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753708AbbKYMN6 (ORCPT ); Wed, 25 Nov 2015 07:13:58 -0500 Received: from mailapp01.imgtec.com ([195.59.15.196]:22962 "EHLO mailapp01.imgtec.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753391AbbKYMIE (ORCPT ); Wed, 25 Nov 2015 07:08:04 -0500 From: Qais Yousef To: CC: , , , , , , Qais Yousef Subject: [PATCH v2 10/19] genirq: Add a new irq_send_ipi() to irq_chip Date: Wed, 25 Nov 2015 12:06:48 +0000 Message-ID: <1448453217-3874-11-git-send-email-qais.yousef@imgtec.com> X-Mailer: git-send-email 2.1.0 In-Reply-To: <1448453217-3874-1-git-send-email-qais.yousef@imgtec.com> References: <1448453217-3874-1-git-send-email-qais.yousef@imgtec.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [192.168.154.94] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1714 Lines: 43 Introduce the new functions to allow generic IPI send mechanism to be used from arch and drivers code. Signed-off-by: Qais Yousef --- include/linux/irq.h | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/include/linux/irq.h b/include/linux/irq.h index 9a5d1e11a08f..ee01e89c2140 100644 --- a/include/linux/irq.h +++ b/include/linux/irq.h @@ -381,6 +381,10 @@ 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 + * @ipi_send_coproc_single: send a single IPI to destination coprocessor + * @ipi_send_coproc_mask: send an IPI to destination corocessors in ipi_mask * @flags: chip specific flags */ struct irq_chip { @@ -425,6 +429,11 @@ 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); + void (*ipi_send_coproc_single)(struct irq_data *data, unsigned int cpu); + void (*ipi_send_coproc_mask)(struct irq_data *data, const struct ipi_mask *dest); + unsigned long flags; }; -- 2.1.0 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/