wlcore: flush before stopping AP
authorEliad Peller <eliad@wizery.com>
Tue, 15 May 2012 14:08:56 +0000 (17:08 +0300)
committerLuciano Coelho <coelho@ti.com>
Tue, 5 Jun 2012 14:16:08 +0000 (17:16 +0300)
Make sure the deauth bcast gets sent

[Make sure we are AP as well before the flush - Arik]

Signed-off-by: Eliad Peller <eliad@wizery.com>
Signed-off-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
drivers/net/wireless/ti/wlcore/main.c

index 4be62c93808bfba47862220c01a10376ec2fad32..1974be0ccd589a27e010251af7ab6a6379af7eb9 100644 (file)
@@ -3968,6 +3968,10 @@ static void wl1271_op_bss_info_changed(struct ieee80211_hw *hw,
        if (!is_ap && (changed & BSS_CHANGED_ASSOC))
                cancel_delayed_work_sync(&wl->connection_loss_work);
 
+       if (is_ap && (changed & BSS_CHANGED_BEACON_ENABLED) &&
+           !bss_conf->enable_beacon)
+               wl1271_tx_flush(wl);
+
        mutex_lock(&wl->mutex);
 
        if (unlikely(wl->state == WL1271_STATE_OFF))