wil6210: fix recovery after scan timeout
authorVladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Mon, 1 Dec 2014 13:33:17 +0000 (15:33 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 1 Dec 2014 20:57:22 +0000 (15:57 -0500)
Scan timeout treated as indication for firmware error;
and should be handled in the same way.

Recovery state machine does not perform as designed because
its state is not updated in case of scan timeout.

Fix is to set recovery state machine into the proper state.

Signed-off-by: Vladimir Kondratiev <qca_vkondrat@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/ath/wil6210/main.c

index 151ff6bbce7c9272a3a57c87ad651827d97b6b17..3bef1535603bcb15d660c821a104b2772ec6c909 100644 (file)
@@ -220,6 +220,7 @@ static void wil_scan_timer_fn(ulong x)
 
        clear_bit(wil_status_fwready, &wil->status);
        wil_err(wil, "Scan timeout detected, start fw error recovery\n");
+       wil->recovery_state = fw_recovery_pending;
        schedule_work(&wil->fw_error_worker);
 }