linux_dsm_epyc7002/drivers/net/wireless/ath
Mohammed Shafi Shajakhan 64bc1239c7 ath9k: Fix softlockup in AR9485
steps to recreate:
load latest ath9k driver with AR9485
stop the network-manager and wpa_supplicant
bring the interface up

	Call Trace:
	[<ffffffffa0517490>] ? ath_hw_check+0xe0/0xe0 [ath9k]
	[<ffffffff812cd1e8>] __const_udelay+0x28/0x30
	[<ffffffffa03bae7a>] ar9003_get_pll_sqsum_dvc+0x4a/0x80 [ath9k_hw]
	[<ffffffffa05174eb>] ath_hw_pll_work+0x5b/0xe0 [ath9k]
	[<ffffffff810744fe>] process_one_work+0x11e/0x470
	[<ffffffff8107530f>] worker_thread+0x15f/0x360
	[<ffffffff810751b0>] ? manage_workers+0x230/0x230
	[<ffffffff81079af3>] kthread+0x93/0xa0
	[<ffffffff815fd3a4>] kernel_thread_helper+0x4/0x10
	[<ffffffff81079a60>] ? kthread_freezable_should_stop+0x70/0x70
	[<ffffffff815fd3a0>] ? gs_change+0x13/0x13

ensure that the PLL-WAR for AR9485/AR9340 is executed only if the STA is
associated (or) IBSS/AP mode had started beaconing. Ideally this WAR
is needed to recover from some rare beacon stuck during stress testing.
Before the STA is associated/IBSS had started beaconing, PLL4(0x1618c)
always seem to have zero even though we had configured PLL3(0x16188) to
query about PLL's locking status. When we keep on polling infinitely PLL4's
8th bit(ie check for PLL locking measurements is done), machine hangs
due to softlockup.

fixes https://bugzilla.redhat.com/show_bug.cgi?id=811142

Reported-by: Rolf Offermanns <rolf.offermanns@gmx.net>
Cc: stable@vger.kernel.org
Tested-by: Mohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>
Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2012-06-13 14:35:57 -04:00
..
ath5k ath5k: add possible wiphy interface combinations 2012-05-29 13:42:45 -04:00
ath6kl cfg80211: provide channel to start_ap function 2012-06-05 15:32:16 -04:00
ath9k ath9k: Fix softlockup in AR9485 2012-06-13 14:35:57 -04:00
carl9170 USB 3.5-rc1 pull request 2012-05-22 15:50:46 -07:00
ath.h ath9k: Add wiphy name to log messages. 2012-03-12 14:19:36 -04:00
debug.c drivers/net: Add export.h to files using EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:31:08 -04:00
hw.c drivers/net: Add export.h to files using EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:31:08 -04:00
Kconfig Merge branch 'for-linus' of git://github.com/richardweinberger/linux 2011-11-02 09:45:39 -07:00
key.c ath: Convert ath_dbg(bar, ATH_DBG_<FOO>, to ath_dbg(bar, FOO 2011-12-19 14:35:31 -05:00
main.c ath: Add and use pr_fmt, convert printks to pr_<level> 2012-04-10 14:52:13 -04:00
Makefile atheros: force endian checks on atheros wireless drivers 2011-12-21 15:06:12 -05:00
reg.h
regd_common.h
regd.c ath: Add and use pr_fmt, convert printks to pr_<level> 2012-04-10 14:52:13 -04:00
regd.h