mbox series

[v4,0/3] Improve _OSC control request granularity

Message ID 20190701204515.23374-1-asierra@xes-inc.com (mailing list archive)
Headers show
Series Improve _OSC control request granularity | expand

Message

Aaron Sierra July 1, 2019, 8:45 p.m. UTC
These patches allow PCIe AER to function in a kernel without
CONFIG_PCIEASPM enabled or with ASPM disabled at run time via
pcie_aspm=off. There is no explicit Kbuild dependency between the two
and there are, in my opinion, legitimate reasons for no implicit
dependency to exist either.

Previously with ASPM:

acpi PNP0A03:00: _OSC: OS supports [ExtendedConfig ASPM ClockPM Segments MSI]
acpi PNP0A03:00: _OSC: OS now controls [PME AER PCIeCapability LTR]

Previously without ASPM:

acpi PNP0A03:00: _OSC: OS supports [ExtendedConfig Segments MSI]
acpi PNP0A03:00: _OSC: not requesting OS control; OS requires [ExtendedConfig ASPM ClockPM MSI]

Now with ASPM:

acpi PNP0A03:00: _OSC: OS supports [ExtendedConfig ASPM ClockPM Segments MSI]
acpi PNP0A03:00: _OSC: OS requested [PME AER PCIeCapability LTR]
acpi PNP0A03:00: _OSC: platform granted [PME AER PCIeCapability LTR]

Now without ASPM:

acpi PNP0A03:00: _OSC: OS supports [ExtendedConfig Segments MSI]
acpi PNP0A03:00: _OSC: OS requested [AER PCIeCapability]
acpi PNP0A03:00: _OSC: platform granted [AER PCIeCapability]

This is v4 of the patchset, which includes these changes from v3:
  * Factored non-functional output change into own patch (0001)
  * Factored non-functional introduction of inline functions into
    own patch (0003)

Aaron Sierra (3):
  PCI/ACPI: Homogenize _OSC negotiation output
  PCI/ACPI: Allow _OSC request without ASPM support
  PCI/ACPI: Refactor _OSC request bit setting

 drivers/acpi/pci_root.c | 109 +++++++++++++++++++++++++++++-----------
 1 file changed, 80 insertions(+), 29 deletions(-)