ath9k: fix invalid register access on single-stream ar93xx devices
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 5 Oct 2012 16:15:55 +0000 (16:15 +0000)
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 5 Oct 2012 16:15:55 +0000 (16:15 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33628 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/mac80211/patches/567-ath9k_ani_mrc_fix.patch [new file with mode: 0644]

diff --git a/package/mac80211/patches/567-ath9k_ani_mrc_fix.patch b/package/mac80211/patches/567-ath9k_ani_mrc_fix.patch
new file mode 100644 (file)
index 0000000..80c9b2a
--- /dev/null
@@ -0,0 +1,13 @@
+--- a/drivers/net/wireless/ath/ath9k/ar9003_phy.c
++++ b/drivers/net/wireless/ath/ath9k/ar9003_phy.c
+@@ -1035,6 +1035,10 @@ static bool ar9003_hw_ani_control(struct
+                * is_on == 0 means MRC CCK is OFF (more noise imm)
+                */
+               bool is_on = param ? 1 : 0;
++
++              if (ah->caps.rx_chainmask == 1)
++                      break;
++
+               REG_RMW_FIELD(ah, AR_PHY_MRC_CCK_CTRL,
+                             AR_PHY_MRC_CCK_ENABLE, is_on);
+               REG_RMW_FIELD(ah, AR_PHY_MRC_CCK_CTRL,