1. 13 7月, 2012 2 次提交
    • M
      ath9k: Add WoW related mac80211 callbacks · b11e640a
      Mohammed Shafi Shajakhan 提交于
      add suspend/resume/set_wakeup callbacks to the driver
      
      *suspend
      
      - bail out only if all the conditions for configuring WoW.
        is fine, currently multivif case is not handled
      - check for associated state.
      - map wow triggers from user space data.
      - add deauth/disassoc pattern and user defined pattern,
        for the later a list is maintained.
      - store the interrupt mask before suspend, enabled beacon
        miss interrupt for WoW.
      - configure WoW in the hardware by calling ath9k_hw_wow_enable.
      
      *resume
      
      - restore the interrupts based on the interrupt mask
        stored before suspend.
      - call ath9k_hw_wow_wakeup to configure/restore the hardware.
      - after wow wakeup clear away WoW events and query the
        WoW wakeup reason from the status register
      
      *set_wakeup
      
      - to call 'device_set_wakeup_enable' from cfg80211/mac80211
        when wow is configured and as per Rafael/Johannnes the
        right way to do so rather in the driver suspend/resume
        call back
      
      Cc: Senthil Balasubramanian <senthilb@qca.qualcomm.com>
      Cc: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
      Cc: vadivel@qca.qualcomm.com
      Signed-off-by: NMohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      b11e640a
    • M
      ath9k: Add definitions and structures to support WoW · 01c78533
      Mohammed Shafi Shajakhan 提交于
      *add structures, macros and variables for WoW, so that the driver
      can make use of it.
      *maintain a list for user enabled patterns and masks
      *track pattern slots for the hardware limitation on the
      maximum number of patterns that can be stored.
      *track interrupts enabled before WoW suspend, so
      that can be reconfigured after resume
      *have macros to parse user defined wow configurations to
      hardware code
      
      Cc: Senthil Balasubramanian <senthilb@qca.qualcomm.com>
      Cc: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
      Cc: vadivel@qca.qualcomm.com
      Signed-off-by: NLuis R. Rodriguez <mcgrof@qca.qualcomm.com>
      Signed-off-by: NMohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      01c78533
  2. 10 7月, 2012 1 次提交
  3. 27 6月, 2012 1 次提交
  4. 20 6月, 2012 1 次提交
  5. 14 6月, 2012 1 次提交
  6. 07 6月, 2012 8 次提交
  7. 17 4月, 2012 1 次提交
  8. 12 4月, 2012 1 次提交
  9. 10 4月, 2012 1 次提交
    • R
      ath9k: recover ar9380 chips from rare stuck state · 01e18918
      Rajkumar Manoharan 提交于
      In the experiment with Azimuth ADEPT-n testbed where the APs transmit
      power was reduced to 25% and the signal strength was futher attenuated
      by 20dB and induced a path loss of ~7dB, the station was reporting
      beacon losses and the following issue were observed.
      
      * rx clear is stuck at low for more than 300ms
      * dcu chain and complete state is stuck at one of the hang signature
      
      This patch triggers the hang detection logic that recovers the chip
      from any of the above conditions. As the issue was originally reported
      in ChromeOs with AR9382 chips, this detection logic is enabled only for
      AR9380/2 chips.
      
      Cc: Paul Stewart <pstew@google.com>
      Reported-by: NGary Morain <gmorain@google.com>
      Signed-off-by: NRajkumar Manoharan <rmanohar@qca.qualcomm.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      01e18918
  10. 16 3月, 2012 4 次提交
  11. 08 3月, 2012 1 次提交
  12. 28 2月, 2012 5 次提交
  13. 11 1月, 2012 1 次提交
  14. 05 1月, 2012 1 次提交
  15. 20 12月, 2011 1 次提交
  16. 16 12月, 2011 3 次提交
  17. 01 12月, 2011 2 次提交
  18. 10 11月, 2011 1 次提交
  19. 09 11月, 2011 1 次提交
  20. 15 10月, 2011 1 次提交
  21. 01 10月, 2011 1 次提交
    • J
      mac80211: let drivers inform it about per TID buffered frames · 042ec453
      Johannes Berg 提交于
      For uAPSD implementation, it is necessary to know on
      which ACs frames are buffered. mac80211 obviously
      knows about the frames it has buffered itself, but
      with aggregation many drivers buffer frames. Thus,
      mac80211 needs to be informed about this.
      
      For now, since we don't have APSD in any form, this
      will unconditionally set the TIM bit for the station
      but later with uAPSD only some ACs might cause the
      TIM bit to be set.
      
      ath9k is the only driver using this API and I only
      modify it in the most basic way, it won't be able
      to implement uAPSD with this yet. But it can't do
      that anyway since there's no way to selectively
      release frames to the peer yet.
      
      Since drivers will buffer frames per TID, let them
      inform mac80211 on a per TID basis, mac80211 will
      then sort out the AC mapping itself.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      042ec453
  22. 17 9月, 2011 1 次提交