1. 02 2月, 2016 1 次提交
    • M
      wil6210: protect synchronous wmi commands handling · fe5c271e
      Maya Erez 提交于
      In case there are multiple WMI commands with the same reply_id,
      the following scenario can occur:
      - Driver sends the first command to the device
      - The reply didn’t get on time and there is timeout
      - Reply_id, reply_buf and reply_size are set to 0
      - Driver sends second wmi command with the same reply_id as the first
      - Driver sets wil->reply_id
      - Reply for the first wmi command arrives and handled by wmi_recv_cmd
      - As its ID fits the reply_id but the reply_buf is not set yet it is
      handled as a reply with event handler, and WARN_ON is printed
      
      This patch guarantee atomic setting of all the reply variables and
      prevents the above scenario.
      Signed-off-by: NMaya Erez <qca_merez@qca.qualcomm.com>
      Signed-off-by: NKalle Valo <kvalo@qca.qualcomm.com>
      fe5c271e
  2. 26 1月, 2016 1 次提交
    • M
      wil6210: handle multiple connect/disconnect events · 0916d9f2
      Maya Erez 提交于
      In the current solution wil6210 configures the vring in a worker
      and holds only one pending CID. This implementation may lead to
      race conditions between connect and disconnect events of multiple
      stations or fast connect/disconnect events of the same station.
      
      In order to allow the removal of the connect worker and handling of
      WMI_VRING_CFG_DONE_EVENTID in the connect event, the WMI replies
      that provide the reply in a given buffer needs to be handled
      immediately in the WMI event interrupt thread.
      To prevent deadlocks, WMI replies that requires additional
      handling are still handled via the events list.
      Signed-off-by: NMaya Erez <qca_merez@qca.qualcomm.com>
      Signed-off-by: NKalle Valo <kvalo@qca.qualcomm.com>
      0916d9f2
  3. 08 12月, 2015 1 次提交
  4. 29 10月, 2015 2 次提交
  5. 09 10月, 2015 1 次提交
  6. 17 8月, 2015 1 次提交
    • N
      wil6210: match wait_for_completion_timeout return type · f4bbb829
      Nicholas Mc Guire 提交于
      Return type of wait_for_completion_timeout is unsigned long not int.
      As remain is exclusively used for wait_for_completion_timeout here its
      type is simply changed to unsigned long.
      
      API conformance testing for completions with coccinelle spatches are being
      used to locate API usage inconsistencies:
      ./drivers/net/wireless/ath/wil6210/wmi.c:827
      	int return assigned to unsigned long
      
      Patch was compile tested with x86_64_defconfig + CONFIG_ATH_CARDS=m,
      CONFIG_WIL6210=m
      
      Patch is against 4.1-rc3 (localversion-next is -next-20150514)
      Signed-off-by: NNicholas Mc Guire <hofrat@osadl.org>
      Signed-off-by: NKalle Valo <kvalo@qca.qualcomm.com>
      f4bbb829
  7. 06 8月, 2015 5 次提交
  8. 09 6月, 2015 2 次提交
  9. 05 5月, 2015 2 次提交
  10. 20 3月, 2015 2 次提交
  11. 27 2月, 2015 2 次提交
  12. 29 1月, 2015 2 次提交
  13. 15 1月, 2015 10 次提交
  14. 08 1月, 2015 1 次提交
    • J
      cfg80211: remove enum station_info_flags · 319090bf
      Johannes Berg 提交于
      This is really just duplicating the list of information that's
      already available in the nl80211 attribute, so remove the list.
      Two small changes are needed:
       * remove STATION_INFO_ASSOC_REQ_IES complete, but the length
         (assoc_req_ies_len) can be used instead
       * add NL80211_STA_INFO_RX_DROP_MISC which exists internally
         but not in nl80211 yet
      
      This gets rid of the duplicate maintenance of the two lists.
      Signed-off-by: NJohannes Berg <johannes.berg@intel.com>
      319090bf
  15. 02 12月, 2014 1 次提交
  16. 31 10月, 2014 2 次提交
  17. 03 10月, 2014 1 次提交
    • V
      wil6210: manual FW error recovery mode · c33407a8
      Vladimir Kondratiev 提交于
      Introduce manual FW recovery mode. It is activated if module parameter
      @no_fw_recovery set to true. May be changed at runtime.
      
      Recovery information provided by new "recovery" debugfs file. It prints:
      
      mode = [auto|manual]
      state = [idle|pending|running]
      
      In manual mode, after FW error, recovery won't start automatically. Instead,
      after notification to user space, recovery waits in "pending" state, as indicated by the
      "recovery" debugfs file. User space tools may perform data collection and allow to
      continue recovery by writing "run" to the "recovery" debugfs file.
      Alternatively, recovery pending may be canceled by stopping network interface
      i.e. 'ifconfig wlan0 down'
      Signed-off-by: NVladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      c33407a8
  18. 12 9月, 2014 3 次提交