Merge branch 'pci/virtualization'
[muen/linux.git] / drivers / pci / probe.c
index 708094f720fdd42e9a24047ecc667a95dd5d97a8..caa07109e5f5dda9702dd98edf0e947c8a968bfe 100644 (file)
@@ -1,6 +1,6 @@
 // SPDX-License-Identifier: GPL-2.0
 /*
- * probe.c - PCI detection and setup code
+ * PCI detection and setup code
  */
 
 #include <linux/kernel.h>
@@ -544,6 +544,16 @@ struct pci_host_bridge *pci_alloc_host_bridge(size_t priv)
        INIT_LIST_HEAD(&bridge->windows);
        bridge->dev.release = pci_release_host_bridge_dev;
 
+       /*
+        * We assume we can manage these PCIe features.  Some systems may
+        * reserve these for use by the platform itself, e.g., an ACPI BIOS
+        * may implement its own AER handling and use _OSC to prevent the
+        * OS from interfering.
+        */
+       bridge->native_aer = 1;
+       bridge->native_hotplug = 1;
+       bridge->native_pme = 1;
+
        return bridge;
 }
 EXPORT_SYMBOL(pci_alloc_host_bridge);
@@ -596,7 +606,7 @@ const unsigned char pcie_link_speed[] = {
        PCIE_SPEED_2_5GT,               /* 1 */
        PCIE_SPEED_5_0GT,               /* 2 */
        PCIE_SPEED_8_0GT,               /* 3 */
-       PCI_SPEED_UNKNOWN,              /* 4 */
+       PCIE_SPEED_16_0GT,              /* 4 */
        PCI_SPEED_UNKNOWN,              /* 5 */
        PCI_SPEED_UNKNOWN,              /* 6 */
        PCI_SPEED_UNKNOWN,              /* 7 */