diff options
author | Barak Bercovitz <barak@wizery.com> | 2013-09-09 12:24:41 +0300 |
---|---|---|
committer | Luciano Coelho <luciano.coelho@intel.com> | 2013-10-23 09:47:43 +0300 |
commit | 2473ec8f909d8c46e52e13f6fc3215c9c08400c8 (patch) | |
tree | 129a5d3ab7de74474acfbdefe91c1b71c5bd49c3 | |
parent | c2e6424259f69234c1a6022cd25ebf06040c4846 (diff) | |
download | op-kernel-dev-2473ec8f909d8c46e52e13f6fc3215c9c08400c8.zip op-kernel-dev-2473ec8f909d8c46e52e13f6fc3215c9c08400c8.tar.gz |
wlcore: wakeup from ELP before starting recovery
Make sure the FW is awake when entering recovery. This is useful for
reading the FW panic log and also some FW registers giving us crash
report stats.
We must do this before interrupts are disabled since we rely on an
interrupt to complete the wakeup.
If the wakeup fails, continue recovery normally. All read/writes will be
blocked and won't do any harm.
Signed-off-by: Barak Bercovitz <barak@wizery.com>
Signed-off-by: Eliad Peller <eliad@wizery.com>
Signed-off-by: Luciano Coelho <luciano.coelho@intel.com>
-rw-r--r-- | drivers/net/wireless/ti/wlcore/main.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/wireless/ti/wlcore/main.c b/drivers/net/wireless/ti/wlcore/main.c index 53bb353..a9ee234 100644 --- a/drivers/net/wireless/ti/wlcore/main.c +++ b/drivers/net/wireless/ti/wlcore/main.c @@ -793,6 +793,7 @@ void wl12xx_queue_recovery_work(struct wl1271 *wl) if (wl->state == WLCORE_STATE_ON) { wl->state = WLCORE_STATE_RESTARTING; set_bit(WL1271_FLAG_RECOVERY_IN_PROGRESS, &wl->flags); + wl1271_ps_elp_wakeup(wl); wlcore_disable_interrupts_nosync(wl); ieee80211_queue_work(wl->hw, &wl->recovery_work); } |