From: Felix Fietkau Date: Tue, 13 Aug 2013 10:33:28 +0000 (+0200) Subject: ath9k: avoid accessing MRC registers on single-chain devices X-Git-Tag: v3.12-rc1~132^2~84^2^2~92 X-Git-Url: http://pileus.org/git/?a=commitdiff_plain;ds=sidebyside;h=a1c781bb20ac1e03280e420abd47a99eb8bbdd3b;p=~andy%2Flinux ath9k: avoid accessing MRC registers on single-chain devices They are not implemented, and accessing them might trigger errors Cc: stable@vger.kernel.org Signed-off-by: Felix Fietkau Signed-off-by: John W. Linville --- diff --git a/drivers/net/wireless/ath/ath9k/ar9003_phy.c b/drivers/net/wireless/ath/ath9k/ar9003_phy.c index 39c37309f39..18a5aa4fe40 100644 --- a/drivers/net/wireless/ath/ath9k/ar9003_phy.c +++ b/drivers/net/wireless/ath/ath9k/ar9003_phy.c @@ -1172,6 +1172,10 @@ skip_ws_det: * 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,