diff options
author | Marc Zyngier <marc.zyngier@arm.com> | 2015-07-28 09:46:09 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2015-07-29 18:14:37 -0400 |
commit | 0380839dc90c53e24ddfa0f17ad909c2ddc345c2 (patch) | |
tree | ccb70f14824b7626f8ed25c2795e72c3b6b8de66 /drivers/pci/msi.c | |
parent | ad3aedfbb04b3a2af54473cfe31f13953cfe9d84 (diff) |
PCI/MSI: Register irq domain with specific token
When creating a PCI/MSI domain, tag it with DOMAIN_BUS_PCI_MSI so
that it can be looked-up using irq_find_matching_host().
Acked-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Hanjun Guo <hanjun.guo@linaro.org>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Cc: <linux-arm-kernel@lists.infradead.org>
Cc: Yijing Wang <wangyijing@huawei.com>
Cc: Ma Jun <majun258@huawei.com>
Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
Cc: Duc Dang <dhdang@apm.com>
Cc: Jiang Liu <jiang.liu@linux.intel.com>
Cc: Jason Cooper <jason@lakedaemon.net>
Link: http://lkml.kernel.org/r/1438091186-10244-3-git-send-email-marc.zyngier@arm.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'drivers/pci/msi.c')
-rw-r--r-- | drivers/pci/msi.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c index cd4c78c193de..3aae7c9ad31c 100644 --- a/drivers/pci/msi.c +++ b/drivers/pci/msi.c | |||
@@ -1273,12 +1273,19 @@ struct irq_domain *pci_msi_create_irq_domain(struct device_node *node, | |||
1273 | struct msi_domain_info *info, | 1273 | struct msi_domain_info *info, |
1274 | struct irq_domain *parent) | 1274 | struct irq_domain *parent) |
1275 | { | 1275 | { |
1276 | struct irq_domain *domain; | ||
1277 | |||
1276 | if (info->flags & MSI_FLAG_USE_DEF_DOM_OPS) | 1278 | if (info->flags & MSI_FLAG_USE_DEF_DOM_OPS) |
1277 | pci_msi_domain_update_dom_ops(info); | 1279 | pci_msi_domain_update_dom_ops(info); |
1278 | if (info->flags & MSI_FLAG_USE_DEF_CHIP_OPS) | 1280 | if (info->flags & MSI_FLAG_USE_DEF_CHIP_OPS) |
1279 | pci_msi_domain_update_chip_ops(info); | 1281 | pci_msi_domain_update_chip_ops(info); |
1280 | 1282 | ||
1281 | return msi_create_irq_domain(node, info, parent); | 1283 | domain = msi_create_irq_domain(node, info, parent); |
1284 | if (!domain) | ||
1285 | return NULL; | ||
1286 | |||
1287 | domain->bus_token = DOMAIN_BUS_PCI_MSI; | ||
1288 | return domain; | ||
1282 | } | 1289 | } |
1283 | 1290 | ||
1284 | /** | 1291 | /** |