amd-xgbe: Use platform_irq_count()
The AMD XGbE driver currently counts the number of interrupts assigned to the device by inspecting the pdev->resource array. Since commita1a2b7125e
("of/platform: Drop static setup of IRQ resource from DT core") removed IRQs from this array, the driver now attempts to get all interrupts from 1 to -1U and gives up probing once it reaches an invalid interrupt index. Obtain the number of IRQs with platform_irq_count() instead. Fixes:a1a2b7125e
("of/platform: Drop static setup of IRQ resource from DT core") Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org> Acked-by: Rob Herring <robh@kernel.org> Acked-by: Tom Lendacky <thomas.lendacky@amd.com> Link: https://lore.kernel.org/r/20220609161457.69614-1-jean-philippe@linaro.org Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
619c010a65
commit
884c65e4da
|
@ -338,7 +338,7 @@ static int xgbe_platform_probe(struct platform_device *pdev)
|
|||
* the PHY resources listed last
|
||||
*/
|
||||
phy_memnum = xgbe_resource_count(pdev, IORESOURCE_MEM) - 3;
|
||||
phy_irqnum = xgbe_resource_count(pdev, IORESOURCE_IRQ) - 1;
|
||||
phy_irqnum = platform_irq_count(pdev) - 1;
|
||||
dma_irqnum = 1;
|
||||
dma_irqend = phy_irqnum;
|
||||
} else {
|
||||
|
@ -348,7 +348,7 @@ static int xgbe_platform_probe(struct platform_device *pdev)
|
|||
phy_memnum = 0;
|
||||
phy_irqnum = 0;
|
||||
dma_irqnum = 1;
|
||||
dma_irqend = xgbe_resource_count(pdev, IORESOURCE_IRQ);
|
||||
dma_irqend = platform_irq_count(pdev);
|
||||
}
|
||||
|
||||
/* Obtain the mmio areas for the device */
|
||||
|
|
Loading…
Reference in New Issue