1. 16 Aug, 2010 39 commits
  2. 13 Aug, 2010 1 commit
    • Maxim Levitsky's avatar
      ath5k: disable ASPM L0s for all cards · 6ccf15a1
      Maxim Levitsky authored
      Atheros PCIe wireless cards handled by ath5k do require L0s disabled.
      For distributions shipping with CONFIG_PCIEASPM (this will be enabled
      by default in the future in 2.6.36) this will also mean both L1 and L0s
      will be disabled when a pre 1.1 PCIe device is detected. We do know L1
      works correctly even for all ath5k pre 1.1 PCIe devices though but cannot
      currently undue the effect of a blacklist, for details you can read
      pcie_aspm_sanity_check() and see how it adjusts the device link
      capability.
      
      It may be possible in the future to implement some PCI API to allow
      drivers to override blacklists for pre 1.1 PCIe but for now it is
      best to accept that both L0s and L1 will be disabled completely for
      distributions shipping with CONFIG_PCIEASPM rather than having this
      issue present. Motivation for adding this new API will be to help
      with power consumption for some of these devices.
      
      Example of issues you'd see:
      
        - On the Acer Aspire One (AOA150, Atheros Communications Inc. AR5001
          Wireless Network Adapter [168c:001c] (rev 01)) doesn't work well
          with ASPM enabled, the card will eventually stall on heavy traffic
          with often 'unsupported jumbo' warnings appearing. Disabling
          ASPM L0s in ath5k fixes these problems.
      
        - On the same card you would see a storm of RXORN interrupts
          even though medium is idle.
      
      Credit for root causing and fixing the bug goes to Jussi Kivilinna.
      
      Cc: David Quan <David.Quan@atheros.com>
      Cc: Matthew Garrett <mjg59@srcf.ucam.org>
      Cc: Tim Gardner <tim.gardner@canonical.com>
      Cc: Jussi Kivilinna <jussi.kivilinna@mbnet.fi>
      Cc: stable@kernel.org
      Signed-off-by: default avatarLuis R. Rodriguez <lrodriguez@atheros.com>
      Signed-off-by: default avatarMaxim Levitsky <maximlevitsky@gmail.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      6ccf15a1