powerpc/4xx/hsta: Rework MSI handling
Replace the about to vanish iterators and make use of the filtering. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Jason Gunthorpe <jgg@nvidia.com> Link: https://lore.kernel.org/r/20211206210748.359766435@linutronix.de
This commit is contained in:
@@ -47,7 +47,7 @@ static int hsta_setup_msi_irqs(struct pci_dev *dev, int nvec, int type)
|
|||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
for_each_pci_msi_entry(entry, dev) {
|
msi_for_each_desc(entry, &dev->dev, MSI_DESC_NOTASSOCIATED) {
|
||||||
irq = msi_bitmap_alloc_hwirqs(&ppc4xx_hsta_msi.bmp, 1);
|
irq = msi_bitmap_alloc_hwirqs(&ppc4xx_hsta_msi.bmp, 1);
|
||||||
if (irq < 0) {
|
if (irq < 0) {
|
||||||
pr_debug("%s: Failed to allocate msi interrupt\n",
|
pr_debug("%s: Failed to allocate msi interrupt\n",
|
||||||
@@ -105,10 +105,7 @@ static void hsta_teardown_msi_irqs(struct pci_dev *dev)
|
|||||||
struct msi_desc *entry;
|
struct msi_desc *entry;
|
||||||
int irq;
|
int irq;
|
||||||
|
|
||||||
for_each_pci_msi_entry(entry, dev) {
|
msi_for_each_desc(entry, &dev->dev, MSI_DESC_ASSOCIATED) {
|
||||||
if (!entry->irq)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
irq = hsta_find_hwirq_offset(entry->irq);
|
irq = hsta_find_hwirq_offset(entry->irq);
|
||||||
|
|
||||||
/* entry->irq should always be in irq_map */
|
/* entry->irq should always be in irq_map */
|
||||||
|
|||||||
Reference in New Issue
Block a user