aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/wil6210/wil6210.h
diff options
context:
space:
mode:
authorVladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>2014-05-27 07:45:48 -0400
committerJohn W. Linville <linville@tuxdriver.com>2014-05-29 13:10:31 -0400
commit047e5d74b6e97ef883f4c8e912bd89451957de2b (patch)
treec68df03a0e463bdbf7f7fd1e9dfc5d042a2d0335 /drivers/net/wireless/ath/wil6210/wil6210.h
parent5bb6423e8f23b755cb20c21aa896cc4d4baf6bc5 (diff)
wil6210: detect scan timeouts
If scan has not finished in some reasonable time (10sec), interpret it as if firmware error occurs but was not reported. Firmware should report scan completion for every scan request, so it is error condition indeed. Perform firmware recovery procedure. Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/wil6210/wil6210.h')
-rw-r--r--drivers/net/wireless/ath/wil6210/wil6210.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath/wil6210/wil6210.h b/drivers/net/wireless/ath/wil6210/wil6210.h
index f8c598ebd9ee..e25edc52398f 100644
--- a/drivers/net/wireless/ath/wil6210/wil6210.h
+++ b/drivers/net/wireless/ath/wil6210/wil6210.h
@@ -42,6 +42,7 @@ static inline u32 WIL_GET_BITS(u32 x, int b0, int b1)
42#define WIL6210_ITR_TRSH (10000) /* arbitrary - about 15 IRQs/msec */ 42#define WIL6210_ITR_TRSH (10000) /* arbitrary - about 15 IRQs/msec */
43#define WIL6210_FW_RECOVERY_RETRIES (5) /* try to recover this many times */ 43#define WIL6210_FW_RECOVERY_RETRIES (5) /* try to recover this many times */
44#define WIL6210_FW_RECOVERY_TO msecs_to_jiffies(5000) 44#define WIL6210_FW_RECOVERY_TO msecs_to_jiffies(5000)
45#define WIL6210_SCAN_TO msecs_to_jiffies(10000)
45 46
46/* Hardware definitions begin */ 47/* Hardware definitions begin */
47 48
@@ -386,6 +387,7 @@ struct wil6210_priv {
386 struct work_struct disconnect_worker; 387 struct work_struct disconnect_worker;
387 struct work_struct fw_error_worker; /* for FW error recovery */ 388 struct work_struct fw_error_worker; /* for FW error recovery */
388 struct timer_list connect_timer; 389 struct timer_list connect_timer;
390 struct timer_list scan_timer; /* detect scan timeout */
389 int pending_connect_cid; 391 int pending_connect_cid;
390 struct list_head pending_wmi_ev; 392 struct list_head pending_wmi_ev;
391 /* 393 /*