1. 10 Jan, 2014 4 commits
    • Johannes Berg's avatar
      mac80211: reset TX info flags when frame will be reprocessed · 03c8c06f
      Johannes Berg authored
      The temporary TX info flags need to be cleared if the frame will
      be processed through the TX handlers again, otherwise it can get
      messed up. This fixes a bug that happened when an aggregation
      session was stopped while the station was sleeping - some frames
      might get transmitted marked as aggregation erroneously without
      this fix.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      03c8c06f
    • Johannes Berg's avatar
      mac80211: release multiple ACs in uAPSD, fix more-data bug · f9f760b4
      Johannes Berg authored
      When a response for PS-Poll or a uAPSD trigger frame is sent, the
      more-data bit should be set according to 802.11-2012 11.2.1.5 h),
      meaning that it should indicate more data on the relevant ACs
      (delivery-enabled or nondelivery-enabled for uAPSD or PS-Poll.)
      
      In, for example, the following scenario:
       * 1 frame on VO queue (either in driver or in mac80211)
       * at least 1 frame on VI queue (in the driver)
       * both VO/VI are delivery-enabled
       * uAPSD trigger frame received
      
      The more-data flag to the driver would not be set, even though
      it should be.
      
      While fixing this, I noticed that we should really release frames
      from multiple ACs where there's data buffered in the driver for
      the corresponding TIDs.
      
      To address all this, restructure the code a bit to consider all
      ACs if we only release driver frames or only buffered frames.
      This also addresses the more-data bug described above as now the
      TIDs will all be marked as released, so the driver will have to
      check the number of frames.
      
      While at it, clarify some code and comments and remove the found
      variable, replacing it with the appropriate sw/hw release check.
      Reported-by: default avatarEliad Peller <eliad@wizery.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      f9f760b4
    • Johannes Berg's avatar
      mac80211: fix PS-Poll driver release TID · 0a1cb809
      Johannes Berg authored
      Using ffs() for the PS-Poll release TID is wrong, it will cause
      frames to be released in order 0 1 2 3 4 5 6 7 instead of the
      correct 7 6 5 4 3 0 2 1. Fix this by adding a new function that
      implements "highest priority TID" properly.
      Reported-by: default avatarEliad Peller <eliad@wizery.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      0a1cb809
    • Avinash Patil's avatar
      ieee80211: add definition for TDLS wide band extended capability · 852c0153
      Avinash Patil authored
      Seventh bit of 8th byte of extended capabilities specifies wide
      bandwidth support for TDLS links. Add this definition to ieee80211.
      Signed-off-by: default avatarAvinash Patil <patila@marvell.com>
      Signed-off-by: default avatarBing Zhao <bzhao@marvell.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      852c0153
  2. 09 Jan, 2014 2 commits
  3. 07 Jan, 2014 5 commits
  4. 06 Jan, 2014 9 commits
  5. 30 Dec, 2013 1 commit
  6. 19 Dec, 2013 7 commits
  7. 18 Dec, 2013 2 commits
  8. 16 Dec, 2013 10 commits