|
@@ -1253,10 +1253,9 @@ static void _rtl92c_phy_iq_calibrate(struct ieee80211_hw *hw,
|
|
|
|
|
|
const u32 retrycount = 2;
|
|
const u32 retrycount = 2;
|
|
|
|
|
|
- u32 bbvalue;
|
|
|
|
-
|
|
|
|
if (t == 0) {
|
|
if (t == 0) {
|
|
- bbvalue = rtl_get_bbreg(hw, 0x800, MASKDWORD);
|
|
|
|
|
|
+ /* dummy read */
|
|
|
|
+ rtl_get_bbreg(hw, 0x800, MASKDWORD);
|
|
|
|
|
|
_rtl92c_phy_save_adda_registers(hw, adda_reg,
|
|
_rtl92c_phy_save_adda_registers(hw, adda_reg,
|
|
rtlphy->adda_backup, 16);
|
|
rtlphy->adda_backup, 16);
|
|
@@ -1762,8 +1761,7 @@ void rtl92c_phy_iq_calibrate(struct ieee80211_hw *hw, bool recovery)
|
|
long result[4][8];
|
|
long result[4][8];
|
|
u8 i, final_candidate;
|
|
u8 i, final_candidate;
|
|
bool patha_ok, pathb_ok;
|
|
bool patha_ok, pathb_ok;
|
|
- long reg_e94, reg_e9c, reg_ea4, reg_eac, reg_eb4, reg_ebc, reg_ec4,
|
|
|
|
- reg_ecc, reg_tmp = 0;
|
|
|
|
|
|
+ long reg_e94, reg_e9c, reg_ea4, reg_eb4, reg_ebc, reg_ec4, reg_tmp = 0;
|
|
bool is12simular, is13simular, is23simular;
|
|
bool is12simular, is13simular, is23simular;
|
|
bool start_conttx = false, singletone = false;
|
|
bool start_conttx = false, singletone = false;
|
|
u32 iqk_bb_reg[10] = {
|
|
u32 iqk_bb_reg[10] = {
|
|
@@ -1841,21 +1839,17 @@ void rtl92c_phy_iq_calibrate(struct ieee80211_hw *hw, bool recovery)
|
|
reg_e94 = result[i][0];
|
|
reg_e94 = result[i][0];
|
|
reg_e9c = result[i][1];
|
|
reg_e9c = result[i][1];
|
|
reg_ea4 = result[i][2];
|
|
reg_ea4 = result[i][2];
|
|
- reg_eac = result[i][3];
|
|
|
|
reg_eb4 = result[i][4];
|
|
reg_eb4 = result[i][4];
|
|
reg_ebc = result[i][5];
|
|
reg_ebc = result[i][5];
|
|
reg_ec4 = result[i][6];
|
|
reg_ec4 = result[i][6];
|
|
- reg_ecc = result[i][7];
|
|
|
|
}
|
|
}
|
|
if (final_candidate != 0xff) {
|
|
if (final_candidate != 0xff) {
|
|
rtlphy->reg_e94 = reg_e94 = result[final_candidate][0];
|
|
rtlphy->reg_e94 = reg_e94 = result[final_candidate][0];
|
|
rtlphy->reg_e9c = reg_e9c = result[final_candidate][1];
|
|
rtlphy->reg_e9c = reg_e9c = result[final_candidate][1];
|
|
reg_ea4 = result[final_candidate][2];
|
|
reg_ea4 = result[final_candidate][2];
|
|
- reg_eac = result[final_candidate][3];
|
|
|
|
rtlphy->reg_eb4 = reg_eb4 = result[final_candidate][4];
|
|
rtlphy->reg_eb4 = reg_eb4 = result[final_candidate][4];
|
|
rtlphy->reg_ebc = reg_ebc = result[final_candidate][5];
|
|
rtlphy->reg_ebc = reg_ebc = result[final_candidate][5];
|
|
reg_ec4 = result[final_candidate][6];
|
|
reg_ec4 = result[final_candidate][6];
|
|
- reg_ecc = result[final_candidate][7];
|
|
|
|
patha_ok = pathb_ok = true;
|
|
patha_ok = pathb_ok = true;
|
|
} else {
|
|
} else {
|
|
rtlphy->reg_e94 = rtlphy->reg_eb4 = 0x100;
|
|
rtlphy->reg_e94 = rtlphy->reg_eb4 = 0x100;
|