1. 28 8月, 2010 3 次提交
  2. 27 8月, 2010 2 次提交
  3. 26 8月, 2010 4 次提交
  4. 25 8月, 2010 6 次提交
  5. 18 8月, 2010 1 次提交
  6. 17 8月, 2010 4 次提交
  7. 10 8月, 2010 1 次提交
    • J
      iwlagn: fix rts cts protection · 94597ab2
      Johannes Berg 提交于
      Currently the driver will try to protect all frames,
      which leads to a lot of odd things like sending an
      RTS with a zeroed RA before multicast frames, which
      is clearly bogus.
      
      In order to fix all of this, we need to take a step
      back and see what we need to achieve:
       * we need RTS/CTS protection if requested by
         the AP for the BSS, mac80211 tells us this
       * in that case, CTS-to-self should only be
         enabled when mac80211 tells us
       * additionally, as a hardware workaround, on
         some devices we have to protect aggregated
         frames with RTS
      
      To achieve the first two items, set up the RXON
      accordingly and set the protection required flag
      in the transmit command when mac80211 requests
      protection for the frame.
      
      To achieve the last item, set the rate-control
      RTS-requested flag for all stations that we have
      aggregation sessions with, and set the protection
      required flag when sending aggregated frames (on
      those devices where this is required).
      
      Since otherwise bugs can occur, do not allow the
      user to override the RTS-for-aggregation setting
      from sysfs any more.
      
      Finally, also clean up the way all these flags get
      set in the driver and move everything into the
      device-specific functions.
      
      Cc: stable@kernel.org [2.6.35]
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NWey-Yi Guy <wey-yi.w.guy@intel.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      94597ab2
  8. 23 7月, 2010 3 次提交
  9. 03 7月, 2010 3 次提交
    • W
      iwlwifi: add support for device tx flush request · 65550636
      Wey-Yi Guy 提交于
      "Flush" request can come from two different sources, it can either from
      mac80211, or from device when the operation is needed. Here
      adding the support for device issue "flush" request.
      
      When receive tx complete with status is TX_STATUS_FAIL_RFKILL_FLUSH,
      issue REPLY_TXFIFO_FLUSH command to uCode to flush out all the tx frames
      in queues.
      
      In this condition, since mac80211 has no knowledge of "flush" operation,
      driver need to stop all the tx queues and wait for the operation
      completed before wake up the queues for frames transmission.
      Signed-off-by: NWey-Yi Guy <wey-yi.w.guy@intel.com>
      Signed-off-by: NReinette Chatre <reinette.chatre@intel.com>
      65550636
    • W
      iwlwifi: add mac80211 flush callback support · 716c74b0
      Wey-Yi Guy 提交于
      Adding flush callback support in the driver. Two type of flush can be
      issued by mac80211:
      1. drop = true: frame drop is ok, issue REPLY_TXFIFO_FLUSH host command
      to uCode to drop all the frames in tx fifo queues; then return the
      control back to mac80211
      2. drop = false: wait for either all the frames in tx fifo queues been
      transmitted, or timeout; then return the control back to mac80211
      
      If the flush request coming from mac80211, mac80211 will make sure there
      are no additional frames push down to driver before flush operation is
      completed.
      Signed-off-by: NWey-Yi Guy <wey-yi.w.guy@intel.com>
      Signed-off-by: NReinette Chatre <reinette.chatre@intel.com>
      716c74b0
    • W
      iwlwifi: fix fw_restart module parameter · c04f9f22
      Wey-Yi Guy 提交于
      fw_restart module parameter was broken by the recent check for stuck
      queue patch, driver check the fx_restart module parameter
      before reload the firmware; but the stuck queue timer kick in after
      firmware error and reload the firmware even fw_restart=0. In this case,
      driver should not reload the firmware, it is important to help debugging
      uCode error.
      
      The only case we can ignore the module parameter is when user request
      firmware reload from debugfs, which can bypass the checking and perform
      firmware reload all the time.
      Signed-off-by: NWey-Yi Guy <wey-yi.w.guy@intel.com>
      Signed-off-by: NReinette Chatre <reinette.chatre@intel.com>
      c04f9f22
  10. 26 6月, 2010 2 次提交
  11. 22 6月, 2010 2 次提交
  12. 06 6月, 2010 5 次提交
  13. 14 5月, 2010 2 次提交
  14. 11 5月, 2010 2 次提交
    • W
      iwlwifi: provide more comments for cfg structure · 4ff73974
      Wey-Yi Guy 提交于
      Provide comments for newly added cfg parameters
      Signed-off-by: NWey-Yi Guy <wey-yi.w.guy@intel.com>
      Signed-off-by: NReinette Chatre <reinette.chatre@intel.com>
      4ff73974
    • J
      iwlwifi: rework broadcast station management · 2c810ccd
      Johannes Berg 提交于
      Currently, the broadcast station is managed along
      with the interface type, rather than always being
      present. That leads to a bug with injection -- it
      is currently not possible to inject frames when
      the only virtual interface is a monitor, because
      in that the required broadcast station is missing.
      
      Additionally, allocating and deallocating the
      broadcast station's LQ all the time is wasteful,
      and the code to support this is fairly complex.
      
      So this changes completely the way we manage the
      broadcast station. Rather than manage it along
      with any interface, we now allocate it when we
      bring the device up, and remove it again when we
      bring the device down. When we bring the device
      up, we don't immediately program the broadcast
      station into it, instead we just mark it active
      and rely on the next restore cycle to upload it
      to the device. This works because an unassociated
      RXON is always required at least once to set up
      device parameters, which implies a reprogramming
      of stations into the device.
      
      As we now manage all stations properly, there no
      longer is a need for forcing a clearing of them
      via iwl_clear_ucode_stations(), which can become
      a lot simpler.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NReinette Chatre <reinette.chatre@intel.com>
      2c810ccd