PCI/MSI: Use msi_domain_info:: Bus_token
authorAhmed S. Darwish <darwi@linutronix.de>
Fri, 11 Nov 2022 13:54:35 +0000 (14:54 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Thu, 17 Nov 2022 14:15:19 +0000 (15:15 +0100)
Set the bus token in the msi_domain_info structure and let the core code
handle the update.

Signed-off-by: Ahmed S. Darwish <darwi@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Acked-by: Bjorn Helgaas <bhelgaas@google.com>
Link: https://lore.kernel.org/r/20221111122014.352437595@linutronix.de
drivers/pci/msi/irqdomain.c

index e9cf318e6670f7cab5bfa93892295bf0b6d9f4e5..7766fa6c475cab94c3b354aa6734d84fdeb5b3cf 100644 (file)
@@ -162,8 +162,6 @@ struct irq_domain *pci_msi_create_irq_domain(struct fwnode_handle *fwnode,
                                             struct msi_domain_info *info,
                                             struct irq_domain *parent)
 {
-       struct irq_domain *domain;
-
        if (WARN_ON(info->flags & MSI_FLAG_LEVEL_CAPABLE))
                info->flags &= ~MSI_FLAG_LEVEL_CAPABLE;
 
@@ -178,13 +176,10 @@ struct irq_domain *pci_msi_create_irq_domain(struct fwnode_handle *fwnode,
 
        /* PCI-MSI is oneshot-safe */
        info->chip->flags |= IRQCHIP_ONESHOT_SAFE;
+       /* Let the core update the bus token */
+       info->bus_token = DOMAIN_BUS_PCI_MSI;
 
-       domain = msi_create_irq_domain(fwnode, info, parent);
-       if (!domain)
-               return NULL;
-
-       irq_domain_update_bus_token(domain, DOMAIN_BUS_PCI_MSI);
-       return domain;
+       return msi_create_irq_domain(fwnode, info, parent);
 }
 EXPORT_SYMBOL_GPL(pci_msi_create_irq_domain);