linux/drivers/net/wireless
Rajkumar Manoharan 0628467f97 ath10k: fix copy engine 5 destination ring stuck
Firmware is running watchdog timer for tracking copy engine ring index
and write index. Whenever both indices are stuck at same location for
given duration, watchdog will be trigger to assert target. While
updating copy engine destination ring write index, driver ensures that
write index will not be same as read index by finding delta between these
two indices (CE_RING_DELTA).

HTT target to host copy engine (CE5) is special case where ring buffers
will be reused and delta check is not applied while updating write index.
In rare scenario, whenever CE5 ring is full, both indices will be referring
same location and this is causing CE ring stuck issue as explained
above. This issue is originally reported on IPQ4019 during long hour stress
testing and during veriwave max clients testsuites. The same issue is
also observed in other chips as well. Fix this by ensuring that write
index is one less than read index which means that full ring is
available for receiving data.

Cc: stable@vger.kernel.org
Tested-by: Tamizh chelvam <c_traja@qti.qualcomm.com>
Signed-off-by: Rajkumar Manoharan <rmanohar@qti.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2016-09-28 12:48:35 +03:00
..
admtek cfg80211: remove enum ieee80211_band 2016-04-12 15:56:15 +02:00
ath ath10k: fix copy engine 5 destination ring stuck 2016-09-28 12:48:35 +03:00
atmel mac80211: Add support for beacon report radio measurement 2016-07-06 14:53:19 +02:00
broadcom brcmfmac: drop unused fields from struct brcmf_pub 2016-09-26 20:51:02 +03:00
cisco wireless: airo: rename 'register' variable 2016-06-29 18:56:20 +03:00
intel iwlwifi: pcie: use LIST_HEAD() macro 2016-09-19 11:29:35 +03:00
intersil hostap: Use memdup_user() to reuse code 2016-09-03 12:54:53 +03:00
marvell mwifiex: code rearrangement in mwifiex_usb_host_to_card() 2016-09-26 20:39:43 +03:00
mediatek mt7601u: use linux/bitfield.h 2016-09-09 12:09:25 +03:00
ralink rt2x00usb: Fix error return code 2016-09-03 13:06:49 +03:00
realtek rtl8xxxu: Stop log spam from each successful interrupt 2016-09-26 20:41:37 +03:00
rsi rsi: eliminate superfluous NULL check 2016-06-14 17:17:58 +03:00
st mac80211: Add support for beacon report radio measurement 2016-07-06 14:53:19 +02:00
ti wlcore: wl18xx: Use chip specific configuration firmware 2016-09-26 18:13:45 +03:00
zydas zd1211rw: fix spelling mistake "firmeware" -> "firmware" 2016-09-03 19:59:56 +03:00
Kconfig
mac80211_hwsim.c mac80211: Add support for beacon report radio measurement 2016-07-06 14:53:19 +02:00
mac80211_hwsim.h drivers/wireless: use nla_put_u64_64bit() 2016-04-26 12:00:48 -04:00
Makefile
ray_cs.c
ray_cs.h
rayctl.h
rndis_wlan.c nl80211: support beacon report scanning 2016-07-06 14:51:31 +02:00
wl3501_cs.c wl3501_cs: Add spinlock to wl3501_reset 2016-09-03 13:01:18 +03:00
wl3501.h