aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorEliad Peller <eliad@wizery.com>2012-05-15 09:46:56 -0400
committerLuciano Coelho <coelho@ti.com>2012-06-05 13:24:31 -0400
commitd1bcb53f91ed6838dccb04aa5cf71ea8a98770f2 (patch)
treeb82e7e83a08982fe845b419a85c68d8ac380f715 /drivers/net
parentfeb47eb86b44fb420c7fe92726e5f359bcea4bdf (diff)
wlcore: flush tx on CHANGE_CHANNEL
On CHANGE_CHANNEL indication, we should flush all the queued tx frames, so they will be sent on the correct (current) channel. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Arik Nemtsov <arik@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/wireless/ti/wlcore/main.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/wireless/ti/wlcore/main.c b/drivers/net/wireless/ti/wlcore/main.c
index c08df334b9d5..b0607f6e4e4e 100644
--- a/drivers/net/wireless/ti/wlcore/main.c
+++ b/drivers/net/wireless/ti/wlcore/main.c
@@ -2557,8 +2557,9 @@ static int wl1271_op_config(struct ieee80211_hw *hw, u32 changed)
2557 * frames, such as the deauth. To make sure those frames reach the air, 2557 * frames, such as the deauth. To make sure those frames reach the air,
2558 * wait here until the TX queue is fully flushed. 2558 * wait here until the TX queue is fully flushed.
2559 */ 2559 */
2560 if ((changed & IEEE80211_CONF_CHANGE_IDLE) && 2560 if ((changed & IEEE80211_CONF_CHANGE_CHANNEL) ||
2561 (conf->flags & IEEE80211_CONF_IDLE)) 2561 ((changed & IEEE80211_CONF_CHANGE_IDLE) &&
2562 (conf->flags & IEEE80211_CONF_IDLE)))
2562 wl1271_tx_flush(wl); 2563 wl1271_tx_flush(wl);
2563 2564
2564 mutex_lock(&wl->mutex); 2565 mutex_lock(&wl->mutex);