From: Matthew Minter Date: Wed, 28 Jun 2017 20:14:04 +0000 (-0500) Subject: PCI: Add a call to pci_assign_irq() in pci_device_probe() X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=30fdfb929e82450bbf3d0e0aba56efbc29b52b52;p=openwrt%2Fstaging%2Fblogic.git PCI: Add a call to pci_assign_irq() in pci_device_probe() The pci_assign_irq() function allows assignment of an IRQ to devices during device enable time rather than only at boot. Therefore call it in the pci_device_probe() function during the enable device code path so this assignment can be performed. This patch will do nothing on arches which do not set the IRQ mapping function pointers and is therefore currently a nop, however as support for these function pointers is added to arch-specific code this will cause IRQ assignment to migrate to device enable time allowing the new code paths to be used. Signed-off-by: Matthew Minter [lorenzo.pieralisi@arm.com: moved pci_assign_irq() call site] Signed-off-by: Lorenzo Pieralisi Signed-off-by: Bjorn Helgaas --- diff --git a/drivers/pci/pci-driver.c b/drivers/pci/pci-driver.c index 192e7b681b96..11167c65ca37 100644 --- a/drivers/pci/pci-driver.c +++ b/drivers/pci/pci-driver.c @@ -412,6 +412,8 @@ static int pci_device_probe(struct device *dev) struct pci_dev *pci_dev = to_pci_dev(dev); struct pci_driver *drv = to_pci_driver(dev->driver); + pci_assign_irq(pci_dev); + error = pcibios_alloc_irq(pci_dev); if (error < 0) return error;