1. 18 11月, 2015 1 次提交
  2. 05 10月, 2015 1 次提交
    • L
      iwlwifi: mvm: support using multiple ACs on single HW queue · 4ecafae9
      Liad Kaufman 提交于
      "DQA" is shorthand for "dynamic queue allocation", with the
      idea of allocating queues per-RA/TID on-demand rather than
      using shared queues statically allocated per vif. The goal
      of this is to enable future features (like GO PM) and to
      improve performance measurements of TX traffic.
      
      When RA/TID streams can't be neatly sorted into different AC
      queues, DQA allows sharing queues for the same RA. This means
      that DQA allows different ACs may reach the same HW queue.
      
      Update the code to allow such queue sharing by having a mapping
      between the HW queue and the mac80211 queues using it (as this
      could be more than one queue).
      Signed-off-by: NLiad Kaufman <liad.kaufman@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      4ecafae9
  3. 28 8月, 2015 1 次提交
  4. 04 8月, 2015 3 次提交
  5. 03 6月, 2015 1 次提交
    • J
      iwlwifi: prepare for higher API/CAPA bits · 859d914c
      Johannes Berg 提交于
      Currently, loading the firmware fails when it has higher API or CAPA
      bits than the driver supports. That's an issue with integration.
      
      At the same time, actually using api[0] and capa[0] will become
      confusing when we also have api[1] and capa[1], and it's almost
      certain that we'll mix up the bits and use the bits for api[1] with
      api[0] by accident.
      
      Avoid all this by translating the API/CAPA bits to the regular kernel
      test_bit() format, and also providing wrapper functions. Also use the
      __bitwise__ facility of sparse to check that we're testing the right
      one.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      859d914c
  6. 02 4月, 2015 2 次提交
  7. 30 3月, 2015 1 次提交
  8. 12 3月, 2015 1 次提交
  9. 01 3月, 2015 4 次提交
  10. 01 2月, 2015 2 次提交
  11. 22 1月, 2015 1 次提交
  12. 05 1月, 2015 1 次提交
  13. 29 12月, 2014 1 次提交
  14. 29 10月, 2014 1 次提交
  15. 16 9月, 2014 1 次提交
    • A
      iwlwifi: mvm: prepare for scheduler config command · 3edf8ff6
      Avri Altman 提交于
      The scheduler is a HW sub-block that directs the work of the Flow
      Handler by issuing requests for frame transfers, specifying source
      and destination. Its primary function is to allocate flows into the
      TX FIFOs based upon a pre-determined mapping.
      
      The driver has some responsibilities to the scheduler, namely
      initialising and maintaining the hardware registers. This is
      currently done by directly accessing them, which can cause races
      with the firmware also accessing the registers.
      
      To address this problem, change the driver to no longer directly
      access the registers but go through the firmware for this if the
      firmware has support for DQA and thus the new command.
      Signed-off-by: NAvri Altman <avri.altman@intel.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      3edf8ff6
  16. 04 9月, 2014 2 次提交
  17. 08 7月, 2014 2 次提交
  18. 06 7月, 2014 2 次提交
  19. 22 5月, 2014 1 次提交
  20. 19 5月, 2014 1 次提交
  21. 13 5月, 2014 2 次提交
  22. 07 5月, 2014 2 次提交
  23. 13 4月, 2014 1 次提交
  24. 19 3月, 2014 3 次提交
    • J
      iwlwifi: mvm: ignore unchanged low-latency flag · 3510aea4
      Johannes Berg 提交于
      If the low-latency update is called but there's no change then
      ignore the update instead of triggering all the required work.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      3510aea4
    • A
      iwlwifi: mvm: configure low latency dependent scan parameters · 50df8a30
      Alexander Bondar 提交于
      In case of system low latency configure passive scan to be fragmented.
      Set the following scan parameters for both immediate and scheduled scan:
       - passive scan fragment duration = 20ms
       - out-of-channel time = 70ms
       - suspend time = 105ms
      Restructure channel's active/passive dwell time configuration to better
      suit the above change.
      
      The idea is that under low latency traffic passive scan is fragmented,
      i.e. that dwell on a particular channel will be fragmented. Each
      fragment dwell time is 20ms and fragments period is 105ms. Skipping to
      next channel will be delayed by the same period (105ms). So suspend_time
      parameter describing both fragments and channels skipping periods is set
      to 105ms. This value is chosen so that overall passive scan duration
      will not be too long. Max_out_time in this case is set to 70ms, so for
      active scanning operating channel will be left for 70ms while for
      passive still for 20ms (fragment dwell).
      Signed-off-by: NAlexander Bondar <alexander.bondar@intel.com>
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      50df8a30
    • E
      iwlwifi: mvm: send udev event upon firmware error to dump logs · 1bd3cbc1
      Emmanuel Grumbach 提交于
      When the firmware asserts, the driver will dump the firmware
      state to an internal buffer. This buffer is kept aside until
      it is dumped through debugfs. Once an external application
      fetched the data, the buffer is freed and a new buffer can
      be allocated in case another assert occurs.
      
      A udev event is sent to trigger an external application.
      
      A simple rule like:
      DRIVER=="iwlwifi", ACTION=="change", RUN+="/sbin/dump_sram.sh"
      
      can fetch the data from debugfs.
      
      Here is my dump_sram.sh:
      
      phyname=$(basename ${DEVPATH})
      date=$(date +%F_%H_%M)
      filename=/var/log/iwl-sram-${phyname}-${date}.bin
      cat /sys/kernel/debug/ieee80211/${phyname}/iwlwifi/iwlmvm/fw_error_dump > ${filename}
      
      The current SRAM size is 80KB so, currently:
      $ ls -lh iwl-sram-phy0-2014-03-16_13_14.bin
      -rw-r--r-- 1 emmanuel emmanuel 81K Mar 16 13:15 iwl-sram-phy0-2014-03-16_13_14.bin
      
      and after compression:
      $ ls -lh iwl-sram-phy0-2014-03-16_13_14.bin.xz
      -rw-r--r-- 1 emmanuel emmanuel 13K Mar 16 13:15 iwl-sram-phy0-2014-03-16_13_14.bin.xz
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      1bd3cbc1
  25. 13 2月, 2014 2 次提交