Lines Matching refs:hw
150 static u8 rtl8723e_dm_initial_gain_min_pwdb(struct ieee80211_hw *hw) in rtl8723e_dm_initial_gain_min_pwdb() argument
152 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_initial_gain_min_pwdb()
177 static void rtl8723e_dm_false_alarm_counter_statistics(struct ieee80211_hw *hw) in rtl8723e_dm_false_alarm_counter_statistics() argument
180 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_false_alarm_counter_statistics()
183 ret_value = rtl_get_bbreg(hw, ROFDM_PHYCOUNTER1, MASKDWORD); in rtl8723e_dm_false_alarm_counter_statistics()
186 ret_value = rtl_get_bbreg(hw, ROFDM_PHYCOUNTER2, MASKDWORD); in rtl8723e_dm_false_alarm_counter_statistics()
190 ret_value = rtl_get_bbreg(hw, ROFDM_PHYCOUNTER3, MASKDWORD); in rtl8723e_dm_false_alarm_counter_statistics()
196 rtl_set_bbreg(hw, RCCK0_FALSEALARMREPORT, BIT(14), 1); in rtl8723e_dm_false_alarm_counter_statistics()
197 ret_value = rtl_get_bbreg(hw, RCCK0_FACOUNTERLOWER, MASKBYTE0); in rtl8723e_dm_false_alarm_counter_statistics()
200 ret_value = rtl_get_bbreg(hw, RCCK0_FACOUNTERUPPER, MASKBYTE3); in rtl8723e_dm_false_alarm_counter_statistics()
208 rtl_set_bbreg(hw, ROFDM1_LSTF, 0x08000000, 1); in rtl8723e_dm_false_alarm_counter_statistics()
209 rtl_set_bbreg(hw, ROFDM1_LSTF, 0x08000000, 0); in rtl8723e_dm_false_alarm_counter_statistics()
210 rtl_set_bbreg(hw, RCCK0_FALSEALARMREPORT, 0x0000c000, 0); in rtl8723e_dm_false_alarm_counter_statistics()
211 rtl_set_bbreg(hw, RCCK0_FALSEALARMREPORT, 0x0000c000, 2); in rtl8723e_dm_false_alarm_counter_statistics()
225 static void rtl92c_dm_ctrl_initgain_by_fa(struct ieee80211_hw *hw) in rtl92c_dm_ctrl_initgain_by_fa() argument
227 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl92c_dm_ctrl_initgain_by_fa()
247 rtl8723e_dm_write_dig(hw); in rtl92c_dm_ctrl_initgain_by_fa()
250 static void rtl92c_dm_ctrl_initgain_by_rssi(struct ieee80211_hw *hw) in rtl92c_dm_ctrl_initgain_by_rssi() argument
252 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl92c_dm_ctrl_initgain_by_rssi()
285 rtl8723e_dm_write_dig(hw); in rtl92c_dm_ctrl_initgain_by_rssi()
288 static void rtl8723e_dm_initial_gain_multi_sta(struct ieee80211_hw *hw) in rtl8723e_dm_initial_gain_multi_sta() argument
291 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_initial_gain_multi_sta()
292 struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); in rtl8723e_dm_initial_gain_multi_sta()
308 rtl8723e_dm_write_dig(hw); in rtl8723e_dm_initial_gain_multi_sta()
318 rtl8723e_dm_write_dig(hw); in rtl8723e_dm_initial_gain_multi_sta()
324 rtl92c_dm_ctrl_initgain_by_fa(hw); in rtl8723e_dm_initial_gain_multi_sta()
329 rtl8723e_dm_write_dig(hw); in rtl8723e_dm_initial_gain_multi_sta()
338 static void rtl8723e_dm_initial_gain_sta(struct ieee80211_hw *hw) in rtl8723e_dm_initial_gain_sta() argument
340 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_initial_gain_sta()
353 rtl8723e_dm_initial_gain_min_pwdb(hw); in rtl8723e_dm_initial_gain_sta()
354 rtl92c_dm_ctrl_initgain_by_rssi(hw); in rtl8723e_dm_initial_gain_sta()
362 rtl8723e_dm_write_dig(hw); in rtl8723e_dm_initial_gain_sta()
366 static void rtl8723e_dm_cck_packet_detection_thresh(struct ieee80211_hw *hw) in rtl8723e_dm_cck_packet_detection_thresh() argument
368 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_cck_packet_detection_thresh()
372 dm_digtable->rssi_val_min = rtl8723e_dm_initial_gain_min_pwdb(hw); in rtl8723e_dm_cck_packet_detection_thresh()
405 rtl_set_bbreg(hw, RCCK0_CCA, MASKBYTE2, in rtl8723e_dm_cck_packet_detection_thresh()
408 rtl_set_bbreg(hw, RCCK0_CCA, MASKBYTE2, in rtl8723e_dm_cck_packet_detection_thresh()
415 rtl_set_bbreg(hw, RCCK0_SYSTEM, MASKBYTE1, 0x40); in rtl8723e_dm_cck_packet_detection_thresh()
418 rtl_set_bbreg(hw, RCCK0_CCA, MASKBYTE2, 0xcd); in rtl8723e_dm_cck_packet_detection_thresh()
419 rtl_set_bbreg(hw, RCCK0_SYSTEM, MASKBYTE1, 0x47); in rtl8723e_dm_cck_packet_detection_thresh()
430 static void rtl8723e_dm_ctrl_initgain_by_twoport(struct ieee80211_hw *hw) in rtl8723e_dm_ctrl_initgain_by_twoport() argument
432 struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); in rtl8723e_dm_ctrl_initgain_by_twoport()
433 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_ctrl_initgain_by_twoport()
444 rtl8723e_dm_initial_gain_sta(hw); in rtl8723e_dm_ctrl_initgain_by_twoport()
445 rtl8723e_dm_initial_gain_multi_sta(hw); in rtl8723e_dm_ctrl_initgain_by_twoport()
446 rtl8723e_dm_cck_packet_detection_thresh(hw); in rtl8723e_dm_ctrl_initgain_by_twoport()
452 static void rtl8723e_dm_dig(struct ieee80211_hw *hw) in rtl8723e_dm_dig() argument
454 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_dig()
462 rtl8723e_dm_ctrl_initgain_by_twoport(hw); in rtl8723e_dm_dig()
466 static void rtl8723e_dm_dynamic_txpower(struct ieee80211_hw *hw) in rtl8723e_dm_dynamic_txpower() argument
468 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_dynamic_txpower()
470 struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); in rtl8723e_dm_dynamic_txpower()
537 rtl8723e_phy_set_txpower_level(hw, rtlphy->current_channel); in rtl8723e_dm_dynamic_txpower()
543 void rtl8723e_dm_write_dig(struct ieee80211_hw *hw) in rtl8723e_dm_write_dig() argument
545 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_write_dig()
554 rtl_set_bbreg(hw, ROFDM0_XAAGCCORE1, 0x7f, in rtl8723e_dm_write_dig()
556 rtl_set_bbreg(hw, ROFDM0_XBAGCCORE1, 0x7f, in rtl8723e_dm_write_dig()
563 static void rtl8723e_dm_pwdb_monitor(struct ieee80211_hw *hw) in rtl8723e_dm_pwdb_monitor() argument
567 static void rtl8723e_dm_check_edca_turbo(struct ieee80211_hw *hw) in rtl8723e_dm_check_edca_turbo() argument
569 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_check_edca_turbo()
570 struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); in rtl8723e_dm_check_edca_turbo()
630 rtlpriv->cfg->ops->set_hw_reg(hw, in rtl8723e_dm_check_edca_turbo()
643 struct ieee80211_hw *hw) in rtl8723e_dm_initialize_txpower_tracking_thermalmeter() argument
645 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_initialize_txpower_tracking_thermalmeter()
655 static void rtl8723e_dm_initialize_txpower_tracking(struct ieee80211_hw *hw) in rtl8723e_dm_initialize_txpower_tracking() argument
657 rtl8723e_dm_initialize_txpower_tracking_thermalmeter(hw); in rtl8723e_dm_initialize_txpower_tracking()
660 void rtl8723e_dm_check_txpower_tracking(struct ieee80211_hw *hw) in rtl8723e_dm_check_txpower_tracking() argument
665 void rtl8723e_dm_init_rate_adaptive_mask(struct ieee80211_hw *hw) in rtl8723e_dm_init_rate_adaptive_mask() argument
667 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_init_rate_adaptive_mask()
680 void rtl8723e_dm_rf_saving(struct ieee80211_hw *hw, u8 bforce_in_normal) in rtl8723e_dm_rf_saving() argument
682 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_rf_saving()
688 reg_874 = (rtl_get_bbreg(hw, RFPGA0_XCD_RFINTERFACESW, in rtl8723e_dm_rf_saving()
691 reg_c70 = (rtl_get_bbreg(hw, ROFDM0_AGCPARAMETER1, in rtl8723e_dm_rf_saving()
694 reg_85c = (rtl_get_bbreg(hw, RFPGA0_XCD_SWITCHCONTROL, in rtl8723e_dm_rf_saving()
697 reg_a74 = (rtl_get_bbreg(hw, 0xa74, MASKDWORD) & 0xF000) >> 12; in rtl8723e_dm_rf_saving()
724 rtl_set_bbreg(hw, RFPGA0_XCD_RFINTERFACESW, in rtl8723e_dm_rf_saving()
726 rtl_set_bbreg(hw, RFPGA0_XCD_RFINTERFACESW, in rtl8723e_dm_rf_saving()
728 rtl_set_bbreg(hw, ROFDM0_AGCPARAMETER1, BIT(3), 0); in rtl8723e_dm_rf_saving()
729 rtl_set_bbreg(hw, RFPGA0_XCD_SWITCHCONTROL, in rtl8723e_dm_rf_saving()
731 rtl_set_bbreg(hw, RFPGA0_XCD_RFINTERFACESW, in rtl8723e_dm_rf_saving()
733 rtl_set_bbreg(hw, 0xa74, 0xF000, 0x3); in rtl8723e_dm_rf_saving()
734 rtl_set_bbreg(hw, 0x818, BIT(28), 0x0); in rtl8723e_dm_rf_saving()
735 rtl_set_bbreg(hw, 0x818, BIT(28), 0x1); in rtl8723e_dm_rf_saving()
737 rtl_set_bbreg(hw, RFPGA0_XCD_RFINTERFACESW, in rtl8723e_dm_rf_saving()
739 rtl_set_bbreg(hw, ROFDM0_AGCPARAMETER1, BIT(3), in rtl8723e_dm_rf_saving()
741 rtl_set_bbreg(hw, RFPGA0_XCD_SWITCHCONTROL, 0xFF000000, in rtl8723e_dm_rf_saving()
743 rtl_set_bbreg(hw, 0xa74, 0xF000, reg_a74); in rtl8723e_dm_rf_saving()
744 rtl_set_bbreg(hw, 0x818, BIT(28), 0x0); in rtl8723e_dm_rf_saving()
745 rtl_set_bbreg(hw, RFPGA0_XCD_RFINTERFACESW, in rtl8723e_dm_rf_saving()
753 static void rtl8723e_dm_dynamic_bb_powersaving(struct ieee80211_hw *hw) in rtl8723e_dm_dynamic_bb_powersaving() argument
755 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_dynamic_bb_powersaving()
756 struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); in rtl8723e_dm_dynamic_bb_powersaving()
789 rtl8723e_dm_rf_saving(hw, false); in rtl8723e_dm_dynamic_bb_powersaving()
792 void rtl8723e_dm_init(struct ieee80211_hw *hw) in rtl8723e_dm_init() argument
794 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_init()
797 rtl_dm_diginit(hw, 0x20); in rtl8723e_dm_init()
798 rtl8723_dm_init_dynamic_txpower(hw); in rtl8723e_dm_init()
799 rtl8723_dm_init_edca_turbo(hw); in rtl8723e_dm_init()
800 rtl8723e_dm_init_rate_adaptive_mask(hw); in rtl8723e_dm_init()
801 rtl8723e_dm_initialize_txpower_tracking(hw); in rtl8723e_dm_init()
802 rtl8723_dm_init_dynamic_bb_powersaving(hw); in rtl8723e_dm_init()
805 void rtl8723e_dm_watchdog(struct ieee80211_hw *hw) in rtl8723e_dm_watchdog() argument
807 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_watchdog()
808 struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); in rtl8723e_dm_watchdog()
811 rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_FW_PSMODE_STATUS, in rtl8723e_dm_watchdog()
813 rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_FWLPS_RF_ON, in rtl8723e_dm_watchdog()
822 rtl8723e_dm_pwdb_monitor(hw); in rtl8723e_dm_watchdog()
823 rtl8723e_dm_dig(hw); in rtl8723e_dm_watchdog()
824 rtl8723e_dm_false_alarm_counter_statistics(hw); in rtl8723e_dm_watchdog()
825 rtl8723e_dm_dynamic_bb_powersaving(hw); in rtl8723e_dm_watchdog()
826 rtl8723e_dm_dynamic_txpower(hw); in rtl8723e_dm_watchdog()
827 rtl8723e_dm_check_txpower_tracking(hw); in rtl8723e_dm_watchdog()
829 rtl8723e_dm_bt_coexist(hw); in rtl8723e_dm_watchdog()
830 rtl8723e_dm_check_edca_turbo(hw); in rtl8723e_dm_watchdog()
836 static void rtl8723e_dm_init_bt_coexist(struct ieee80211_hw *hw) in rtl8723e_dm_init_bt_coexist() argument
838 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_init_bt_coexist()
841 = rtl_get_rfreg(hw, (enum radio_path)0, RF_RCK1, 0xfffff); in rtl8723e_dm_init_bt_coexist()
843 = rtl_get_rfreg(hw, (enum radio_path)0, RF_RCK2, 0xf0); in rtl8723e_dm_init_bt_coexist()
859 void rtl8723e_dm_bt_coexist(struct ieee80211_hw *hw) in rtl8723e_dm_bt_coexist() argument
861 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_coexist()
872 rtl8723e_dm_init_bt_coexist(hw); in rtl8723e_dm_bt_coexist()
880 rtl8723e_dm_bt_coexist_8723(hw); in rtl8723e_dm_bt_coexist()