1. 06 10月, 2017 1 次提交
  2. 10 8月, 2017 1 次提交
  3. 09 8月, 2017 1 次提交
    • N
      iwlwifi: mvm: send delba upon rx ba session timeout · 20fc690f
      Naftali Goldstein 提交于
      When an RX block-ack session times out, the firmware, which offloads
      RX reordering but not the BA session negotiation, stops the session
      but doesn't send a DELBA.  This causes the the session to remain
      active in the remote device, so no more BA sessions will be
      established, causing a severe throughput degradation due to the lack
      of aggregation.
      
      Use the new ieee80211_rx_ba_timer_expired API when the ba session timer
      expires, since this will tear down the ba session and also send a delba.
      
      The previous API used is intended for drivers that offload the
      addba/delba negotiation, but not the rx reordering, while our driver
      does the opposite.
      
      This patch depends on "mac80211: add api to start ba session timer
      expired flow".
      Signed-off-by: NNaftali Goldstein <naftali.goldstein@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      20fc690f
  4. 01 8月, 2017 5 次提交
  5. 21 7月, 2017 2 次提交
  6. 29 6月, 2017 3 次提交
  7. 23 6月, 2017 5 次提交
  8. 06 6月, 2017 2 次提交
  9. 02 6月, 2017 3 次提交
  10. 26 4月, 2017 7 次提交
  11. 25 4月, 2017 1 次提交
  12. 20 4月, 2017 7 次提交
    • E
      iwlwifi: mvm: provide the actual number of frames for the SP len · e71ca5ea
      Emmanuel Grumbach 提交于
      In the end, the firmware doesn't want the SP len as present
      in the WMM IE, but rather the actual number of frames.
      
      Fixes: bd3c6cf901a8 ("iwlwifi: mvm: tell the firmware about the U-APSD parameters")
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      e71ca5ea
    • S
      iwlwifi: mvm: ignore BAID for SN smaller than SSN · 5d43eab6
      Sara Sharon 提交于
      When we get SN that is smaller than SSN of the aggregation,
      we shouldn't apply any reordering on them.
      Further more, HW NSSN will be zeroed, which can cause us
      to make some invalid decisions.
      Detect the situation and invalidate the BAID.
      
      Fixes: b915c101 ("iwlwifi: mvm: add reorder buffer per queue")
      Signed-off-by: NSara Sharon <sara.sharon@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      5d43eab6
    • S
      iwlwifi: move to TVQM mode · 310181ec
      Sara Sharon 提交于
      In TVQM firmware returns the value of the queue ID and code
      should accept it.
      The TX queue config API was changed. Move to new API.
      This has to be done in parallel in mvm and pcie.
      Do not move yet to 512 queues since there are some opens
      with enabling it.
      Signed-off-by: NSara Sharon <sara.sharon@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      310181ec
    • E
      iwlwifi: mvm: tell the firmware about the U-APSD parameters · c80eb570
      Emmanuel Grumbach 提交于
      Newer firmware versions will be able to handle all the
      WMM-PS flows internally when we act as a GO. The firwmare
      relies on the fact that the drivers puts frames for
      different peers in different queues (DQA) to achieve this.
      The driver will not be aware of the power state of the peers
      anymore.
      
      Tell the firmware about the WMM-PS parameters of earch peer
      that connects to us so that it can know what are the
      trigger-enabled ACs, the delivery-enableds ACs and the
      Service Period length.
      
      This API change is backward compatible since older firmware
      versions will simply ignore the newly added values.
      
      Since we don't support ieee80211 TSPECs for now, just copy
      the trigger-enabled ACs to the delivery enabled ones.
      Signed-off-by: NEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      c80eb570
    • S
      iwlwifi: mvm: support a000 SCD queue configuration · bb49701b
      Sara Sharon 提交于
      a000 devices queue management is going to change significantly.
      We will have 512 queues. Those queues will be assigned number
      by the firmware and not by the driver.
      
      In addition, due to SN offload having TX queue shared between TIDs
      is impossible
      
      Also, the ADD_STA command no longer updates queues status.
      The only point of changing queue in the SCD queue config API.
      
      From driver perspective we have here a new design:
      
      Queue sharing and inactivity checks are disabled.
      
      Once this is done, the only paths that call scd_queue_cfg command
      are paths that alloc and release TX queues - which will make future
      accommodation to queue number assignment by FW easier.
      Since allocating 512 queues statically is not advisable, transport
      will allocate the queue on demand, fill the command with DRAM data
      and send it. This is reflected in the new transport API.
      Signed-off-by: NSara Sharon <sara.sharon@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      bb49701b
    • S
      iwlwifi: mvm: prepare for station count change · 0ae98812
      Sara Sharon 提交于
      In a000 devices we will support up to 32 stations.
      The max station define is used also for invalid station marking
      which makes finding usages of actual maximum station pretty hard
      to sort through - change it to be a different define in order
      to make future changes easier.
      Use also ARRAY_SIZE intead of define when possible.
      Do not move yet to 32 stations until firmware do it though.
      Signed-off-by: NSara Sharon <sara.sharon@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      0ae98812
    • S
      iwlwifi: mvm: add queues after adding station · c5a719ee
      Sara Sharon 提交于
      Currently aux & broadcast queues are added before calling add
      station, which results with a SCD_QUEUE_CFG command sent with
      a station id unknown yet to fw.
      While this works for pre-a000 firmware, the a000 fw requires
      the order to be reversed.
      The reason the change is only for a000 devices and not for
      previous devices is that we cannot reverse the order since
      the tfd_queue_mask containing the aux queue will cause FW to
      assert on adding a queue mask with a queue that is not enabled.
      This is not a problem in a000 fw since the tfd_queue_mask was
      removed from the add sta API.
      Signed-off-by: NSara Sharon <sara.sharon@intel.com>
      Signed-off-by: NLuca Coelho <luciano.coelho@intel.com>
      c5a719ee
  13. 11 4月, 2017 2 次提交