Lines Matching refs:hw

168 static void rtl88e_set_iqk_matrix(struct ieee80211_hw *hw,  in rtl88e_set_iqk_matrix()  argument
188 rtl_set_bbreg(hw, ROFDM0_XATXIQIMBALANCE, in rtl88e_set_iqk_matrix()
191 rtl_set_bbreg(hw, ROFDM0_XCTXAFE, MASKH4BITS, in rtl88e_set_iqk_matrix()
194 rtl_set_bbreg(hw, ROFDM0_ECCATHRESHOLD, BIT(24), in rtl88e_set_iqk_matrix()
199 rtl_set_bbreg(hw, ROFDM0_XBTXIQIMBALANCE, MASKDWORD, in rtl88e_set_iqk_matrix()
202 rtl_set_bbreg(hw, ROFDM0_XDTXAFE, MASKH4BITS, value32); in rtl88e_set_iqk_matrix()
204 rtl_set_bbreg(hw, ROFDM0_ECCATHRESHOLD, BIT(28), in rtl88e_set_iqk_matrix()
213 rtl_set_bbreg(hw, ROFDM0_XATXIQIMBALANCE, in rtl88e_set_iqk_matrix()
215 rtl_set_bbreg(hw, ROFDM0_XCTXAFE, in rtl88e_set_iqk_matrix()
217 rtl_set_bbreg(hw, ROFDM0_ECCATHRESHOLD, in rtl88e_set_iqk_matrix()
221 rtl_set_bbreg(hw, ROFDM0_XBTXIQIMBALANCE, in rtl88e_set_iqk_matrix()
223 rtl_set_bbreg(hw, ROFDM0_XDTXAFE, in rtl88e_set_iqk_matrix()
225 rtl_set_bbreg(hw, ROFDM0_ECCATHRESHOLD, in rtl88e_set_iqk_matrix()
234 void rtl88e_dm_txpower_track_adjust(struct ieee80211_hw *hw, in rtl88e_dm_txpower_track_adjust() argument
237 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_txpower_track_adjust()
238 struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); in rtl88e_dm_txpower_track_adjust()
270 static void dm_tx_pwr_track_set_pwr(struct ieee80211_hw *hw, in dm_tx_pwr_track_set_pwr() argument
274 struct rtl_priv *rtlpriv = rtl_priv(hw); in dm_tx_pwr_track_set_pwr()
276 struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); in dm_tx_pwr_track_set_pwr()
281 rtl88e_phy_set_txpower_level(hw, in dm_tx_pwr_track_set_pwr()
324 rtl88e_set_iqk_matrix(hw, rtldm->swing_idx_ofdm[rfpath], in dm_tx_pwr_track_set_pwr()
332 rtl88e_set_iqk_matrix(hw, rtldm->swing_idx_ofdm[rfpath], in dm_tx_pwr_track_set_pwr()
345 static u8 rtl88e_dm_initial_gain_min_pwdb(struct ieee80211_hw *hw) in rtl88e_dm_initial_gain_min_pwdb() argument
347 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_initial_gain_min_pwdb()
372 static void rtl88e_dm_false_alarm_counter_statistics(struct ieee80211_hw *hw) in rtl88e_dm_false_alarm_counter_statistics() argument
375 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_false_alarm_counter_statistics()
378 rtl_set_bbreg(hw, ROFDM0_LSTF, BIT(31), 1); in rtl88e_dm_false_alarm_counter_statistics()
379 rtl_set_bbreg(hw, ROFDM1_LSTF, BIT(31), 1); in rtl88e_dm_false_alarm_counter_statistics()
381 ret_value = rtl_get_bbreg(hw, ROFDM0_FRAMESYNC, MASKDWORD); in rtl88e_dm_false_alarm_counter_statistics()
385 ret_value = rtl_get_bbreg(hw, ROFDM_PHYCOUNTER1, MASKDWORD); in rtl88e_dm_false_alarm_counter_statistics()
389 ret_value = rtl_get_bbreg(hw, ROFDM_PHYCOUNTER2, MASKDWORD); in rtl88e_dm_false_alarm_counter_statistics()
393 ret_value = rtl_get_bbreg(hw, ROFDM_PHYCOUNTER3, MASKDWORD); in rtl88e_dm_false_alarm_counter_statistics()
402 ret_value = rtl_get_bbreg(hw, REG_SC_CNT, MASKDWORD); in rtl88e_dm_false_alarm_counter_statistics()
406 rtl_set_bbreg(hw, RCCK0_FALSEALARMREPORT, BIT(12), 1); in rtl88e_dm_false_alarm_counter_statistics()
407 rtl_set_bbreg(hw, RCCK0_FALSEALARMREPORT, BIT(14), 1); in rtl88e_dm_false_alarm_counter_statistics()
409 ret_value = rtl_get_bbreg(hw, RCCK0_FACOUNTERLOWER, MASKBYTE0); in rtl88e_dm_false_alarm_counter_statistics()
412 ret_value = rtl_get_bbreg(hw, RCCK0_FACOUNTERUPPER, MASKBYTE3); in rtl88e_dm_false_alarm_counter_statistics()
415 ret_value = rtl_get_bbreg(hw, RCCK0_CCA_CNT, MASKDWORD); in rtl88e_dm_false_alarm_counter_statistics()
429 rtl_set_bbreg(hw, ROFDM0_TRSWISOLATION, BIT(31), 1); in rtl88e_dm_false_alarm_counter_statistics()
430 rtl_set_bbreg(hw, ROFDM0_TRSWISOLATION, BIT(31), 0); in rtl88e_dm_false_alarm_counter_statistics()
431 rtl_set_bbreg(hw, ROFDM1_LSTF, BIT(27), 1); in rtl88e_dm_false_alarm_counter_statistics()
432 rtl_set_bbreg(hw, ROFDM1_LSTF, BIT(27), 0); in rtl88e_dm_false_alarm_counter_statistics()
433 rtl_set_bbreg(hw, ROFDM0_LSTF, BIT(31), 0); in rtl88e_dm_false_alarm_counter_statistics()
434 rtl_set_bbreg(hw, ROFDM1_LSTF, BIT(31), 0); in rtl88e_dm_false_alarm_counter_statistics()
435 rtl_set_bbreg(hw, RCCK0_FALSEALARMREPORT, BIT(13)|BIT(12), 0); in rtl88e_dm_false_alarm_counter_statistics()
436 rtl_set_bbreg(hw, RCCK0_FALSEALARMREPORT, BIT(13)|BIT(12), 2); in rtl88e_dm_false_alarm_counter_statistics()
437 rtl_set_bbreg(hw, RCCK0_FALSEALARMREPORT, BIT(15)|BIT(14), 0); in rtl88e_dm_false_alarm_counter_statistics()
438 rtl_set_bbreg(hw, RCCK0_FALSEALARMREPORT, BIT(15)|BIT(14), 2); in rtl88e_dm_false_alarm_counter_statistics()
452 static void rtl88e_dm_cck_packet_detection_thresh(struct ieee80211_hw *hw) in rtl88e_dm_cck_packet_detection_thresh() argument
454 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_cck_packet_detection_thresh()
459 dm_dig->rssi_val_min = rtl88e_dm_initial_gain_min_pwdb(hw); in rtl88e_dm_cck_packet_detection_thresh()
480 rtl_set_bbreg(hw, RCCK0_CCA, MASKBYTE2, cur_cck_cca_thresh); in rtl88e_dm_cck_packet_detection_thresh()
488 static void rtl88e_dm_dig(struct ieee80211_hw *hw) in rtl88e_dm_dig() argument
490 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_dig()
491 struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); in rtl88e_dm_dig()
492 struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); in rtl88e_dm_dig()
522 rtl88e_dm_initial_gain_min_pwdb(hw); in rtl88e_dm_dig()
614 rtl88e_dm_write_dig(hw); in rtl88e_dm_dig()
619 rtl88e_dm_cck_packet_detection_thresh(hw); in rtl88e_dm_dig()
622 static void rtl88e_dm_init_dynamic_txpower(struct ieee80211_hw *hw) in rtl88e_dm_init_dynamic_txpower() argument
624 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_init_dynamic_txpower()
632 static void rtl92c_dm_dynamic_txpower(struct ieee80211_hw *hw) in rtl92c_dm_dynamic_txpower() argument
634 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl92c_dm_dynamic_txpower()
636 struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); in rtl92c_dm_dynamic_txpower()
704 rtl88e_phy_set_txpower_level(hw, rtlphy->current_channel); in rtl92c_dm_dynamic_txpower()
710 void rtl88e_dm_write_dig(struct ieee80211_hw *hw) in rtl88e_dm_write_dig() argument
712 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_write_dig()
723 rtl_set_bbreg(hw, ROFDM0_XAAGCCORE1, 0x7f, in rtl88e_dm_write_dig()
730 static void rtl88e_dm_pwdb_monitor(struct ieee80211_hw *hw) in rtl88e_dm_pwdb_monitor() argument
732 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_pwdb_monitor()
733 struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); in rtl88e_dm_pwdb_monitor()
794 void rtl88e_dm_init_edca_turbo(struct ieee80211_hw *hw) in rtl88e_dm_init_edca_turbo() argument
796 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_init_edca_turbo()
803 static void rtl88e_dm_check_edca_turbo(struct ieee80211_hw *hw) in rtl88e_dm_check_edca_turbo() argument
805 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_check_edca_turbo()
806 struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); in rtl88e_dm_check_edca_turbo()
867 rtlpriv->cfg->ops->set_hw_reg(hw, in rtl88e_dm_check_edca_turbo()
879 static void dm_txpower_track_cb_therm(struct ieee80211_hw *hw) in dm_txpower_track_cb_therm() argument
881 struct rtl_priv *rtlpriv = rtl_priv(hw); in dm_txpower_track_cb_therm()
882 struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); in dm_txpower_track_cb_therm()
883 struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); in dm_txpower_track_cb_therm()
884 struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); in dm_txpower_track_cb_therm()
915 thermalvalue = (u8)rtl_get_rfreg(hw, RF90_PATH_A, RF_T_METER, in dm_txpower_track_cb_therm()
925 ele_d = rtl_get_bbreg(hw, ROFDM0_XATXIQIMBALANCE, MASKDWORD) & in dm_txpower_track_cb_therm()
940 temp_cck = rtl_get_bbreg(hw, RCCK0_TXFILTER2, MASKDWORD) & MASKCCK; in dm_txpower_track_cb_therm()
1026 rtl88e_phy_lc_calibrate(hw); in dm_txpower_track_cb_therm()
1091 dm_tx_pwr_track_set_pwr(hw, TXAGC, 0, 0); in dm_txpower_track_cb_therm()
1097 rtl88e_phy_iq_calibrate(hw, false); in dm_txpower_track_cb_therm()
1106 static void rtl88e_dm_init_txpower_tracking(struct ieee80211_hw *hw) in rtl88e_dm_init_txpower_tracking() argument
1108 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_init_txpower_tracking()
1123 void rtl88e_dm_check_txpower_tracking(struct ieee80211_hw *hw) in rtl88e_dm_check_txpower_tracking() argument
1125 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_check_txpower_tracking()
1132 rtl_set_rfreg(hw, RF90_PATH_A, RF_T_METER, BIT(17)|BIT(16), in rtl88e_dm_check_txpower_tracking()
1141 dm_txpower_track_cb_therm(hw); in rtl88e_dm_check_txpower_tracking()
1146 void rtl88e_dm_init_rate_adaptive_mask(struct ieee80211_hw *hw) in rtl88e_dm_init_rate_adaptive_mask() argument
1148 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_init_rate_adaptive_mask()
1160 static void rtl88e_dm_refresh_rate_adaptive_mask(struct ieee80211_hw *hw) in rtl88e_dm_refresh_rate_adaptive_mask() argument
1162 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_refresh_rate_adaptive_mask()
1163 struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); in rtl88e_dm_refresh_rate_adaptive_mask()
1164 struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); in rtl88e_dm_refresh_rate_adaptive_mask()
1222 sta = rtl_find_sta(hw, mac->bssid); in rtl88e_dm_refresh_rate_adaptive_mask()
1224 rtlpriv->cfg->ops->update_rate_tbl(hw, sta, in rtl88e_dm_refresh_rate_adaptive_mask()
1233 static void rtl92c_dm_init_dynamic_bb_powersaving(struct ieee80211_hw *hw) in rtl92c_dm_init_dynamic_bb_powersaving() argument
1235 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl92c_dm_init_dynamic_bb_powersaving()
1245 static void rtl88e_dm_update_rx_idle_ant(struct ieee80211_hw *hw, in rtl88e_dm_update_rx_idle_ant() argument
1248 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_update_rx_idle_ant()
1249 struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); in rtl88e_dm_update_rx_idle_ant()
1250 struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); in rtl88e_dm_update_rx_idle_ant()
1274 rtl_set_bbreg(hw, DM_REG_RX_ANT_CTRL_11N, in rtl88e_dm_update_rx_idle_ant()
1276 rtl_set_bbreg(hw, DM_REG_RX_ANT_CTRL_11N, in rtl88e_dm_update_rx_idle_ant()
1278 rtl_set_bbreg(hw, DM_REG_ANTSEL_CTRL_11N, in rtl88e_dm_update_rx_idle_ant()
1281 rtl_set_bbreg(hw, DM_REG_RESP_TX_11N, in rtl88e_dm_update_rx_idle_ant()
1284 rtl_set_bbreg(hw, DM_REG_RX_ANT_CTRL_11N, in rtl88e_dm_update_rx_idle_ant()
1286 rtl_set_bbreg(hw, DM_REG_RX_ANT_CTRL_11N, in rtl88e_dm_update_rx_idle_ant()
1295 static void rtl88e_dm_update_tx_ant(struct ieee80211_hw *hw, in rtl88e_dm_update_tx_ant() argument
1298 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_update_tx_ant()
1299 struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); in rtl88e_dm_update_tx_ant()
1319 static void rtl88e_dm_rx_hw_antena_div_init(struct ieee80211_hw *hw) in rtl88e_dm_rx_hw_antena_div_init() argument
1324 value32 = rtl_get_bbreg(hw, DM_REG_ANTSEL_PIN_11N, MASKDWORD); in rtl88e_dm_rx_hw_antena_div_init()
1325 rtl_set_bbreg(hw, DM_REG_ANTSEL_PIN_11N, in rtl88e_dm_rx_hw_antena_div_init()
1328 rtl_set_bbreg(hw, DM_REG_PIN_CTRL_11N, BIT(9) | BIT(8), 0); in rtl88e_dm_rx_hw_antena_div_init()
1329 rtl_set_bbreg(hw, DM_REG_RX_ANT_CTRL_11N, BIT(10), 0); in rtl88e_dm_rx_hw_antena_div_init()
1330 rtl_set_bbreg(hw, DM_REG_LNA_SWITCH_11N, BIT(22), 1); in rtl88e_dm_rx_hw_antena_div_init()
1331 rtl_set_bbreg(hw, DM_REG_LNA_SWITCH_11N, BIT(31), 1); in rtl88e_dm_rx_hw_antena_div_init()
1333 rtl_set_bbreg(hw, DM_REG_ANTDIV_PARA1_11N, MASKDWORD, 0x000000a0); in rtl88e_dm_rx_hw_antena_div_init()
1335 rtl_set_bbreg(hw, DM_REG_BB_PWR_SAV4_11N, BIT(7), 1); in rtl88e_dm_rx_hw_antena_div_init()
1336 rtl_set_bbreg(hw, DM_REG_CCK_ANTDIV_PARA2_11N, BIT(4), 1); in rtl88e_dm_rx_hw_antena_div_init()
1337 rtl88e_dm_update_rx_idle_ant(hw, MAIN_ANT); in rtl88e_dm_rx_hw_antena_div_init()
1338 rtl_set_bbreg(hw, DM_REG_ANT_MAPPING1_11N, MASKLWORD, 0x0201); in rtl88e_dm_rx_hw_antena_div_init()
1341 static void rtl88e_dm_trx_hw_antenna_div_init(struct ieee80211_hw *hw) in rtl88e_dm_trx_hw_antenna_div_init() argument
1346 value32 = rtl_get_bbreg(hw, DM_REG_ANTSEL_PIN_11N, MASKDWORD); in rtl88e_dm_trx_hw_antenna_div_init()
1347 rtl_set_bbreg(hw, DM_REG_ANTSEL_PIN_11N, MASKDWORD, in rtl88e_dm_trx_hw_antenna_div_init()
1350 rtl_set_bbreg(hw, DM_REG_PIN_CTRL_11N, BIT(9) | BIT(8), 0); in rtl88e_dm_trx_hw_antenna_div_init()
1351 rtl_set_bbreg(hw, DM_REG_RX_ANT_CTRL_11N, BIT(10), 0); in rtl88e_dm_trx_hw_antenna_div_init()
1352 rtl_set_bbreg(hw, DM_REG_LNA_SWITCH_11N, BIT(22), 0); in rtl88e_dm_trx_hw_antenna_div_init()
1353 rtl_set_bbreg(hw, DM_REG_LNA_SWITCH_11N, BIT(31), 1); in rtl88e_dm_trx_hw_antenna_div_init()
1355 rtl_set_bbreg(hw, DM_REG_ANTDIV_PARA1_11N, MASKDWORD, 0x000000a0); in rtl88e_dm_trx_hw_antenna_div_init()
1357 rtl_set_bbreg(hw, DM_REG_BB_PWR_SAV4_11N, BIT(7), 1); in rtl88e_dm_trx_hw_antenna_div_init()
1358 rtl_set_bbreg(hw, DM_REG_CCK_ANTDIV_PARA2_11N, BIT(4), 1); in rtl88e_dm_trx_hw_antenna_div_init()
1360 rtl_set_bbreg(hw, DM_REG_TX_ANT_CTRL_11N, BIT(21), 0); in rtl88e_dm_trx_hw_antenna_div_init()
1361 rtl88e_dm_update_rx_idle_ant(hw, MAIN_ANT); in rtl88e_dm_trx_hw_antenna_div_init()
1362 rtl_set_bbreg(hw, DM_REG_ANT_MAPPING1_11N, MASKLWORD, 0x0201); in rtl88e_dm_trx_hw_antenna_div_init()
1365 static void rtl88e_dm_fast_training_init(struct ieee80211_hw *hw) in rtl88e_dm_fast_training_init() argument
1367 struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); in rtl88e_dm_fast_training_init()
1382 value32 = rtl_get_bbreg(hw, DM_REG_ANTSEL_PIN_11N, MASKDWORD); in rtl88e_dm_fast_training_init()
1383 rtl_set_bbreg(hw, DM_REG_ANTSEL_PIN_11N, in rtl88e_dm_fast_training_init()
1385 value32 = rtl_get_bbreg(hw, DM_REG_ANT_TRAIN_PARA2_11N, MASKDWORD); in rtl88e_dm_fast_training_init()
1386 rtl_set_bbreg(hw, DM_REG_ANT_TRAIN_PARA2_11N, in rtl88e_dm_fast_training_init()
1388 rtl_set_bbreg(hw, DM_REG_ANT_TRAIN_PARA2_11N, in rtl88e_dm_fast_training_init()
1390 rtl_set_bbreg(hw, DM_REG_ANT_TRAIN_PARA1_11N, in rtl88e_dm_fast_training_init()
1394 rtl_set_bbreg(hw, DM_REG_PIN_CTRL_11N, BIT(9) | BIT(8), 0); in rtl88e_dm_fast_training_init()
1395 rtl_set_bbreg(hw, DM_REG_RX_ANT_CTRL_11N, BIT(10), 0); in rtl88e_dm_fast_training_init()
1396 rtl_set_bbreg(hw, DM_REG_LNA_SWITCH_11N, BIT(22), 0); in rtl88e_dm_fast_training_init()
1397 rtl_set_bbreg(hw, DM_REG_LNA_SWITCH_11N, BIT(31), 1); in rtl88e_dm_fast_training_init()
1400 rtl_set_bbreg(hw, DM_REG_ANTDIV_PARA1_11N, MASKDWORD, 0x000000a0); in rtl88e_dm_fast_training_init()
1402 rtl_set_bbreg(hw, DM_REG_ANT_MAPPING1_11N, MASKBYTE0, 1); in rtl88e_dm_fast_training_init()
1403 rtl_set_bbreg(hw, DM_REG_ANT_MAPPING1_11N, MASKBYTE1, 2); in rtl88e_dm_fast_training_init()
1406 rtl_set_bbreg(hw, DM_REG_TX_ANT_CTRL_11N, BIT(21), 1); in rtl88e_dm_fast_training_init()
1407 rtl_set_bbreg(hw, DM_REG_RX_ANT_CTRL_11N, in rtl88e_dm_fast_training_init()
1409 rtl_set_bbreg(hw, DM_REG_RX_ANT_CTRL_11N, in rtl88e_dm_fast_training_init()
1411 rtl_set_bbreg(hw, DM_REG_RX_ANT_CTRL_11N, in rtl88e_dm_fast_training_init()
1414 rtl_set_bbreg(hw, DM_REG_IGI_A_11N, BIT(7), 1); in rtl88e_dm_fast_training_init()
1417 static void rtl88e_dm_antenna_div_init(struct ieee80211_hw *hw) in rtl88e_dm_antenna_div_init() argument
1419 struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); in rtl88e_dm_antenna_div_init()
1422 rtl88e_dm_rx_hw_antena_div_init(hw); in rtl88e_dm_antenna_div_init()
1424 rtl88e_dm_trx_hw_antenna_div_init(hw); in rtl88e_dm_antenna_div_init()
1426 rtl88e_dm_fast_training_init(hw); in rtl88e_dm_antenna_div_init()
1430 void rtl88e_dm_set_tx_ant_by_tx_info(struct ieee80211_hw *hw, in rtl88e_dm_set_tx_ant_by_tx_info() argument
1433 struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); in rtl88e_dm_set_tx_ant_by_tx_info()
1434 struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); in rtl88e_dm_set_tx_ant_by_tx_info()
1445 void rtl88e_dm_ant_sel_statistics(struct ieee80211_hw *hw, in rtl88e_dm_ant_sel_statistics() argument
1449 struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); in rtl88e_dm_ant_sel_statistics()
1450 struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); in rtl88e_dm_ant_sel_statistics()
1472 static void rtl88e_dm_hw_ant_div(struct ieee80211_hw *hw) in rtl88e_dm_hw_ant_div() argument
1474 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_hw_ant_div()
1475 struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); in rtl88e_dm_hw_ant_div()
1476 struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); in rtl88e_dm_hw_ant_div()
1520 rtl88e_dm_update_tx_ant(hw, target_ant, i); in rtl88e_dm_hw_ant_div()
1559 rtl88e_dm_update_tx_ant(hw, target_ant, i); in rtl88e_dm_hw_ant_div()
1571 rtl88e_dm_update_rx_idle_ant(hw, rx_idle_ant); in rtl88e_dm_hw_ant_div()
1577 static void rtl88e_set_next_mac_address_target(struct ieee80211_hw *hw) in rtl88e_set_next_mac_address_target() argument
1579 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_set_next_mac_address_target()
1580 struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); in rtl88e_set_next_mac_address_target()
1581 struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); in rtl88e_set_next_mac_address_target()
1596 rtl_set_bbreg(hw, DM_REG_ANT_TRAIN_PARA2_11N, in rtl88e_set_next_mac_address_target()
1603 rtl_set_bbreg(hw, DM_REG_ANT_TRAIN_PARA1_11N, in rtl88e_set_next_mac_address_target()
1619 rtl_set_bbreg(hw, in rtl88e_set_next_mac_address_target()
1627 rtl_set_bbreg(hw, in rtl88e_set_next_mac_address_target()
1641 static void rtl88e_dm_fast_ant_training(struct ieee80211_hw *hw) in rtl88e_dm_fast_ant_training() argument
1643 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_fast_ant_training()
1644 struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); in rtl88e_dm_fast_ant_training()
1668 rtl_set_bbreg(hw, DM_REG_TXAGC_A_1_MCS32_11N, in rtl88e_dm_fast_ant_training()
1670 rtl_set_bbreg(hw, DM_REG_IGI_A_11N, BIT(7), 0); in rtl88e_dm_fast_ant_training()
1672 rtl_set_bbreg(hw, DM_REG_TXAGC_A_1_MCS32_11N, in rtl88e_dm_fast_ant_training()
1674 rtl_set_bbreg(hw, DM_REG_RX_ANT_CTRL_11N, BIT(8) | in rtl88e_dm_fast_ant_training()
1676 rtl_set_bbreg(hw, DM_REG_TX_ANT_CTRL_11N, in rtl88e_dm_fast_ant_training()
1687 rtl_set_bbreg(hw, DM_REG_IGI_A_11N, BIT(7), 0); in rtl88e_dm_fast_ant_training()
1700 rtl88e_set_next_mac_address_target(hw); in rtl88e_dm_fast_ant_training()
1703 rtl_set_bbreg(hw, DM_REG_TXAGC_A_1_MCS32_11N, BIT(16), 1); in rtl88e_dm_fast_ant_training()
1704 rtl_set_bbreg(hw, DM_REG_IGI_A_11N, BIT(7), 1); in rtl88e_dm_fast_ant_training()
1713 struct ieee80211_hw *hw = (struct ieee80211_hw *)data; in rtl88e_dm_fast_antenna_training_callback() local
1715 rtl88e_dm_fast_ant_training(hw); in rtl88e_dm_fast_antenna_training_callback()
1718 static void rtl88e_dm_antenna_diversity(struct ieee80211_hw *hw) in rtl88e_dm_antenna_diversity() argument
1720 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_antenna_diversity()
1721 struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); in rtl88e_dm_antenna_diversity()
1722 struct rtl_efuse *rtlefuse = rtl_efuse(rtl_priv(hw)); in rtl88e_dm_antenna_diversity()
1723 struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); in rtl88e_dm_antenna_diversity()
1731 rtl_set_bbreg(hw, DM_REG_IGI_A_11N, BIT(7), 0); in rtl88e_dm_antenna_diversity()
1732 rtl_set_bbreg(hw, DM_REG_CCK_ANTDIV_PARA1_11N, in rtl88e_dm_antenna_diversity()
1735 rtl_set_bbreg(hw, DM_REG_TX_ANT_CTRL_11N, in rtl88e_dm_antenna_diversity()
1746 rtl_set_bbreg(hw, DM_REG_IGI_A_11N, BIT(7), 1); in rtl88e_dm_antenna_diversity()
1747 rtl_set_bbreg(hw, DM_REG_CCK_ANTDIV_PARA1_11N, in rtl88e_dm_antenna_diversity()
1750 rtl_set_bbreg(hw, DM_REG_TX_ANT_CTRL_11N, in rtl88e_dm_antenna_diversity()
1760 rtl88e_dm_hw_ant_div(hw); in rtl88e_dm_antenna_diversity()
1762 rtl88e_dm_fast_ant_training(hw); in rtl88e_dm_antenna_diversity()
1765 void rtl88e_dm_init(struct ieee80211_hw *hw) in rtl88e_dm_init() argument
1767 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_init()
1768 u32 cur_igvalue = rtl_get_bbreg(hw, ROFDM0_XAAGCCORE1, 0x7f); in rtl88e_dm_init()
1771 rtl_dm_diginit(hw, cur_igvalue); in rtl88e_dm_init()
1772 rtl88e_dm_init_dynamic_txpower(hw); in rtl88e_dm_init()
1773 rtl88e_dm_init_edca_turbo(hw); in rtl88e_dm_init()
1774 rtl88e_dm_init_rate_adaptive_mask(hw); in rtl88e_dm_init()
1775 rtl88e_dm_init_txpower_tracking(hw); in rtl88e_dm_init()
1776 rtl92c_dm_init_dynamic_bb_powersaving(hw); in rtl88e_dm_init()
1777 rtl88e_dm_antenna_div_init(hw); in rtl88e_dm_init()
1780 void rtl88e_dm_watchdog(struct ieee80211_hw *hw) in rtl88e_dm_watchdog() argument
1782 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl88e_dm_watchdog()
1783 struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); in rtl88e_dm_watchdog()
1787 rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_FW_PSMODE_STATUS, in rtl88e_dm_watchdog()
1789 rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_FWLPS_RF_ON, in rtl88e_dm_watchdog()
1797 rtl88e_dm_pwdb_monitor(hw); in rtl88e_dm_watchdog()
1798 rtl88e_dm_dig(hw); in rtl88e_dm_watchdog()
1799 rtl88e_dm_false_alarm_counter_statistics(hw); in rtl88e_dm_watchdog()
1800 rtl92c_dm_dynamic_txpower(hw); in rtl88e_dm_watchdog()
1801 rtl88e_dm_check_txpower_tracking(hw); in rtl88e_dm_watchdog()
1802 rtl88e_dm_refresh_rate_adaptive_mask(hw); in rtl88e_dm_watchdog()
1803 rtl88e_dm_check_edca_turbo(hw); in rtl88e_dm_watchdog()
1804 rtl88e_dm_antenna_diversity(hw); in rtl88e_dm_watchdog()