[RFC] PCI: Change default MPS behavior

From: Jon Mason
Date: Tue Dec 06 2016 - 19:30:03 EST


Not all systems have a BIOS or firmware to preconfigure the PCIE MPS
prior to Linux booting. Without any firmware to pre-setup the MPS, the
PCIE_BUS_DEFAULT will simply set everything to 0 (128b). This behavior
causes these systems to have non-optimal MPS values. To get around this
issue, change the default value of pcie_bus_config to be PCIE_BUS_SAFE.
This configures all systems to use better values for the MPS, at the
expense of any potential HW errata that might not like being changed.

Signed-off-by: Jon Mason <jon.mason@xxxxxxxxxxxx>
---
drivers/pci/pci.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
index ba34907..94d574e 100644
--- a/drivers/pci/pci.c
+++ b/drivers/pci/pci.c
@@ -88,7 +88,7 @@ unsigned long pci_hotplug_mem_size = DEFAULT_HOTPLUG_MEM_SIZE;
#define DEFAULT_HOTPLUG_BUS_SIZE 1
unsigned long pci_hotplug_bus_size = DEFAULT_HOTPLUG_BUS_SIZE;

-enum pcie_bus_config_types pcie_bus_config = PCIE_BUS_DEFAULT;
+enum pcie_bus_config_types pcie_bus_config = PCIE_BUS_SAFE;

/*
* The default CLS is used if arch didn't set CLS explicitly and not
--
2.7.4