1. 17 Sep, 2010 1 commit
  2. 27 Aug, 2010 3 commits
  3. 25 Aug, 2010 13 commits
  4. 24 Aug, 2010 2 commits
  5. 14 Aug, 2010 2 commits
    • Wey-Yi Guy's avatar
      iwlwifi: use long monitor timer to avoid un-necessary reload · 3198c68c
      Wey-Yi Guy authored
      
      
      For 5000 and 6000g2b series of devices, use long monitor timer to check
      stuck tx queues.
      
      .6000g2b series device, it is WiFi/BT combo device, there are some cases,
      tx queues are not move for a period of time because the WiFi/BT coex.
      
      .5000 series device, it is being reported firmware got reload more
      often than necessary, so extend the timer to avoid un-necessary reload.
      Signed-off-by: default avatarWey-Yi Guy <wey-yi.w.guy@intel.com>
      3198c68c
    • Wey-Yi Guy's avatar
      iwlwifi: long monitor timer · ce60659a
      Wey-Yi Guy authored
      
      
      Change the name for monitor timer, also adding define for long monitor
      timer; long monitor timer can be used for the type of devices require longer
      time to determine the uCode is stuck on tx and needed reload.
      Signed-off-by: default avatarWey-Yi Guy <wey-yi.w.guy@intel.com>
      ce60659a
  6. 09 Aug, 2010 1 commit
    • Johannes Berg's avatar
      iwlagn: fix rts cts protection · 94597ab2
      Johannes Berg authored
      
      
      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: default avatarJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: default avatarWey-Yi Guy <wey-yi.w.guy@intel.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      94597ab2
  7. 23 Jul, 2010 2 commits
  8. 09 Jul, 2010 1 commit
  9. 02 Jul, 2010 3 commits
    • Wey-Yi Guy's avatar
      iwlwifi: generic parameter define for _agn device · bf3c7fdd
      Wey-Yi Guy authored
      
      
      Code clean up to change name from having 5000 as part of name which easy
      to confuse and think it is for 5000 series devices to more
      generic _agn name since it is being used by multiple _agn devices.
      
      No functional changes.
      Signed-off-by: default avatarWey-Yi Guy <wey-yi.w.guy@intel.com>
      Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
      bf3c7fdd
    • Wey-Yi Guy's avatar
      iwlwifi: add support for device tx flush request · 65550636
      Wey-Yi Guy authored
      
      
      "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: default avatarWey-Yi Guy <wey-yi.w.guy@intel.com>
      Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
      65550636
    • Wey-Yi Guy's avatar
      iwlwifi: add mac80211 flush callback support · 716c74b0
      Wey-Yi Guy authored
      
      
      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: default avatarWey-Yi Guy <wey-yi.w.guy@intel.com>
      Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
      716c74b0
  10. 25 Jun, 2010 3 commits
  11. 06 Jun, 2010 3 commits
  12. 13 May, 2010 2 commits
  13. 10 May, 2010 4 commits
    • Johannes Berg's avatar
      iwlwifi: rework broadcast station management · 2c810ccd
      Johannes Berg authored
      
      
      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: default avatarJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
      2c810ccd
    • Johannes Berg's avatar
      iwlwifi: remove ucode virtual functions · 22adba2a
      Johannes Berg authored
      
      
      AGN devices all use the same ucode operations,
      except for 4965, because 4965 uses only v1 file
      headers.
      
      Therefore, we can remove all the indirection
      we have here and just code the API distinction
      in place, with a small special case for 4965.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
      22adba2a
    • Johannes Berg's avatar
      iwlwifi: manage IBSS station properly · 1fa61b2e
      Johannes Berg authored
      
      
      Currently iwlwifi will eventually exhaust the station
      table when adding the BSSID station for IBSS mode,
      unless the interface is set down.
      
      The new mac80211 ibss joined/left notification allows
      us to fix that easily by moving the code to add the
      IBSS station to the notification, and also adding
      code to remove it again when we leave the IBSS.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
      1fa61b2e
    • Wey-Yi Guy's avatar
      iwlwifi: use cfg to configure calibration operation · 65d1f896
      Wey-Yi Guy authored
      
      
      sensitivity calibration and chain noise calibration are not available
      for all the devices; use .cfg to configure the availability of those
      calibration functions
      Signed-off-by: default avatarWey-Yi Guy <wey-yi.w.guy@intel.com>
      Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
      65d1f896