An error occurred fetching the project authors.
  1. 07 Oct, 2010 1 commit
  2. 27 Aug, 2010 1 commit
  3. 02 Jul, 2010 1 commit
    • Wey-Yi Guy's avatar
      iwlwifi: fix fw_restart module parameter · c04f9f22
      Wey-Yi Guy authored
      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: default avatarWey-Yi Guy <wey-yi.w.guy@intel.com>
      Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
      c04f9f22
  4. 21 Jun, 2010 1 commit
  5. 14 Jun, 2010 1 commit
  6. 03 Jun, 2010 1 commit
    • John W. Linville's avatar
      Revert "iwlwifi: move _agn statistics related structure" · 2daf6c15
      John W. Linville authored
      This reverts commit a2064b7a.
      
      when CONFIG_IWLAGN=n:
      
      drivers/net/wireless/iwlwifi/iwl-rx.c:254: error: 'struct iwl_priv' has no member named '_agn'
      drivers/net/wireless/iwlwifi/iwl-rx.c:303: error: 'struct iwl_priv' has no member named '_agn'
      drivers/net/wireless/iwlwifi/iwl-rx.c:304: error: 'struct iwl_priv' has no member named '_agn'
      drivers/net/wireless/iwlwifi/iwl-rx.c:305: error: 'struct iwl_priv' has no member named '_agn'
      drivers/net/wireless/iwlwifi/iwl-rx.c:306: error: 'struct iwl_priv' has no member named '_agn'
      
      and many more.
      
      Conflicts:
      
      	drivers/net/wireless/iwlwifi/iwl-agn-debugfs.c
      	drivers/net/wireless/iwlwifi/iwl-debugfs.c
      	drivers/net/wireless/iwlwifi/iwl-dev.h
      	drivers/net/wireless/iwlwifi/iwl-rx.c
      Reported-by: default avatarRandy Dunlap <randy.dunlap@oracle.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      2daf6c15
  7. 13 May, 2010 2 commits
  8. 10 May, 2010 2 commits
  9. 30 Mar, 2010 1 commit
    • Tejun Heo's avatar
      include cleanup: Update gfp.h and slab.h includes to prepare for breaking... · 5a0e3ad6
      Tejun Heo authored
      include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h
      
      percpu.h is included by sched.h and module.h and thus ends up being
      included when building most .c files.  percpu.h includes slab.h which
      in turn includes gfp.h making everything defined by the two files
      universally available and complicating inclusion dependencies.
      
      percpu.h -> slab.h dependency is about to be removed.  Prepare for
      this change by updating users of gfp and slab facilities include those
      headers directly instead of assuming availability.  As this conversion
      needs to touch large number of source files, the following script is
      used as the basis of conversion.
      
        http://userweb.kernel.org/~tj/misc/slabh-sweep.py
      
      The script does the followings.
      
      * Scan files for gfp and slab usages and update includes such that
        only the necessary includes are there.  ie. if only gfp is used,
        gfp.h, if slab is used, slab.h.
      
      * When the script inserts a new include, it looks at the include
        blocks and try to put the new include such that its order conforms
        to its surrounding.  It's put in the include block which contains
        core kernel includes, in the same order that the rest are ordered -
        alphabetical, Christmas tree, rev-Xmas-tree or at the end if there
        doesn't seem to be any matching order.
      
      * If the script can't find a place to put a new include (mostly
        because the file doesn't have fitting include block), it prints out
        an error message indicating which .h file needs to be added to the
        file.
      
      The conversion was done in the following steps.
      
      1. The initial automatic conversion of all .c files updated slightly
         over 4000 files, deleting around 700 includes and adding ~480 gfp.h
         and ~3000 slab.h inclusions.  The script emitted errors for ~400
         files.
      
      2. Each error was manually checked.  Some didn't need the inclusion,
         some needed manual addition while adding it to implementation .h or
         embedding .c file was more appropriate for others.  This step added
         inclusions to around 150 files.
      
      3. The script was run again and the output was compared to the edits
         from #2 to make sure no file was left behind.
      
      4. Several build tests were done and a couple of problems were fixed.
         e.g. lib/decompress_*.c used malloc/free() wrappers around slab
         APIs requiring slab.h to be added manually.
      
      5. The script was run on all .h files but without automatically
         editing them as sprinkling gfp.h and slab.h inclusions around .h
         files could easily lead to inclusion dependency hell.  Most gfp.h
         inclusion directives were ignored as stuff from gfp.h was usually
         wildly available and often used in preprocessor macros.  Each
         slab.h inclusion directive was examined and added manually as
         necessary.
      
      6. percpu.h was updated not to include slab.h.
      
      7. Build test were done on the following configurations and failures
         were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my
         distributed build env didn't work with gcov compiles) and a few
         more options had to be turned off depending on archs to make things
         build (like ipr on powerpc/64 which failed due to missing writeq).
      
         * x86 and x86_64 UP and SMP allmodconfig and a custom test config.
         * powerpc and powerpc64 SMP allmodconfig
         * sparc and sparc64 SMP allmodconfig
         * ia64 SMP allmodconfig
         * s390 SMP allmodconfig
         * alpha SMP allmodconfig
         * um on x86_64 SMP allmodconfig
      
      8. percpu.h modifications were reverted so that it could be applied as
         a separate patch and serve as bisection point.
      
      Given the fact that I had only a couple of failures from tests on step
      6, I'm fairly confident about the coverage of this conversion patch.
      If there is a breakage, it's likely to be something in one of the arch
      headers which should be easily discoverable easily on most builds of
      the specific arch.
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      Guess-its-ok-by: default avatarChristoph Lameter <cl@linux-foundation.org>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Lee Schermerhorn <Lee.Schermerhorn@hp.com>
      5a0e3ad6
  10. 25 Mar, 2010 6 commits
  11. 24 Mar, 2010 1 commit
  12. 19 Mar, 2010 3 commits
  13. 10 Mar, 2010 1 commit
  14. 23 Feb, 2010 1 commit
    • Reinette Chatre's avatar
      Revert "iwlwifi: Monitor and recover the aggregation TX flow failure" · ab9bdc34
      Reinette Chatre authored
      This reverts commit 1db5950f.
      
      The goal of "iwlwifi: Monitor and recover the aggregation TX flow failure"
      is to first detect when data transmission stalls and then to recover from
      this situation with a reset of the radio or the firmware, depending on how
      bad the transmission failures are.
      
      Unfortunately we have found that this change causes excessive resets with
      its current detection algorithm. It also performs its recovery action when
      none is really needed, like when we are not associated.
      
      Revert this change until the issues have been addressed.
      Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
      ab9bdc34
  15. 12 Feb, 2010 1 commit
  16. 11 Feb, 2010 4 commits
  17. 25 Jan, 2010 3 commits
    • Reinette Chatre's avatar
      iwlwifi: cleanup spectrum measurement command support · 81963d68
      Reinette Chatre authored
      In iwlagn the support for spectrum measurement command has been
      disabled since v2.6.29 without any requests for it. In addition to this
      when this command is indeed enabled it has been found to trigger firmware
      SYSASSERT on at least 4965 and 5100 hardware (see
      http://bugzilla.intellinuxwireless.org/show_bug.cgi?id=1952 ). Since then
      this code has been bitrotting and cannot just be enabled without porting.
      
      Remove support for spectrum measurement command from iwlagn. It can be
      added back if there is a future need and the firmware problem it triggers
      has been fixed. Support for the spectrim measurement notification remains
      as it has been enabled all the time.
      
      In addition to this remove the 3945 spectrum measurement command Kconfig
      option and make this command always supported. The code added by this
      enabling is minimal and only run when user triggers a spectrum measurement
      request via sysfs.
      Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      81963d68
    • Trieu 'Andrew' Nguyen's avatar
      iwlwifi: Tune radio to prevent unexpected behavior · 3e4fb5fa
      Trieu 'Andrew' Nguyen authored
      We have seen the throughput dropped due to external noisy environment
      and the radio is out of tune.  There are lot of plcp errors indicating
      this condition. Eventually the station can get de-authenticated by the
      Access Point.  By resetting and tuning the radio, the plcp errors are
      reduced or eliminated and the throughput starts to rise.
      
      To prevent unexpected behavior such as drop in throughput or deauthentication,
      - The change provides the driver feature to monitor and tune the radio base on
      the statistics notification from the uCode.
      - It also allows the setting of the plcp error rate threshold via
      the plcp_delta under debugfs interface.
      Signed-off-by: default avatarTrieu 'Andrew' Nguyen <trieux.t.nguyen@intel.com>
      Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      3e4fb5fa
    • Wey-Yi Guy's avatar
      iwlwifi: configure missed beacon threshold · a13d276f
      Wey-Yi Guy authored
      Add support to configure missed beacon threshold, by default, if receive
      "missed beacon" notification from uCode and has more than 5 consecutive
      beacon missed, then perform sensitivity calibration; with this change,
      allow user to adjust the missed beacon threshold from debugfs in case
      more sensitivity calibration required for better performance in noisy
      environment
      
      The default value (=5) should be good enough for the normal condition,
      but for very noisy environment, more sensitivity calibration could help
      improve the throughput, so by setting the missed beacon threshold to
      lower number, user might experience better performance result.
      Signed-off-by: default avatarWey-Yi Guy <wey-yi.w.guy@intel.com>
      Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      a13d276f
  18. 19 Jan, 2010 4 commits
  19. 28 Dec, 2009 1 commit
  20. 21 Dec, 2009 1 commit
  21. 23 Nov, 2009 1 commit
    • Ben Cahill's avatar
      iwlagn: Use iwl_write8() for CSR_INT_COALESCING register · 74ba67ed
      Ben Cahill authored
      CSR_INT_COALESCING previously had only one, but now has two single-byte fields.
      With only one single-byte field (lowest order byte) it was okay to write via
      iwl_write32(), but now with two, an iwl_write32() to the lower order field
      clobbers the other field (odd-address CSR_INT_PERIODIC_REG, offset 0x5), and an
      iwl_write32() to CSR_INT_PERIODIC_REG could clobber the lowest byte of the
      next-higher register (CSR_INT, offset 0x8).
      
      Fortunately, no bad side effects have been produced by the iwl_write32()
      usage, due to order of execution (low order byte was always written before
      higher order byte), and the fact that writing "0" to the low byte of the
      next higher register has no effect (only action is when writing "1"s).
      
      Nonetheless, this cleans up the accesses so no bad side effects might occur
      in the future, if execution order changes, or more bit fields get added to
      CSR_INT_COALESCING.
      
      Add some comments regarding periodic interrupt usage.
      Signed-off-by: default avatarBen Cahill <ben.m.cahill@intel.com>
      Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      74ba67ed
  22. 18 Nov, 2009 2 commits
    • Johannes Berg's avatar
      iwlwifi: handle unicast PS buffering · 6ab10ff8
      Johannes Berg authored
      Using the new mac80211 functionality, this makes
      iwlwifi handle unicast PS buffering correctly.
      The device works like this:
      
       * when a station goes to sleep, the microcode notices
         this and marks the station as asleep
       * when the station is marked asleep, the microcode
         refuses to transmit to the station and rejects all
         frames queued to it with the failure status code
         TX_STATUS_FAIL_DEST_PS (a previous patch handled
         this correctly)
       * when we need to send frames to the station _although_
         it is asleep, we need to tell the ucode how many,
         and this is asynchronous with sending so we cannot
         just send the frames, we need to wait for all other
         frames to be flushed, and then update the counter
         before sending out the poll response frames. This
         is handled partially in the driver and partially in
         mac80211.
      
      In order to do all this correctly, we need to
       * keep track of how many frames are pending for each
         associated client station (avoid doing it for other
         stations to avoid the atomic ops)
       * tell mac80211 that we driver-block the PS status
         while there are still frames pending on the queues,
         and once they are all rejected (due to the dest sta
         being in PS) unblock mac80211
      Signed-off-by: default avatarJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      6ab10ff8
    • Wey-Yi Guy's avatar
      iwlwifi: update reply_statistics_cmd with 'clear' parameter · ef8d5529
      Wey-Yi Guy authored
      When issue REPLY_STATISTICS_CMD to uCode, two possible flag
      can be set in the configuration flags
      
      bit 0: Clear statistics
             0: Do not clear Statistics counters
             1: Clear to zero Statistics counters
      
      Allow "clear" parameter to be set from the caller.
      
      Add debugfs file to clear the statistics counters to help monitor and
      debug the uCode behavior.
      Signed-off-by: default avatarWey-Yi Guy <wey-yi.w.guy@intel.com>
      Signed-off-by: default avatarReinette Chatre <reinette.chatre@intel.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      ef8d5529