Commit e22b0d1b authored by Thomas Gleixner's avatar Thomas Gleixner
Browse files

powerpc/pasemi/msi: Convert to msi_on_each_dec()



Replace the about to vanish iterators and make use of the filtering.

Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
Reviewed-by: default avatarJason Gunthorpe <jgg@nvidia.com>
Link: https://lore.kernel.org/r/20211206210748.468512783@linutronix.de
parent 3c46658b
Loading
Loading
Loading
Loading
+2 −7
Original line number Original line Diff line number Diff line
@@ -62,17 +62,12 @@ static void pasemi_msi_teardown_msi_irqs(struct pci_dev *pdev)


	pr_debug("pasemi_msi_teardown_msi_irqs, pdev %p\n", pdev);
	pr_debug("pasemi_msi_teardown_msi_irqs, pdev %p\n", pdev);


	for_each_pci_msi_entry(entry, pdev) {
	msi_for_each_desc(entry, &pdev->dev, MSI_DESC_ASSOCIATED) {
		if (!entry->irq)
			continue;

		hwirq = virq_to_hw(entry->irq);
		hwirq = virq_to_hw(entry->irq);
		irq_set_msi_desc(entry->irq, NULL);
		irq_set_msi_desc(entry->irq, NULL);
		irq_dispose_mapping(entry->irq);
		irq_dispose_mapping(entry->irq);
		msi_bitmap_free_hwirqs(&msi_mpic->msi_bitmap, hwirq, ALLOC_CHUNK);
		msi_bitmap_free_hwirqs(&msi_mpic->msi_bitmap, hwirq, ALLOC_CHUNK);
	}
	}

	return;
}
}


static int pasemi_msi_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type)
static int pasemi_msi_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type)
@@ -90,7 +85,7 @@ static int pasemi_msi_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type)
	msg.address_hi = 0;
	msg.address_hi = 0;
	msg.address_lo = PASEMI_MSI_ADDR;
	msg.address_lo = PASEMI_MSI_ADDR;


	for_each_pci_msi_entry(entry, pdev) {
	msi_for_each_desc(entry, &pdev->dev, MSI_DESC_NOTASSOCIATED) {
		/* Allocate 16 interrupts for now, since that's the grouping for
		/* Allocate 16 interrupts for now, since that's the grouping for
		 * affinity. This can be changed later if it turns out 32 is too
		 * affinity. This can be changed later if it turns out 32 is too
		 * few MSIs for someone, but restrictions will apply to how the
		 * few MSIs for someone, but restrictions will apply to how the