linux/drivers/net/wireless/ti
Victor Goldenshtein 5cbba2d48a wlcore: fix occasional AP TX stop after recovery
The fw_status wasn't zeroed during allocation, resulting
in uninitialized var usage, and finally causing AP
traffic stop after recovery.

The wrong value in fw_status_2->counters.tx_lnk_free_pkts
led to a bad lnk->allocated_pkts calculation in
wlcore_fw_status(), causing wl18xx_lnk_low_prio() to return
FALSE (lnk->allocated_pkts > thold).
This eventually blocked the link in wlcore_tx_work_locked(),
as wl1271_skb_dequeue() continuously returned NULL.

Fix it by zeroing wl->fw_status_1/2 during allocation.

Signed-off-by: Victor Goldenshtein <victorg@ti.com>
Signed-off-by: Eliad Peller <eliad@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
2013-06-17 12:14:29 +03:00
..
wl12xx wl12xx/wl18xx: scan all 5ghz channels 2013-06-12 10:20:57 -04:00
wl18xx wl18xx: use locally administered MAC address if not available from fuse 2013-06-17 12:03:41 +03:00
wl1251 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2013-04-24 10:54:20 -04:00
wlcore wlcore: fix occasional AP TX stop after recovery 2013-06-17 12:14:29 +03:00
Kconfig wlcore: move wl12xx_platform_data up and make it truly optional 2013-02-08 10:05:02 +02:00
Makefile wlcore: move wl12xx_platform_data up and make it truly optional 2013-02-08 10:05:02 +02:00
wilink_platform_data.c wlcore: move wl12xx_platform_data up and make it truly optional 2013-02-08 10:05:02 +02:00