From: Jon Mason Date: Fri, 27 Jan 2017 21:44:08 +0000 (-0500) Subject: PCI: iproc: Configure PCIe MPS settings X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=4d4836ab70d3c59bc934d244f0cccdd035c1ead8;p=openwrt%2Fstaging%2Fblogic.git PCI: iproc: Configure PCIe MPS settings Make sure PCIe MPS settings are valid when we enumerate a new hierarchy. [bhelgaas: changelog] Signed-off-by: Jon Mason Signed-off-by: Bjorn Helgaas Acked-by: Ray Jui --- diff --git a/drivers/pci/host/pcie-iproc.c b/drivers/pci/host/pcie-iproc.c index 3ebc025499b9..0f39bd2a04cb 100644 --- a/drivers/pci/host/pcie-iproc.c +++ b/drivers/pci/host/pcie-iproc.c @@ -1205,7 +1205,7 @@ int iproc_pcie_setup(struct iproc_pcie *pcie, struct list_head *res) struct device *dev; int ret; void *sysdata; - struct pci_bus *bus; + struct pci_bus *bus, *child; dev = pcie->dev; @@ -1278,6 +1278,9 @@ int iproc_pcie_setup(struct iproc_pcie *pcie, struct list_head *res) if (pcie->map_irq) pci_fixup_irqs(pci_common_swizzle, pcie->map_irq); + list_for_each_entry(child, &bus->children, node) + pcie_bus_configure_settings(child); + pci_bus_add_devices(bus); return 0;