Currently we regard ASPM as a necessary PCIe service and if it's disabled by pcie_aspm=off we cannot enable other services like AER and hotplug. However the ASPM is just one of the PCIe services and other services mentioned no dependency on this. So this patch decouples the negotiation of ASPM and other PCIe services, then we can make use of other services in the absence of ASPM. Aaron Sierra tried to fix this originally: https://lore.kernel.org/linux-pci/20190702201318.GC128603@xxxxxxxxxx/ Signed-off-by: Yicong Yang <yangyicong@xxxxxxxxxxxxx> --- drivers/acpi/pci_root.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/acpi/pci_root.c b/drivers/acpi/pci_root.c index 6f9e75d14808..16fa7c5a11ad 100644 --- a/drivers/acpi/pci_root.c +++ b/drivers/acpi/pci_root.c @@ -37,8 +37,6 @@ static int acpi_pci_root_scan_dependent(struct acpi_device *adev) } #define ACPI_PCIE_REQ_SUPPORT (OSC_PCI_EXT_CONFIG_SUPPORT \ - | OSC_PCI_ASPM_SUPPORT \ - | OSC_PCI_CLOCK_PM_SUPPORT \ | OSC_PCI_MSI_SUPPORT) static const struct acpi_device_id root_device_ids[] = { -- 2.24.0