1. 25 Apr, 2014 1 commit
  2. 22 Apr, 2014 1 commit
  3. 09 Apr, 2014 1 commit
  4. 12 Feb, 2014 1 commit
    • Johannes Berg's avatar
      mac80211: add NAPI support back · 06d181a8
      Johannes Berg authored
      NAPI was originally added to mac80211 a long time ago (by John in
      commit 4e6cbfd0 in July 2010), but then removed years later
      (by Stanislaw in commit 30c97120
      
       in February 2013). No driver
      ever used it, so that was fine.
      
      Now I'm adding support for NAPI to our driver, so add some code
      to mac80211 again  to support NAPI. John was originally wrapping
      some (but not nearly all NAPI-related functions), but that doesn't
      scale very well with the number of functions that are there, some
      of which are even only inlines. Thus, instead of doing that, let
      the drivers manage the NAPI struct, except for napi_add() which is
      needed so mac80211 knows how to call napi_gro_receive().
      
      Also remove some no longer needed definitions that were left when
      NAPI support was removed.
      Reviewed-by: default avatarEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      Reviewed-by: default avatarEyal Shapira <eyal@wizery.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      06d181a8
  5. 04 Feb, 2014 1 commit
  6. 06 Jan, 2014 1 commit
  7. 16 Dec, 2013 1 commit
  8. 02 Dec, 2013 1 commit
  9. 25 Nov, 2013 3 commits
    • Max Stepanov's avatar
      mac80211: add generic cipher scheme support · 2475b1cc
      Max Stepanov authored
      
      
      This adds generic cipher scheme support to mac80211, such schemes
      are fully under control by the driver. On hw registration drivers
      may specify additional HW ciphers with a scheme how these ciphers
      have to be handled by mac80211 TX/RR. A cipher scheme specifies a
      cipher suite value, a size of the security header to be added to
      or stripped from frames and how the PN is to be verified on RX.
      Signed-off-by: default avatarMax Stepanov <Max.Stepanov@intel.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      2475b1cc
    • Karl Beldan's avatar
      mac80211: set hw initial idle state · 24d47300
      Karl Beldan authored
      
      
      ATM, the first call of ieee80211_do_open will configure the hw as
      non-idle, even if the interface being brought up is not a monitor, and
      this leads to inconsistent sequences like:
      
      register_hw()
      	do_open(sta)
      		hw_config(non-idle)
      (.. sta is non-idle ..)
      scan(sta)
      	hw_config(idle) (after scan finishes)
      do_stop(sta)
      do_open(sta)
      (.. sta is idle ..)
      Signed-off-by: default avatarKarl Beldan <karl.beldan@rivierawaves.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      24d47300
    • Johannes Berg's avatar
      mac80211: fix scheduled scan rtnl deadlock · 18db594a
      Johannes Berg authored
      When changing cfg80211 to use RTNL locking, this caused a
      deadlock in mac80211 as it calls cfg80211_sched_scan_stopped()
      from a work item that's on a workqueue that is flushed with
      the RTNL held.
      
      Fix this by simply using schedule_work(), the work only needs
      to finish running before the wiphy is unregistered, no other
      synchronisation (e.g. with suspend) is really required since
      for suspend userspace is already blocked anyway when we flush
      the workqueue so will only pick up the event after resume.
      
      Cc: stable@vger.kernel.org
      Fixes: 5fe231e8
      
       ("cfg80211: vastly simplify locking")
      Reported-and-tested-by: default avatarEliad Peller <eliadx.peller@intel.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      18db594a
  10. 23 Aug, 2013 1 commit
    • Johannes Berg's avatar
      mac80211: move setting WIPHY_FLAG_SUPPORTS_SCHED_SCAN into drivers · 1fb90260
      Johannes Berg authored
      
      
      mac80211 currently sets WIPHY_FLAG_SUPPORTS_SCHED_SCAN based on whether
      the start_sched_scan operation is supported or not, but that will not
      be correct for all drivers, we're adding scheduled scan to the iwlmvm
      driver but it depends on firmware support.
      
      Therefore, move setting WIPHY_FLAG_SUPPORTS_SCHED_SCAN into the drivers
      so that they can control it regardless of implementing the operation.
      
      This currently only affects the TI drivers since they're the only ones
      implementing scheduled scan (in a mac80211 driver.)
      Acked-by: default avatarLuciano Coelho <luca@coelho.fi>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      1fb90260
  11. 16 Jul, 2013 2 commits
  12. 03 Jul, 2013 1 commit
  13. 03 Jun, 2013 1 commit
  14. 24 May, 2013 1 commit
    • Johannes Berg's avatar
      cfg80211/mac80211: use cfg80211 wdev mutex in mac80211 · 8d61ffa5
      Johannes Berg authored
      
      
      Using separate locks in cfg80211 and mac80211 has always
      caused issues, for example having to unlock in places in
      mac80211 to call cfg80211, which even needed a framework
      to make cfg80211 calls after some functions returned etc.
      
      Additionally, I suspect some issues people have reported
      with the cfg80211 state getting confused could be due to
      such issues, when cfg80211 is asking mac80211 to change
      state but mac80211 is in the process of telling cfg80211
      that the state changed (in another way.)
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      8d61ffa5
  15. 16 Apr, 2013 1 commit
  16. 08 Apr, 2013 1 commit
  17. 25 Mar, 2013 2 commits
  18. 18 Mar, 2013 1 commit
  19. 11 Mar, 2013 1 commit
  20. 07 Mar, 2013 1 commit
    • Johannes Berg's avatar
      mac80211: provide ieee80211_sta_eosp() · e943789e
      Johannes Berg authored
      
      
      The irqsafe version ieee80211_sta_eosp_irqsafe() exists, but
      drivers must not mix calls to any irqsafe/non-irqsafe function.
      Both ath9k and iwlwifi, the likely first users of this interface,
      use non-irqsafe RX/TX/TX status so must also use a non-irqsafe
      version of this function. Since no driver uses the _irqsafe()
      version, remove that.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      e943789e
  21. 06 Mar, 2013 3 commits
  22. 27 Feb, 2013 1 commit
  23. 15 Feb, 2013 4 commits
  24. 11 Feb, 2013 2 commits
  25. 18 Jan, 2013 2 commits
  26. 03 Jan, 2013 4 commits