This patch series try to fix ath9k ASPM. Some of patches are cleanup only or do merging common code (with e1000e driver). With CONFIG_PCIEASPM it's possible to change ASPM settings on runtime via /sys/module/pcie_aspm/parameters/policy . However most drivers I looked at assume this setting is constant. I add a callback to pci driver to inform about the change, and allow driver to do needed hw related changes. Currently only ath9k implement the callback, but I think it will be useful for other drivers i.e. iwlwifi, rtlwifi that do some own ASPM handling. Would be nice to get some testing on patches on different platforms with ath9k devices on kernel compiled with CONFIG_PCIEASPM (default) and mixing up commands: echo powersave > /sys/module/pcie_aspm/parameters/policy echo performance > /sys/module/pcie_aspm/parameters/policy ifconfig wlan0 down ifconfig wlan0 up pm-suspend Cc: Jesse Barnes <jbarnes@xxxxxxxxxxxxxxxx> Cc: linux-pci@xxxxxxxxxxxxxxx Cc: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx> Cc: e1000-devel@xxxxxxxxxxxxxxxxxxxxx --- drivers/net/e1000e/netdev.c | 31 ---------- drivers/net/wireless/ath/ath9k/ar9002_hw.c | 12 --- drivers/net/wireless/ath/ath9k/ar9003_hw.c | 12 --- drivers/net/wireless/ath/ath9k/hw-ops.h | 9 +- drivers/net/wireless/ath/ath9k/hw.c | 17 +++-- drivers/net/wireless/ath/ath9k/hw.h | 12 +-- drivers/net/wireless/ath/ath9k/main.c | 8 -- drivers/net/wireless/ath/ath9k/pci.c | 88 ++++++++++++++++++++++------- drivers/pci/pcie/Makefile | 3 drivers/pci/pcie/aspm.c | 46 ++++++++++++++- include/linux/pci-aspm.h | 2 include/linux/pci.h | 3 12 files changed, 148 insertions(+), 95 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html