diff options
author | Andy Gospodarek <gospo@broadcom.com> | 2016-12-01 15:34:52 -0500 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2016-12-08 12:24:20 -0600 |
commit | ffbd796821472c6571b09962cdbd13cd2815e2c1 (patch) | |
tree | 3a42377599cb49deab299bf44129fac78bca4c41 /drivers/pci/host/pcie-iproc.c | |
parent | feacdb4a35920235a0daf42d6f5701a74c4708b5 (diff) | |
download | linux-stable-ffbd796821472c6571b09962cdbd13cd2815e2c1.tar.gz linux-stable-ffbd796821472c6571b09962cdbd13cd2815e2c1.tar.bz2 linux-stable-ffbd796821472c6571b09962cdbd13cd2815e2c1.zip |
PCI: iproc: Skip check for legacy IRQ on PAXC buses
PAXC and PAXCv2 buses do not support legacy IRQs so there is no reason to
even try and map them. Without a change like this, one cannot create VFs
on Nitro ports since legacy interrupts are checked as part of the PCI
device creation process. Testing on PAXC hardware showed that VFs are
properly created with only the change to not set pcie->map_irq, but just to
be safe the change in iproc_pcie_setup() will ensure that pdev_fixup_irq()
will not panic.
Signed-off-by: Andy Gospodarek <gospo@broadcom.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Ray Jui <ray.jui@broadcom.com>
Diffstat (limited to 'drivers/pci/host/pcie-iproc.c')
-rw-r--r-- | drivers/pci/host/pcie-iproc.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/pci/host/pcie-iproc.c b/drivers/pci/host/pcie-iproc.c index cd513342b913..3ebc025499b9 100644 --- a/drivers/pci/host/pcie-iproc.c +++ b/drivers/pci/host/pcie-iproc.c @@ -1274,7 +1274,10 @@ int iproc_pcie_setup(struct iproc_pcie *pcie, struct list_head *res) pci_scan_child_bus(bus); pci_assign_unassigned_bus_resources(bus); - pci_fixup_irqs(pci_common_swizzle, pcie->map_irq); + + if (pcie->map_irq) + pci_fixup_irqs(pci_common_swizzle, pcie->map_irq); + pci_bus_add_devices(bus); return 0; |