]> git.hungrycats.org Git - linux/commitdiff
PCI: pciehp: Request control of native hotplug only if supported
authorMika Westerberg <mika.westerberg@linux.intel.com>
Wed, 23 May 2018 22:19:22 +0000 (17:19 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 9 Aug 2018 10:20:28 +0000 (12:20 +0200)
[ Upstream commit 408fec36a1ab3d14273c2116b449ef1e9be3cb8b ]

Currently we request control of native PCIe hotplug unconditionally.
Native PCIe hotplug events are handled by the pciehp driver, and if it is
not enabled those events will be lost.

Request control of native PCIe hotplug only if the pciehp driver is
enabled, so we will actually handle native PCIe hotplug events.

Suggested-by: Bjorn Helgaas <bhelgaas@google.com>
Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/acpi/pci_root.c

index cd4de7e038ea5e0460a896232a99c89554436b52..3e72f9b4209778550240f8a7b2a4824b808b4003 100644 (file)
@@ -476,9 +476,11 @@ static void negotiate_os_control(struct acpi_pci_root *root, int *no_aspm,
        }
 
        control = OSC_PCI_EXPRESS_CAPABILITY_CONTROL
-               | OSC_PCI_EXPRESS_NATIVE_HP_CONTROL
                | OSC_PCI_EXPRESS_PME_CONTROL;
 
+       if (IS_ENABLED(CONFIG_HOTPLUG_PCI_PCIE))
+               control |= OSC_PCI_EXPRESS_NATIVE_HP_CONTROL;
+
        if (pci_aer_available()) {
                if (aer_acpi_firmware_first())
                        dev_info(&device->dev,