Lines Matching refs:rtldm
183 struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); in rtl8723be_dm_txpower_track_adjust() local
187 u8 cck_base = rtldm->swing_idx_cck_base; in rtl8723be_dm_txpower_track_adjust()
188 u8 cck_val = rtldm->swing_idx_cck; in rtl8723be_dm_txpower_track_adjust()
676 struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); in rtl8723be_dm_tx_power_track_set_power() local
682 if (rtldm->swing_idx_cck >= CCK_TABLE_SIZE) in rtl8723be_dm_tx_power_track_set_power()
683 rtldm->swing_idx_cck = CCK_TABLE_SIZE - 1; in rtl8723be_dm_tx_power_track_set_power()
685 if (!rtldm->cck_inch14) { in rtl8723be_dm_tx_power_track_set_power()
687 cckswing_table_ch1ch13[rtldm->swing_idx_cck][0]); in rtl8723be_dm_tx_power_track_set_power()
689 cckswing_table_ch1ch13[rtldm->swing_idx_cck][1]); in rtl8723be_dm_tx_power_track_set_power()
691 cckswing_table_ch1ch13[rtldm->swing_idx_cck][2]); in rtl8723be_dm_tx_power_track_set_power()
693 cckswing_table_ch1ch13[rtldm->swing_idx_cck][3]); in rtl8723be_dm_tx_power_track_set_power()
695 cckswing_table_ch1ch13[rtldm->swing_idx_cck][4]); in rtl8723be_dm_tx_power_track_set_power()
697 cckswing_table_ch1ch13[rtldm->swing_idx_cck][5]); in rtl8723be_dm_tx_power_track_set_power()
699 cckswing_table_ch1ch13[rtldm->swing_idx_cck][6]); in rtl8723be_dm_tx_power_track_set_power()
701 cckswing_table_ch1ch13[rtldm->swing_idx_cck][7]); in rtl8723be_dm_tx_power_track_set_power()
704 cckswing_table_ch14[rtldm->swing_idx_cck][0]); in rtl8723be_dm_tx_power_track_set_power()
706 cckswing_table_ch14[rtldm->swing_idx_cck][1]); in rtl8723be_dm_tx_power_track_set_power()
708 cckswing_table_ch14[rtldm->swing_idx_cck][2]); in rtl8723be_dm_tx_power_track_set_power()
710 cckswing_table_ch14[rtldm->swing_idx_cck][3]); in rtl8723be_dm_tx_power_track_set_power()
712 cckswing_table_ch14[rtldm->swing_idx_cck][4]); in rtl8723be_dm_tx_power_track_set_power()
714 cckswing_table_ch14[rtldm->swing_idx_cck][5]); in rtl8723be_dm_tx_power_track_set_power()
716 cckswing_table_ch14[rtldm->swing_idx_cck][6]); in rtl8723be_dm_tx_power_track_set_power()
718 cckswing_table_ch14[rtldm->swing_idx_cck][7]); in rtl8723be_dm_tx_power_track_set_power()
722 if (rtldm->swing_idx_ofdm[RF90_PATH_A] < in rtl8723be_dm_tx_power_track_set_power()
725 rtldm->swing_idx_ofdm[RF90_PATH_A]; in rtl8723be_dm_tx_power_track_set_power()
728 rtldm->swing_idx_ofdm[rfpath], rfpath, in rtl8723be_dm_tx_power_track_set_power()
732 if (rtldm->swing_idx_ofdm[RF90_PATH_B] < in rtl8723be_dm_tx_power_track_set_power()
735 rtldm->swing_idx_ofdm[RF90_PATH_B]; in rtl8723be_dm_tx_power_track_set_power()
738 rtldm->swing_idx_ofdm[rfpath], rfpath, in rtl8723be_dm_tx_power_track_set_power()
752 struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); in rtl8723be_dm_txpower_tracking_callback_thermalmeter() local
782 thermalvalue, rtldm->thermalvalue, in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
785 if (!rtldm->thermalvalue) { in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
791 rtldm->thermalvalue_avg[rtldm->thermalvalue_avg_index] = thermalvalue; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
792 rtldm->thermalvalue_avg_index++; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
793 if (rtldm->thermalvalue_avg_index == AVG_THERMAL_NUM_8723BE) in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
794 rtldm->thermalvalue_avg_index = 0; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
797 if (rtldm->thermalvalue_avg[i]) { in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
798 thermalvalue_avg += rtldm->thermalvalue_avg[i]; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
841 rtldm->delta_power_index_last[RF90_PATH_A] = in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
842 rtldm->delta_power_index[RF90_PATH_A]; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
843 rtldm->delta_power_index[RF90_PATH_A] = in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
846 rtldm->delta_power_index_last[RF90_PATH_A] = in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
847 rtldm->delta_power_index[RF90_PATH_A]; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
848 rtldm->delta_power_index[RF90_PATH_A] = in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
853 if (rtldm->delta_power_index[RF90_PATH_A] == in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
854 rtldm->delta_power_index_last[RF90_PATH_A]) in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
855 rtldm->power_index_offset[RF90_PATH_A] = 0; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
857 rtldm->power_index_offset[RF90_PATH_A] = in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
858 rtldm->delta_power_index[RF90_PATH_A] - in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
859 rtldm->delta_power_index_last[RF90_PATH_A]; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
861 rtldm->ofdm_index[0] = in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
862 rtldm->swing_idx_ofdm_base[RF90_PATH_A] + in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
863 rtldm->power_index_offset[RF90_PATH_A]; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
864 rtldm->cck_index = rtldm->swing_idx_cck_base + in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
865 rtldm->power_index_offset[RF90_PATH_A]; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
867 rtldm->swing_idx_cck = rtldm->cck_index; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
868 rtldm->swing_idx_ofdm[0] = rtldm->ofdm_index[0]; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
870 if (rtldm->ofdm_index[0] > OFDM_TABLE_SIZE - 1) in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
871 rtldm->ofdm_index[0] = OFDM_TABLE_SIZE - 1; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
872 else if (rtldm->ofdm_index[0] < ofdm_min_index) in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
873 rtldm->ofdm_index[0] = ofdm_min_index; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
875 if (rtldm->cck_index > CCK_TABLE_SIZE - 1) in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
876 rtldm->cck_index = CCK_TABLE_SIZE - 1; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
877 else if (rtldm->cck_index < 0) in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
878 rtldm->cck_index = 0; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
880 rtldm->power_index_offset[RF90_PATH_A] = 0; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
883 if ((rtldm->power_index_offset[RF90_PATH_A] != 0) && in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
884 (rtldm->txpower_track_control)) { in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
885 rtldm->done_txpower = true; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
893 rtldm->swing_idx_cck_base = rtldm->swing_idx_cck; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
894 rtldm->swing_idx_ofdm_base[RF90_PATH_A] = in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
895 rtldm->swing_idx_ofdm[0]; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
896 rtldm->thermalvalue = thermalvalue; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
900 rtldm->thermalvalue_iqk = thermalvalue; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
904 rtldm->txpowercount = 0; in rtl8723be_dm_txpower_tracking_callback_thermalmeter()
1138 struct rtl_dm *rtldm = rtl_dm(rtl_priv(hw)); in rtl8723be_dm_dynamic_atc_switch() local
1145 if (rtldm->atc_status == ATC_STATUS_OFF) { in rtl8723be_dm_dynamic_atc_switch()
1148 rtldm->atc_status = ATC_STATUS_ON; in rtl8723be_dm_dynamic_atc_switch()
1158 if (rtldm->crystal_cap != rtlpriv->efuse.crystalcap) { in rtl8723be_dm_dynamic_atc_switch()
1159 rtldm->crystal_cap = rtlpriv->efuse.crystalcap; in rtl8723be_dm_dynamic_atc_switch()
1160 crystal_cap = rtldm->crystal_cap & 0x3f; in rtl8723be_dm_dynamic_atc_switch()
1165 cfo_khz_a = (int)(rtldm->cfo_tail[0] * 3125) / 1280; in rtl8723be_dm_dynamic_atc_switch()
1166 cfo_khz_b = (int)(rtldm->cfo_tail[1] * 3125) / 1280; in rtl8723be_dm_dynamic_atc_switch()
1167 packet_count = rtldm->packet_count; in rtl8723be_dm_dynamic_atc_switch()
1169 if (packet_count == rtldm->packet_count_pre) in rtl8723be_dm_dynamic_atc_switch()
1172 rtldm->packet_count_pre = packet_count; in rtl8723be_dm_dynamic_atc_switch()
1179 cfo_ave_diff = (rtldm->cfo_ave_pre >= cfo_ave) ? in rtl8723be_dm_dynamic_atc_switch()
1180 (rtldm->cfo_ave_pre - cfo_ave) : in rtl8723be_dm_dynamic_atc_switch()
1181 (cfo_ave - rtldm->cfo_ave_pre); in rtl8723be_dm_dynamic_atc_switch()
1183 if (cfo_ave_diff > 20 && rtldm->large_cfo_hit == 0) { in rtl8723be_dm_dynamic_atc_switch()
1184 rtldm->large_cfo_hit = 1; in rtl8723be_dm_dynamic_atc_switch()
1187 rtldm->large_cfo_hit = 0; in rtl8723be_dm_dynamic_atc_switch()
1189 rtldm->cfo_ave_pre = cfo_ave; in rtl8723be_dm_dynamic_atc_switch()
1191 if (cfo_ave >= -rtldm->cfo_threshold && in rtl8723be_dm_dynamic_atc_switch()
1192 cfo_ave <= rtldm->cfo_threshold && rtldm->is_freeze == 0) { in rtl8723be_dm_dynamic_atc_switch()
1193 if (rtldm->cfo_threshold == CFO_THRESHOLD_XTAL) { in rtl8723be_dm_dynamic_atc_switch()
1194 rtldm->cfo_threshold = CFO_THRESHOLD_XTAL + 10; in rtl8723be_dm_dynamic_atc_switch()
1195 rtldm->is_freeze = 1; in rtl8723be_dm_dynamic_atc_switch()
1197 rtldm->cfo_threshold = CFO_THRESHOLD_XTAL; in rtl8723be_dm_dynamic_atc_switch()
1201 if (cfo_ave > rtldm->cfo_threshold && rtldm->crystal_cap < 0x3f) in rtl8723be_dm_dynamic_atc_switch()
1208 rtldm->is_freeze = 0; in rtl8723be_dm_dynamic_atc_switch()
1209 rtldm->crystal_cap += adjust_xtal; in rtl8723be_dm_dynamic_atc_switch()
1211 if (rtldm->crystal_cap > 0x3f) in rtl8723be_dm_dynamic_atc_switch()
1212 rtldm->crystal_cap = 0x3f; in rtl8723be_dm_dynamic_atc_switch()
1213 else if (rtldm->crystal_cap < 0) in rtl8723be_dm_dynamic_atc_switch()
1214 rtldm->crystal_cap = 0; in rtl8723be_dm_dynamic_atc_switch()
1216 crystal_cap = rtldm->crystal_cap & 0x3f; in rtl8723be_dm_dynamic_atc_switch()
1223 if (rtldm->atc_status == ATC_STATUS_ON) { in rtl8723be_dm_dynamic_atc_switch()
1226 rtldm->atc_status = ATC_STATUS_OFF; in rtl8723be_dm_dynamic_atc_switch()
1229 if (rtldm->atc_status == ATC_STATUS_OFF) { in rtl8723be_dm_dynamic_atc_switch()
1232 rtldm->atc_status = ATC_STATUS_ON; in rtl8723be_dm_dynamic_atc_switch()