On 2015/9/23 22:49, Qais Yousef wrote:
For generic ipi core to use. It takes hwirq as its sole argument.Hi Qais,
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);
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