linux_dsm_epyc7002/drivers/net/wireless/ath
Martin Willi a9911937e7 ath10k: schedule hardware restart if WMI command times out
When running in AP mode, ath10k sometimes suffers from TX credit
starvation. The issue is hard to reproduce and shows up once in a
few days, but has been repeatedly seen with QCA9882 and a large
range of firmwares, including 10.2.4.70.67.

Once the module is in this state, TX credits are never replenished,
which results in "SWBA overrun" errors, as no beacons can be sent.
Even worse, WMI commands run in a timeout while holding the conf
mutex for three seconds each, making any further operations slow
and the whole system unresponsive.

The firmware/driver never recovers from that state automatically,
and triggering TX flush or warm restarts won't work over WMI. So
issue a hardware restart if a WMI command times out due to missing
TX credits. This implies a connectivity outage of about 1.4s in AP
mode, but brings back the interface and the whole system to a usable
state. WMI command timeouts have not been seen in absent of this
specific issue, so taking such drastic actions seems legitimate.

Signed-off-by: Martin Willi <martin@strongswan.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
2018-08-28 16:41:53 +03:00
..
ar5523
ath5k ath5k: remove redundant pointer rf 2018-07-30 20:55:55 +03:00
ath6kl ath6kl: replace GFP_ATOMIC with GFP_KERNEL in ath6kl_bmi_init() 2018-07-31 10:48:45 +03:00
ath9k ath9k: fix more-data flag for buffered multicast packets 2018-07-31 10:52:33 +03:00
ath10k ath10k: schedule hardware restart if WMI command times out 2018-08-28 16:41:53 +03:00
carl9170 treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
wcn36xx wcn36xx: use dma_zalloc_coherent instead of allocator/memset 2018-08-24 14:50:20 +03:00
wil6210 wil6210: fix eDMA RX chaining 2018-07-31 11:02:09 +03:00
ath.h ath: Remove unnecessary ath_bcast_mac and use eth_broadcast_addr 2018-03-29 12:10:26 +03:00
debug.c
dfs_pattern_detector.c ath: add support to get the detected radar specifications 2018-05-25 13:15:21 +03:00
dfs_pattern_detector.h ath: add support to get the detected radar specifications 2018-05-25 13:15:21 +03:00
dfs_pri_detector.c
dfs_pri_detector.h ath: add support to get the detected radar specifications 2018-05-25 13:15:21 +03:00
hw.c
Kconfig net/wireless: fix spaces and grammar copy/paste in vendor Kconfig help text 2018-03-13 18:52:25 +02:00
key.c
main.c
Makefile
reg.h
regd_common.h ath: Map Zimbabwe to ETSI1_WORLD 2018-05-25 12:56:18 +03:00
regd.c
regd.h ath: Add regulatory mapping for Uganda 2018-05-25 12:52:36 +03:00
spectral_common.h
trace.c
trace.h