ath9k: use REG_RMW and rmw buffer in ath9k_hw_4k_set_board_values
authorOleksij Rempel <linux@rempel-privat.de>
Sun, 22 Mar 2015 18:30:02 +0000 (19:30 +0100)
committerKalle Valo <kvalo@codeaurora.org>
Mon, 30 Mar 2015 08:31:40 +0000 (11:31 +0300)
replace REG_WRITE to REG_RMW and place every thing in one
RMW buffer.

Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/ath/ath9k/eeprom_4k.c

index 38dc965605d8912fda3ed8c53c7bc033e15d1de5..4773da6dc6f2d7d96b8e8a51e7ca252737cfe88b 100644 (file)
@@ -1037,17 +1037,17 @@ static void ath9k_hw_4k_set_board_values(struct ath_hw *ah,
        }
        REG_RMW_BUFFER_FLUSH(ah);
 
-
+       ENABLE_REG_RMW_BUFFER(ah);
        REG_RMW_FIELD(ah, AR_PHY_SETTLING, AR_PHY_SETTLING_SWITCH,
                      pModal->switchSettling);
        REG_RMW_FIELD(ah, AR_PHY_DESIRED_SZ, AR_PHY_DESIRED_SZ_ADC,
                      pModal->adcDesiredSize);
 
-       REG_WRITE(ah, AR_PHY_RF_CTL4,
-                 SM(pModal->txEndToXpaOff, AR_PHY_RF_CTL4_TX_END_XPAA_OFF) |
-                 SM(pModal->txEndToXpaOff, AR_PHY_RF_CTL4_TX_END_XPAB_OFF) |
-                 SM(pModal->txFrameToXpaOn, AR_PHY_RF_CTL4_FRAME_XPAA_ON)  |
-                 SM(pModal->txFrameToXpaOn, AR_PHY_RF_CTL4_FRAME_XPAB_ON));
+       REG_RMW(ah, AR_PHY_RF_CTL4,
+               SM(pModal->txEndToXpaOff, AR_PHY_RF_CTL4_TX_END_XPAA_OFF) |
+               SM(pModal->txEndToXpaOff, AR_PHY_RF_CTL4_TX_END_XPAB_OFF) |
+               SM(pModal->txFrameToXpaOn, AR_PHY_RF_CTL4_FRAME_XPAA_ON)  |
+               SM(pModal->txFrameToXpaOn, AR_PHY_RF_CTL4_FRAME_XPAB_ON), 0);
 
        REG_RMW_FIELD(ah, AR_PHY_RF_CTL3, AR_PHY_TX_END_TO_A2_RX_ON,
                      pModal->txEndToRxOn);
@@ -1076,6 +1076,8 @@ static void ath9k_hw_4k_set_board_values(struct ath_hw *ah,
                                      pModal->swSettleHt40);
        }
 
+       REG_RMW_BUFFER_FLUSH(ah);
+
        bb_desired_scale = (pModal->bb_scale_smrt_antenna &
                        EEP_4K_BB_DESIRED_SCALE_MASK);
        if ((pBase->txGainType == 0) && (bb_desired_scale != 0)) {