On 2015/9/23 22:49, Qais Yousef wrote: > For generic ipi core to use. It takes hwirq as its sole argument. > Hopefully this is generic enough? Should we pass something more abstract? > > Signed-off-by: Qais Yousef <qais.yousef@xxxxxxxxxx> > --- > include/linux/irqdomain.h | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/include/linux/irqdomain.h b/include/linux/irqdomain.h > index 9b3dc6c2a3cc..cef9e6158be0 100644 > --- a/include/linux/irqdomain.h > +++ b/include/linux/irqdomain.h > @@ -92,6 +92,7 @@ struct irq_domain_ops { > void (*activate)(struct irq_domain *d, struct irq_data *irq_data); > void (*deactivate)(struct irq_domain *d, struct irq_data *irq_data); > #endif > + void (*send_ipi)(irq_hw_number_t hwirq); Hi Qais, Instead of extending the irq_domain_ops, how about extending irq_chip instead? If we treat IPI as a sort of irq controller, and irq_chip is used to encapsulate all irq controller related operations, and irq_domain_ops is mainly used to allocated resources instead of operating corresponding hardware. Thanks! Gerry > }; > > extern struct irq_domain_ops irq_generic_chip_ops; >