1. 17 8月, 2015 5 次提交
    • V
      ath10k: add cycle/rx_clear counters frequency to hw_params · 9c8fb548
      Vasanthakumar Thiagarajan 提交于
      The frequency at which cycle/rx_clear counters are running might
      change from one target type to another. QCA99X0 is running the
      counters at 150Mhz while QCA9888X and QCA6174 are running at 88Mhz.
      Add a new entry to hw_params to store the target specific frequency
      and use it in msecs conversion. This change fixes inconsistent
      channel active/busy time.
      Signed-off-by: NVasanthakumar Thiagarajan <vthiagar@qti.qualcomm.com>
      Signed-off-by: NKalle Valo <kvalo@qca.qualcomm.com>
      9c8fb548
    • V
      ath10k: fix invalid survey reporting for QCA99X0 · 3d2a2e29
      Vasanthakumar Thiagarajan 提交于
      There are three WMI_CHAN_INFO events reported per channel
      in QCA99X0 firmware. First one is a notification at the begining
      of the channel dwell time with cmd_flag as CHAN_INFO_START(cmd_flag = 0),
      second one is a notification at the end of the dwell time with cmd_flag
      CHAN_INFO_PRE_COMPLETE (cmd_flag = 2) and the third is the indication
      with CHAN_INFO_COMPLETE (cmd_flag = 1) which is the last indication for
      the channel. Since there is a new state before the completion, the handler
      is to fixed so that the counts are deducted from the ones reported with
      CHAN_INFO_START rather than the ones reported with CHAN_INFO_PRE_COMPLETE.
      Without this fix there will be lots of 0 msecs reported as active
      and busy time.
      Signed-off-by: NVasanthakumar Thiagarajan <vthiagar@qti.qualcomm.com>
      Signed-off-by: NKalle Valo <kvalo@qca.qualcomm.com>
      3d2a2e29
    • M
      ath10k: wake up queue upon vif creation · 6d2d51ec
      Michal Kazior 提交于
      Vif's vdev_id is used as queue number. However due
      to the tx pausing design in ath10k it was possible
      for a new interface to be created with its tx
      queue stopped (via ieee80211_stop_queues). This
      could in turn leave the interface inoperable until
      ath10k_mac_tx_unlock() was called.
      
      This problem only affected multi-vif scenarios when
      new interfaces were created some time later after
      other interfaces have been running for some time
      and had Tx queue full at some point prior.
      
      Possible manifestation of the bug was
      authentication timeout for a client vif.
      
      Fixes: 96d828d4 ("ath10k: rework tx queue locking")
      Signed-off-by: NMichal Kazior <michal.kazior@tieto.com>
      Signed-off-by: NKalle Valo <kvalo@qca.qualcomm.com>
      6d2d51ec
    • M
      ath10k: wake up offchannel queue properly · 3a73d1a6
      Michal Kazior 提交于
      Once HTT Tx queue got full offchannel queue was
      stopped and never woken up again. This broke, e.g.
      P2P. This could be reproduced after running a lot
      of traffic enough to saturate 100% of the driver
      Tx queue and then trying to send offchannel
      traffic.
      
      Fixes: 96d828d4 ("ath10k: rework tx queue locking")
      Signed-off-by: NMichal Kazior <michal.kazior@tieto.com>
      Signed-off-by: NKalle Valo <kvalo@qca.qualcomm.com>
      3a73d1a6
    • K
      Merge ath-next from ath.git. Major changes in ath10k: · 94e92a7b
      Kalle Valo 提交于
      * add support for qca99x0 family of devices
      * improve performance of tx_lock
      * add support for raw mode (802.11 frame format) and software crypto
        engine enabled via a module parameter
      
      wil6210:
      
      * implement TSO support
      * support bootloader v1 and onwards
      94e92a7b
  2. 13 8月, 2015 27 次提交
  3. 11 8月, 2015 8 次提交