powerpc/pseries/msi: Use msi_domain_ops:: Msi_post_free()
authorThomas Gleixner <tglx@linutronix.de>
Fri, 11 Nov 2022 13:54:28 +0000 (14:54 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Thu, 17 Nov 2022 14:15:19 +0000 (15:15 +0100)
Use the new msi_post_free() callback which is invoked after the interrupts
have been freed to tell the hypervisor about the shutdown.

This allows to remove the exposure of __msi_domain_free_irqs().

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Ashok Raj <ashok.raj@intel.com>
Reviewed-by: Jason Gunthorpe <jgg@nvidia.com>
Link: https://lore.kernel.org/r/20221111122014.120489922@linutronix.de
arch/powerpc/platforms/pseries/msi.c

index a3a71d3..3f05507 100644 (file)
@@ -447,21 +447,18 @@ static void pseries_msi_ops_msi_free(struct irq_domain *domain,
  * RTAS can not disable one MSI at a time. It's all or nothing. Do it
  * at the end after all IRQs have been freed.
  */
-static void pseries_msi_domain_free_irqs(struct irq_domain *domain,
-                                        struct device *dev)
+static void pseries_msi_post_free(struct irq_domain *domain, struct device *dev)
 {
        if (WARN_ON_ONCE(!dev_is_pci(dev)))
                return;
 
-       __msi_domain_free_irqs(domain, dev);
-
        rtas_disable_msi(to_pci_dev(dev));
 }
 
 static struct msi_domain_ops pseries_pci_msi_domain_ops = {
        .msi_prepare    = pseries_msi_ops_prepare,
        .msi_free       = pseries_msi_ops_msi_free,
-       .domain_free_irqs = pseries_msi_domain_free_irqs,
+       .msi_post_free  = pseries_msi_post_free,
 };
 
 static void pseries_msi_shutdown(struct irq_data *d)