diff options
author | Marc Zyngier <marc.zyngier@arm.com> | 2017-05-12 12:55:37 +0100 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2017-05-22 22:29:45 +0200 |
commit | a97b852b4d4c2f8c50cab13c71566639f9a1a990 (patch) | |
tree | 845d67c950ac7a0ef317bb07d2c2a2159f020421 /kernel | |
parent | 2370c00dc7232d0c4af224e7730b4de031f3b1a0 (diff) | |
download | op-kernel-dev-a97b852b4d4c2f8c50cab13c71566639f9a1a990.zip op-kernel-dev-a97b852b4d4c2f8c50cab13c71566639f9a1a990.tar.gz |
genirq/msi: Populate the domain name if provided by the irqchip
In order to ease debug, let's populate the domain name upfront, before any
MSI gets requested. This allows the domain to appear in the
irq_domain_mapping, and the user to easily find the expected data.
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Link: http://lkml.kernel.org/r/20170512115538.10767-4-marc.zyngier@arm.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/irq/msi.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/kernel/irq/msi.c b/kernel/irq/msi.c index ddc2f54..fe4d48e 100644 --- a/kernel/irq/msi.c +++ b/kernel/irq/msi.c @@ -265,13 +265,19 @@ struct irq_domain *msi_create_irq_domain(struct fwnode_handle *fwnode, struct msi_domain_info *info, struct irq_domain *parent) { + struct irq_domain *domain; + if (info->flags & MSI_FLAG_USE_DEF_DOM_OPS) msi_domain_update_dom_ops(info); if (info->flags & MSI_FLAG_USE_DEF_CHIP_OPS) msi_domain_update_chip_ops(info); - return irq_domain_create_hierarchy(parent, IRQ_DOMAIN_FLAG_MSI, 0, - fwnode, &msi_domain_ops, info); + domain = irq_domain_create_hierarchy(parent, IRQ_DOMAIN_FLAG_MSI, 0, + fwnode, &msi_domain_ops, info); + if (domain && info->chip && info->chip->name) + domain->name = info->chip->name; + + return domain; } int msi_domain_prepare_irqs(struct irq_domain *domain, struct device *dev, |