1. 28 Feb, 2019 8 commits
    • Ahmad Masri's avatar
      wil6210: support up to 20 stations in AP mode · bf0353a6
      Ahmad Masri authored
      New FW added support for upto 20 clients in AP mode. Change the driver
      to support this as well. FW reports it's max supported associations in
      WMI_READY_EVENT. Some WMI commands/events use cidxtid field which is
      limited to 16 cids. Use new cid/tid fields instead.
      
      For Rx packets cid from rx descriptor is limited to 3 bits (0..7),
      to find the real cid, compare transmitter address with the stored
      stations mac address in the driver sta array.
      
      EDMA FW still supports 8 stations. Extending the support to 20
      stations will come later.
      Signed-off-by: default avatarAhmad Masri <amasri@codeaurora.org>
      Signed-off-by: default avatarMaya Erez <merez@codeaurora.org>
      Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
      bf0353a6
    • Dedy Lansky's avatar
      wil6210: add option to drop Tx packets when Tx ring is full · 0439a5e0
      Dedy Lansky authored
      In AP mode with multiple clients, driver stops net queue
      (netif_tx_stop_queue) upon first ring (serving specific client)
      becoming full. This can have negative effect on transmission to
      other clients which may still have room in their corresponding rings.
      
      Implement new policy in which stop/wake net queue are not used. In
      case there is no room in the ring for a transmitted packet, drop the
      packet.
      
      New policy can be helpful to debug performance issues, to guarantee
      maximum utilization of net queues.
      New policy is disabled by default and can be enabled by debugfs:
      echo 1 > drop_if_ring_full
      Signed-off-by: default avatarDedy Lansky <dlansky@codeaurora.org>
      Signed-off-by: default avatarMaya Erez <merez@codeaurora.org>
      Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
      0439a5e0
    • Maya Erez's avatar
      wil6210: remove rtap_include_phy_info module param · 387f3794
      Maya Erez authored
      Due to a HW issue in PHY info collection rtap_include_phy_info is not
      in use, hence can be removed.
      Signed-off-by: default avatarMaya Erez <merez@codeaurora.org>
      Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
      387f3794
    • Surabhi Vishnoi's avatar
      ath10k: Fill rx duration for each peer in fw_stats for WCN3990 · f40a307e
      Surabhi Vishnoi authored
      Currently, rx_duration for each peer is not getting populated in
      fw_stats debugfs entry for WCN3990.
      
      WCN3990 firmware sends rx duration for each peer as part of
      peer_extd_stats in WMI_UPDATE_STATS_EVENT. To enable peer_extd_stats,
      firmware expects host to send fw_stats_req_mask with flag
      WMI_TLV_PEER_STATS_EXTD set in WMI_REQUEST_STATS_CMD.
      
      Send fw_stats_req_mask with flag WMI_TLV_PEER_STATS_EXTD set in
      WMI_REQUEST_STATS_CMD and parse the peer_extd_stats in
      WMI_UPDATE_STATS_EVENT to populate the rx_duration of each peer
      in fw_stats debugfs entry.
      
      Currently the driver handles 32-bit rx_duration, but the rx_duration
      for WCN3990 can be upto 63 bit. The firmware sends rx_duration split
      into two 32-bit fields, with the upper 32-bits being valid only if its
      MSB is set. This change handles the 63-bit rx_duration obtained from
      WCN3990 and maintain the backward compatibility.
      
      To get the rx_duration of each connected peer :
      cat /sys/kernel/debug/ieee80211/phyX/ath10k/fw_stats
      
      Tested HW: WCN3990
      Tested FW: WLAN.HL.3.1-00784-QCAHLSWMTPLZ-1
      Signed-off-by: default avatarSurabhi Vishnoi <svishnoi@codeaurora.org>
      Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
      f40a307e
    • Surabhi Vishnoi's avatar
      ath10k: Fix the wrong calculation ht_idx and idx of rate table for tx_stats · d23c2cda
      Surabhi Vishnoi authored
      ht_idx (ht rate index) and idx (rate table index) are calculated based on
      mcs index. This mcs index used in the above calculation should be 0-9 for
      getting the correct ht_idx and idx.
      
      Currently the mcs index used for the above calculations is mcs index which
      can be 0-31 (in case of HT), leading to incorrect rate index and ht index values.
      
      Fix the issue by obtaining mcs value from the ratecode reported by firmware
      and use it for calculating ht_idx and idx (rate-table index).
      
      Tested HW: WCN3990
      Tested FW: WLAN.HL.3.1-00784-QCAHLSWMTPLZ-1
      
      Fixes: e88975ca ("ath10k: dump tx stats in rate table format")
      Signed-off-by: default avatarSurabhi Vishnoi <svishnoi@codeaurora.org>
      Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
      d23c2cda
    • Surabhi Vishnoi's avatar
      ath10k: Fix the wrong updation of SGI in tx_stats debugfs · 8e55fdaa
      Surabhi Vishnoi authored
      The SGI is updated wrongly in tx stats table in debugfs per sta
      entry. To know whether the packets/bytes are sent with SHORT GI,
      test whether the SGI bit(ATH10K_RATE_INFO_FLAGS_SGI_BIT) is set or
      not in the txrate flags.
      
      Tested HW: WCN3990
      Tested FW: WLAN.HL.3.1-00784-QCAHLSWMTPLZ-1
      
      Fixes: a904417f ("ath10k: add extended per sta tx statistics support")
      Signed-off-by: default avatarSurabhi Vishnoi <svishnoi@codeaurora.org>
      Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
      8e55fdaa
    • Surabhi Vishnoi's avatar
      ath10k: Fix the wrong updation of BW in tx_stats debugfs entry · ef9051c7
      Surabhi Vishnoi authored
      Currently, the bandwidth is updated wrongly in BW table in tx_stats
      debugfs per sta as there is difference in number of bandwidth type
      in mac80211 and driver stats table. This leads to bandwidth getting
      updated at wrong index in bandwidth table in tx_stats.
      
      Fix this index mismatch between mac80211 and driver stats table (BW table)
      by making the number of bandwidth type in driver compatible with mac80211.
      
      Tested HW: WCN3990
      Tested FW: WLAN.HL.3.1-00784-QCAHLSWMTPLZ-1
      
      Fixes: a904417f ("ath10k: add extended per sta tx statistics support")
      Signed-off-by: default avatarSurabhi Vishnoi <svishnoi@codeaurora.org>
      Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
      ef9051c7
    • Surabhi Vishnoi's avatar
      ath10k: Fix the incorrect updation of NSS data in tx stats · 3a08ac3e
      Surabhi Vishnoi authored
      The NSS data is updated incorrectly in the tx stats as the array
      indexing starts from zero.
      
      Fix the incorrect updation of NSS data in tx_stats by taking into
      consideration the array index starting from zero.
      
      Tested HW: WCN3990
      Tested FW: WLAN.HL.3.1-00784-QCAHLSWMTPLZ-1
      
      Fixes: a904417f ("ath10k: add extended per sta tx statistics support")
      Signed-off-by: default avatarSurabhi Vishnoi <svishnoi@codeaurora.org>
      Signed-off-by: default avatarKalle Valo <kvalo@codeaurora.org>
      3a08ac3e
  2. 26 Feb, 2019 15 commits
  3. 25 Feb, 2019 17 commits