summaryrefslogtreecommitdiff
path: root/drivers/irqchip/irq-msi-lib.h
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2024-06-23 17:18:38 +0200
committerThomas Gleixner <tglx@linutronix.de>2024-07-18 20:31:19 +0200
commit8c41ccec839c622b2d1be769a95405e4e9a4cb20 (patch)
treed99af1b24c705d18984bbd134589ef4c3093d720 /drivers/irqchip/irq-msi-lib.h
parent48f71d56e2b87839052d2a2ec32fc97a79c3e264 (diff)
downloadlwn-8c41ccec839c622b2d1be769a95405e4e9a4cb20.tar.gz
lwn-8c41ccec839c622b2d1be769a95405e4e9a4cb20.zip
irqchip/irq-msi-lib: Prepare for PCI MSI/MSIX
Add the bus tokens for DOMAIN_BUS_PCI_DEVICE_MSI and DOMAIN_BUS_PCI_DEVICE_MSIX to the common child init function. Provide the match mask which can be used by parent domain implementation so the bitmask based child bus token match works. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Anna-Maria Behnsen <anna-maria@linutronix.de> Signed-off-by: Shivamurthy Shastri <shivamurthy.shastri@linutronix.de> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Link: https://lore.kernel.org/r/20240623142234.964056815@linutronix.de
Diffstat (limited to 'drivers/irqchip/irq-msi-lib.h')
-rw-r--r--drivers/irqchip/irq-msi-lib.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/irqchip/irq-msi-lib.h b/drivers/irqchip/irq-msi-lib.h
index f0706cc28264..525aa5284a99 100644
--- a/drivers/irqchip/irq-msi-lib.h
+++ b/drivers/irqchip/irq-msi-lib.h
@@ -9,6 +9,12 @@
#include <linux/irqdomain.h>
#include <linux/msi.h>
+#ifdef CONFIG_PCI_MSI
+#define MATCH_PCI_MSI BIT(DOMAIN_BUS_PCI_MSI)
+#else
+#define MATCH_PCI_MSI (0)
+#endif
+
int msi_lib_irq_domain_select(struct irq_domain *d, struct irq_fwspec *fwspec,
enum irq_domain_bus_token bus_token);