linux/drivers/net/wireless/ath
Miaoqing Pan 466b0f0208 ath9k: fix data bus error on ar9300 and ar9580
One crash issue be found on ar9300: RTC_RC reg read leads crash, leading
the data bus error, due to RTC_RC reg write not happen properly.

Warm Reset trigger in continuous beacon stuck for one of the customer for
other chip, noticed the MAC was stuck in RTC reset. After analysis noticed
DMA did not complete when RTC was put in reset.

So, before resetting the MAC need to make sure there are no pending DMA
transactions because this reset does not reset all parts of the chip.

The 12th and 11th bit of MAC _DMA_CFG register used to do that.
	12 cfg_halt_ack 0x0
		0 DMA has not yet halted
		1 DMA has halted
	11 cfg_halt_req 0x0
		0 DMA logic operates normally
		1 Request DMA logic to stop so software can reset the MAC

The Bit [12] of this register indicates when the halt has taken effect or
not. the DMA halt IS NOT recoverable; once software sets bit [11] to
request a DMA halt, software must wait for bit [12] to be set and reset
the MAC.

So, the same thing we implemented for ar9580 chip.

Signed-off-by: Miaoqing Pan <miaoqing@codeaurora.org>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
2016-01-26 16:47:39 +02:00
..
ar5523 mac80211: convert HW flags to unsigned long bitmap 2015-06-10 16:05:36 +02:00
ath5k ath5k: fix RTS/CTS by using proper rate flags 2015-12-08 16:50:24 +02:00
ath6kl ath6kl: add log messages for firmware failure cases. 2015-12-11 14:08:55 +02:00
ath9k ath9k: fix data bus error on ar9300 and ar9580 2016-01-26 16:47:39 +02:00
ath10k ath10k: remove the p2p notice of absence info from 10.2.4 FW beacon info 2016-01-26 16:47:37 +02:00
carl9170 Major changes: 2015-10-12 19:39:18 -07:00
wcn36xx wcn36xx: split DMA mask register writing. 2016-01-07 15:16:19 +02:00
wil6210 wil6210: handle multiple connect/disconnect events 2016-01-26 16:47:38 +02:00
ath.h ath9k: Add a new debug flag for FFT spectral scan 2015-05-09 16:46:08 +03:00
debug.c ath: Make ath_opmode_to_string understand OCB mode 2015-08-10 22:21:15 +03:00
dfs_pattern_detector.c ath: fix DFS timestamp wraparound reset condition 2015-10-09 11:47:31 +03:00
dfs_pattern_detector.h ath: use PRI value given by spec for fixed PRI 2015-09-27 15:50:30 +03:00
dfs_pri_detector.c ath: use PRI value given by spec for fixed PRI 2015-09-27 15:50:30 +03:00
dfs_pri_detector.h
hw.c
Kconfig ath: unify Kconfig with other vendors 2015-11-18 14:28:31 +02:00
key.c
main.c
Makefile
reg.h
regd_common.h
regd.c
regd.h
spectral_common.h
trace.c
trace.h