diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2022-11-11 16:54:28 +0300 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2022-11-17 17:15:19 +0300 |
commit | c4bc51b1dd611fcce53849254c6582334368c715 (patch) | |
tree | 41b5506e33de54e95c524e328a91f2a599d793b0 | |
parent | f6d3486a3d2f3c67d732641834eec872fcc66472 (diff) | |
download | linux-c4bc51b1dd611fcce53849254c6582334368c715.tar.xz |
powerpc/pseries/msi: Use msi_domain_ops:: Msi_post_free()
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
-rw-r--r-- | arch/powerpc/platforms/pseries/msi.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/arch/powerpc/platforms/pseries/msi.c b/arch/powerpc/platforms/pseries/msi.c index a3a71d37cb9a..3f05507e444d 100644 --- a/arch/powerpc/platforms/pseries/msi.c +++ b/arch/powerpc/platforms/pseries/msi.c @@ -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) |