Background of this extension is a problem with the r8169 network driver. Several combinations of board chipsets and network chip versions have problems if ASPM is enabled, therefore we have to disable ASPM per default. However especially on notebooks ASPM can provide significant power-saving, therefore we want to give users the option to enable ASPM. With the new sysfs attributes users can control which ASPM link-states are disabled. v2: - use a dedicated sysfs attribute per link state - allow separate control of ASPM and PCI PM L1 sub-states v3: - patch 3: statically allocate the attribute group - patch 3: replace snprintf with printf - add patch 4 v4: - patch 3: add call to sysfs_update_group because is_visible callback returns false always at file creation time - patch 3: simplify code a little Heiner Kallweit (4): PCI/ASPM: add L1 sub-state support to pci_disable_link_state PCI/ASPM: allow to re-enable Clock PM PCI/ASPM: add sysfs attributes for controlling ASPM link states PCI/ASPM: remove Kconfig option PCIEASPM_DEBUG and related code Documentation/ABI/testing/sysfs-bus-pci | 13 ++ drivers/pci/pci-sysfs.c | 10 +- drivers/pci/pci.h | 12 +- drivers/pci/pcie/Kconfig | 7 - drivers/pci/pcie/aspm.c | 236 ++++++++++++++++-------- include/linux/pci-aspm.h | 10 +- 6 files changed, 195 insertions(+), 93 deletions(-) -- 2.23.0