1. 27 Mar, 2009 5 commits
  2. 27 Feb, 2009 3 commits
    • Michael Buesch's avatar
      mac80211: Add software scan notifiers · 80e775bf
      Michael Buesch authored
      
      
      This adds optional notifier functions for software scan.
      Signed-off-by: default avatarMichael Buesch <mb@bu3sch.de>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      80e775bf
    • Sujith's avatar
      mac80211: Extend the rate control API with an update callback · 81cb7623
      Sujith authored
      
      
      The AP can switch dynamically between 20/40 Mhz channel width,
      in which case we switch the local operating channel, but the
      rate control algorithm is not notified. This patch adds a new callback
      to indicate such changes to the RC algorithm.
      
      Currently, HT channel width change is notified, but this callback
      can be used to indicate any new requirements that might come up later on.
      Signed-off-by: default avatarSujith <Sujith.Manoharan@atheros.com>
      Acked-by: default avatarJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      81cb7623
    • Johannes Berg's avatar
      mac80211: fix aggregation for hardware with ampdu queues · 96f5e66e
      Johannes Berg authored
      
      
      Hardware with AMPDU queues currently has broken aggregation.
      
      This patch fixes it by making all A-MPDUs go over the regular AC queues,
      but keeping track of the hardware queues in mac80211. As a first rough
      version, it actually stops the AC queue for extended periods of time,
      which can be removed by adding buffering internal to mac80211, but is
      currently not a huge problem because people rarely use multiple TIDs
      that are in the same AC (and iwlwifi currently doesn't operate as AP).
      
      This is a short-term fix, my current medium-term plan, which I hope to
      execute soon as well, but am not sure can finish before .30, looks like
      this:
       1) rework the internal queuing layer in mac80211 that we use for
          fragments if the driver stopped queue in the middle of a fragmented
          frame to be able to queue more frames at once (rather than just a
          single frame with its fragments)
       2) instead of stopping the entire AC queue, queue up the frames in a
          per-station/per-TID queue during aggregation session initiation,
          when the session has come up take all those frames and put them
          onto the queue from 1)
       3) push the ampdu queue layer abstraction this patch introduces in
          mac80211 into the driver, and remove the virtual queue stuff from
          mac80211 again
      
      This plan will probably also affect ath9k in that mac80211 queues the
      frames instead of passing them down, even when there are no ampdu queues.
      Signed-off-by: default avatarJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      96f5e66e
  3. 13 Feb, 2009 2 commits
  4. 09 Feb, 2009 1 commit
  5. 29 Jan, 2009 19 commits
  6. 16 Jan, 2009 1 commit
  7. 19 Dec, 2008 3 commits
    • Kalle Valo's avatar
      mac80211: implement dynamic power save · 520eb820
      Kalle Valo authored
      
      
      This patch implements dynamic power save for mac80211. Basically it
      means enabling power save mode after an idle period. Implementing it
      dynamically gives a good compromise of low power consumption and low
      latency. Some hardware have support for this in firmware, but some
      require the host to do it.
      
      The dynamic power save is implemented by adding an timeout to
      ieee80211_subif_start_xmit(). The timeout can be enabled from userspace
      with Wireless Extensions. For example, the command below enables the
      dynamic power save and sets the time timeout to 500 ms:
      
      iwconfig wlan0 power timeout 500m
      
      Power save now only works with devices which handle power save in firmware.
      It's also disabled by default and the heuristics when and how to enable is
      considered as a policy decision and will be left for the userspace to handle.
      In case the firmware has support for this, drivers can disable this feature
      with IEEE80211_HW_NO_STACK_DYNAMIC_PS.
      
      Big thanks to Johannes Berg for the help with the design and code.
      Signed-off-by: default avatarKalle Valo <kalle.valo@nokia.com>
      Acked-by: default avatarJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      520eb820
    • Jouni Malinen's avatar
      mac80211: Add HT rates into RX status reporting · 0fb8ca45
      Jouni Malinen authored
      
      
      This patch adds option for HT-enabled drivers to report HT rates
      (HT20/HT40, short GI, MCS index) to mac80211. These rates are
      currently not in the rate table, so the rate_idx is used to indicate
      MCS index.
      Signed-off-by: default avatarJouni Malinen <jouni.malinen@atheros.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      0fb8ca45
    • Sujith's avatar
      mac80211: Fix HT channel selection · 094d05dc
      Sujith authored
      
      
      HT management is done differently for AP and STA modes, unify
      to just the ->config() callback since HT is fundamentally a
      PHY property and cannot be per-BSS.
      
      Rename enum nl80211_sec_chan_offset as nl80211_channel_type to denote
      the channel type ( NO_HT, HT20, HT40+, HT40- ).
      Signed-off-by: default avatarJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: default avatarSujith <Sujith.Manoharan@atheros.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      094d05dc
  8. 12 Dec, 2008 3 commits
  9. 05 Dec, 2008 3 commits