Lines Matching refs:hw
35 void rtl8723e_dm_bt_turn_off_bt_coexist_before_enter_lps(struct ieee80211_hw *hw) in rtl8723e_dm_bt_turn_off_bt_coexist_before_enter_lps() argument
37 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_turn_off_bt_coexist_before_enter_lps()
38 struct rtl_ps_ctl *ppsc = rtl_psc(rtl_priv(hw)); in rtl8723e_dm_bt_turn_off_bt_coexist_before_enter_lps()
50 rtl8723e_btdm_coex_all_off(hw); in rtl8723e_dm_bt_turn_off_bt_coexist_before_enter_lps()
54 static enum rt_media_status mgnt_link_status_query(struct ieee80211_hw *hw) in mgnt_link_status_query() argument
56 struct rtl_priv *rtlpriv = rtl_priv(hw); in mgnt_link_status_query()
57 struct rtl_mac *mac = rtl_mac(rtl_priv(hw)); in mgnt_link_status_query()
66 void rtl_8723e_bt_wifi_media_status_notify(struct ieee80211_hw *hw, in rtl_8723e_bt_wifi_media_status_notify() argument
69 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_8723e_bt_wifi_media_status_notify()
82 if (mgnt_link_status_query(hw)) { in rtl_8723e_bt_wifi_media_status_notify()
96 rtl8723e_fill_h2c_cmd(hw, 0x19, 3, h2c_parameter); in rtl_8723e_bt_wifi_media_status_notify()
99 static bool rtl8723e_dm_bt_is_wifi_busy(struct ieee80211_hw *hw) in rtl8723e_dm_bt_is_wifi_busy() argument
101 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_is_wifi_busy()
110 static void rtl8723e_dm_bt_set_fw_3a(struct ieee80211_hw *hw, in rtl8723e_dm_bt_set_fw_3a() argument
114 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_set_fw_3a()
127 rtl8723e_fill_h2c_cmd(hw, 0x3a, 5, h2c_parameter); in rtl8723e_dm_bt_set_fw_3a()
130 static bool rtl8723e_dm_bt_need_to_dec_bt_pwr(struct ieee80211_hw *hw) in rtl8723e_dm_bt_need_to_dec_bt_pwr() argument
132 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_need_to_dec_bt_pwr()
134 if (mgnt_link_status_query(hw) == RT_MEDIA_CONNECT) { in rtl8723e_dm_bt_need_to_dec_bt_pwr()
146 static bool rtl8723e_dm_bt_is_same_coexist_state(struct ieee80211_hw *hw) in rtl8723e_dm_bt_is_same_coexist_state() argument
148 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_is_same_coexist_state()
164 static void rtl8723e_dm_bt_set_coex_table(struct ieee80211_hw *hw, in rtl8723e_dm_bt_set_coex_table() argument
168 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_set_coex_table()
183 static void rtl8723e_dm_bt_set_hw_pta_mode(struct ieee80211_hw *hw, bool b_mode) in rtl8723e_dm_bt_set_hw_pta_mode() argument
185 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_set_hw_pta_mode()
198 static void rtl8723e_dm_bt_set_sw_rf_rx_lpf_corner(struct ieee80211_hw *hw, in rtl8723e_dm_bt_set_sw_rf_rx_lpf_corner() argument
201 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_set_sw_rf_rx_lpf_corner()
207 rtl8723e_phy_set_rf_reg(hw, RF90_PATH_A, 0x1e, in rtl8723e_dm_bt_set_sw_rf_rx_lpf_corner()
214 rtl8723e_phy_set_rf_reg(hw, RF90_PATH_A, 0x1e, 0xfffff, in rtl8723e_dm_bt_set_sw_rf_rx_lpf_corner()
219 static void dm_bt_set_sw_penalty_tx_rate_adapt(struct ieee80211_hw *hw, in dm_bt_set_sw_penalty_tx_rate_adapt() argument
222 struct rtl_priv *rtlpriv = rtl_priv(hw); in dm_bt_set_sw_penalty_tx_rate_adapt()
241 static void rtl8723e_dm_bt_btdm_structure_reload(struct ieee80211_hw *hw, in rtl8723e_dm_bt_btdm_structure_reload() argument
284 static void rtl8723e_dm_bt_btdm_structure_reload_all_off(struct ieee80211_hw *hw, in rtl8723e_dm_bt_btdm_structure_reload_all_off() argument
287 rtl8723e_dm_bt_btdm_structure_reload(hw, btdm); in rtl8723e_dm_bt_btdm_structure_reload_all_off()
293 static bool rtl8723e_dm_bt_is_2_ant_common_action(struct ieee80211_hw *hw) in rtl8723e_dm_bt_is_2_ant_common_action() argument
295 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_is_2_ant_common_action()
299 rtl8723e_dm_bt_btdm_structure_reload(hw, &btdm8723); in rtl8723e_dm_bt_is_2_ant_common_action()
301 if (!rtl8723e_dm_bt_is_wifi_busy(hw) && in rtl8723e_dm_bt_is_2_ant_common_action()
305 rtl8723e_dm_bt_btdm_structure_reload_all_off(hw, &btdm8723); in rtl8723e_dm_bt_is_2_ant_common_action()
307 } else if (rtl8723e_dm_bt_is_wifi_busy(hw) && in rtl8723e_dm_bt_is_2_ant_common_action()
333 if (mgnt_link_status_query(hw) == RT_MEDIA_CONNECT) { in rtl8723e_dm_bt_is_2_ant_common_action()
362 if (rtl8723e_dm_bt_need_to_dec_bt_pwr(hw)) in rtl8723e_dm_bt_is_2_ant_common_action()
369 if (b_common && rtl8723e_dm_bt_is_coexist_state_changed(hw)) in rtl8723e_dm_bt_is_2_ant_common_action()
370 rtl8723e_dm_bt_set_bt_dm(hw, &btdm8723); in rtl8723e_dm_bt_is_2_ant_common_action()
376 struct ieee80211_hw *hw, in rtl8723e_dm_bt_set_sw_full_time_dac_swing() argument
380 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_set_sw_full_time_dac_swing()
385 rtl8723_phy_set_bb_reg(hw, 0x880, 0xff000000, in rtl8723e_dm_bt_set_sw_full_time_dac_swing()
391 rtl8723_phy_set_bb_reg(hw, 0x880, 0xff000000, 0xc0); in rtl8723e_dm_bt_set_sw_full_time_dac_swing()
396 struct ieee80211_hw *hw, bool dec_bt_pwr) in rtl8723e_dm_bt_set_fw_dec_bt_pwr() argument
398 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_set_fw_dec_bt_pwr()
412 rtl8723e_fill_h2c_cmd(hw, 0x21, 1, h2c_parameter); in rtl8723e_dm_bt_set_fw_dec_bt_pwr()
415 static void rtl8723e_dm_bt_set_fw_2_ant_hid(struct ieee80211_hw *hw, in rtl8723e_dm_bt_set_fw_2_ant_hid() argument
418 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_set_fw_2_ant_hid()
433 rtl8723e_fill_h2c_cmd(hw, 0x15, 1, h2c_parameter); in rtl8723e_dm_bt_set_fw_2_ant_hid()
436 static void rtl8723e_dm_bt_set_fw_tdma_ctrl(struct ieee80211_hw *hw, in rtl8723e_dm_bt_set_fw_tdma_ctrl() argument
440 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_set_fw_tdma_ctrl()
495 rtl8723e_fill_h2c_cmd(hw, 0x26, 1, h2c_parameter1); in rtl8723e_dm_bt_set_fw_tdma_ctrl()
500 rtl8723e_fill_h2c_cmd(hw, 0x14, 1, h2c_parameter); in rtl8723e_dm_bt_set_fw_tdma_ctrl()
503 static void rtl8723e_dm_bt_set_fw_ignore_wlan_act(struct ieee80211_hw *hw, in rtl8723e_dm_bt_set_fw_ignore_wlan_act() argument
506 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_set_fw_ignore_wlan_act()
523 rtl8723e_fill_h2c_cmd(hw, 0x25, 1, h2c_parameter); in rtl8723e_dm_bt_set_fw_ignore_wlan_act()
526 static void rtl8723e_dm_bt_set_fw_tra_tdma_ctrl(struct ieee80211_hw *hw, in rtl8723e_dm_bt_set_fw_tra_tdma_ctrl() argument
530 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_set_fw_tra_tdma_ctrl()
531 struct rtl_hal *rtlhal = rtl_hal(rtl_priv(hw)); in rtl8723e_dm_bt_set_fw_tra_tdma_ctrl()
577 rtl8723e_fill_h2c_cmd(hw, 0x33, 2, h2c_parameter); in rtl8723e_dm_bt_set_fw_tra_tdma_ctrl()
580 static void rtl8723e_dm_bt_set_fw_dac_swing_level(struct ieee80211_hw *hw, in rtl8723e_dm_bt_set_fw_dac_swing_level() argument
583 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_set_fw_dac_swing_level()
592 rtl8723e_fill_h2c_cmd(hw, 0x29, 1, h2c_parameter); in rtl8723e_dm_bt_set_fw_dac_swing_level()
595 static void rtl8723e_dm_bt_set_fw_bt_hid_info(struct ieee80211_hw *hw, in rtl8723e_dm_bt_set_fw_bt_hid_info() argument
598 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_set_fw_bt_hid_info()
611 rtl8723e_fill_h2c_cmd(hw, 0x24, 1, h2c_parameter); in rtl8723e_dm_bt_set_fw_bt_hid_info()
614 static void rtl8723e_dm_bt_set_fw_bt_retry_index(struct ieee80211_hw *hw, in rtl8723e_dm_bt_set_fw_bt_retry_index() argument
617 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_set_fw_bt_retry_index()
626 rtl8723e_fill_h2c_cmd(hw, 0x23, 1, h2c_parameter); in rtl8723e_dm_bt_set_fw_bt_retry_index()
629 static void rtl8723e_dm_bt_set_fw_wlan_act(struct ieee80211_hw *hw, in rtl8723e_dm_bt_set_fw_wlan_act() argument
632 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_set_fw_wlan_act()
647 rtl8723e_fill_h2c_cmd(hw, 0x22, 1, h2c_parameter_hi); in rtl8723e_dm_bt_set_fw_wlan_act()
649 rtl8723e_fill_h2c_cmd(hw, 0x11, 1, h2c_parameter_lo); in rtl8723e_dm_bt_set_fw_wlan_act()
652 void rtl8723e_dm_bt_set_bt_dm(struct ieee80211_hw *hw, in rtl8723e_dm_bt_set_bt_dm() argument
655 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_set_bt_dm()
662 rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_FW_PSMODE_STATUS, in rtl8723e_dm_bt_set_bt_dm()
664 rtlpriv->cfg->ops->get_hw_reg(hw, HW_VAR_FWLPS_RF_ON, in rtl8723e_dm_bt_set_bt_dm()
782 rtl8723e_dm_bt_set_fw_ignore_wlan_act(hw, true); in rtl8723e_dm_bt_set_bt_dm()
789 rtl8723e_btdm_coex_all_off(hw); in rtl8723e_dm_bt_set_bt_dm()
793 rtl8723e_dm_bt_reject_ap_aggregated_packet(hw, btdm->reject_aggre_pkt); in rtl8723e_dm_bt_set_bt_dm()
796 dm_bt_set_sw_penalty_tx_rate_adapt(hw, BT_TX_RATE_ADAPTIVE_LOW_PENALTY); in rtl8723e_dm_bt_set_bt_dm()
798 dm_bt_set_sw_penalty_tx_rate_adapt(hw, in rtl8723e_dm_bt_set_bt_dm()
802 rtl8723e_dm_bt_set_sw_rf_rx_lpf_corner(hw, in rtl8723e_dm_bt_set_bt_dm()
805 rtl8723e_dm_bt_set_sw_rf_rx_lpf_corner(hw, in rtl8723e_dm_bt_set_bt_dm()
809 rtl8723e_dm_bt_agc_table(hw, BT_AGCTABLE_ON); in rtl8723e_dm_bt_set_bt_dm()
811 rtl8723e_dm_bt_agc_table(hw, BT_AGCTABLE_OFF); in rtl8723e_dm_bt_set_bt_dm()
814 rtl8723e_dm_bt_bb_back_off_level(hw, BT_BB_BACKOFF_ON); in rtl8723e_dm_bt_set_bt_dm()
816 rtl8723e_dm_bt_bb_back_off_level(hw, BT_BB_BACKOFF_OFF); in rtl8723e_dm_bt_set_bt_dm()
818 rtl8723e_dm_bt_set_fw_bt_retry_index(hw, btdm->bt_retry_index); in rtl8723e_dm_bt_set_bt_dm()
820 rtl8723e_dm_bt_set_fw_dac_swing_level(hw, btdm->fw_dac_swing_lvl); in rtl8723e_dm_bt_set_bt_dm()
821 rtl8723e_dm_bt_set_fw_wlan_act(hw, btdm->wlan_act_hi, in rtl8723e_dm_bt_set_bt_dm()
824 rtl8723e_dm_bt_set_coex_table(hw, btdm->val_0x6c0, in rtl8723e_dm_bt_set_bt_dm()
826 rtl8723e_dm_bt_set_hw_pta_mode(hw, btdm->pta_on); in rtl8723e_dm_bt_set_bt_dm()
835 rtl8723e_dm_bt_set_fw_tra_tdma_ctrl(hw, btdm->tra_tdma_on, in rtl8723e_dm_bt_set_bt_dm()
838 rtl8723e_dm_bt_set_fw_tdma_ctrl(hw, false, btdm->tdma_ant, in rtl8723e_dm_bt_set_bt_dm()
843 rtl8723e_dm_bt_set_fw_ignore_wlan_act(hw, in rtl8723e_dm_bt_set_bt_dm()
846 rtl8723e_dm_bt_set_fw_3a(hw, 0x0, 0x0, 0x0, 0x8, 0x0); in rtl8723e_dm_bt_set_bt_dm()
849 rtl8723e_dm_bt_set_fw_bt_hid_info(hw, true); in rtl8723e_dm_bt_set_bt_dm()
850 rtl8723e_dm_bt_set_fw_2_ant_hid(hw, true, true); in rtl8723e_dm_bt_set_bt_dm()
853 rtl8723e_dm_bt_set_fw_bt_hid_info(hw, false); in rtl8723e_dm_bt_set_bt_dm()
854 rtl8723e_dm_bt_set_fw_2_ant_hid(hw, false, false); in rtl8723e_dm_bt_set_bt_dm()
857 rtl8723e_dm_bt_set_fw_ignore_wlan_act(hw, in rtl8723e_dm_bt_set_bt_dm()
860 rtl8723e_dm_bt_set_fw_3a(hw, 0x0, 0x0, 0x0, 0x8, 0x0); in rtl8723e_dm_bt_set_bt_dm()
863 rtl8723e_dm_bt_set_fw_tra_tdma_ctrl(hw, btdm->tra_tdma_on, in rtl8723e_dm_bt_set_bt_dm()
866 rtl8723e_dm_bt_set_fw_tdma_ctrl(hw, true, btdm->tdma_ant, in rtl8723e_dm_bt_set_bt_dm()
871 rtl8723e_dm_bt_set_fw_bt_hid_info(hw, false); in rtl8723e_dm_bt_set_bt_dm()
872 rtl8723e_dm_bt_set_fw_2_ant_hid(hw, false, false); in rtl8723e_dm_bt_set_bt_dm()
875 rtl8723e_dm_bt_set_fw_tra_tdma_ctrl(hw, btdm->tra_tdma_on, in rtl8723e_dm_bt_set_bt_dm()
878 rtl8723e_dm_bt_set_fw_tdma_ctrl(hw, false, btdm->tdma_ant, in rtl8723e_dm_bt_set_bt_dm()
883 rtl8723e_dm_bt_set_fw_ignore_wlan_act(hw, in rtl8723e_dm_bt_set_bt_dm()
885 rtl8723e_dm_bt_set_fw_3a(hw, btdm->ps_tdma_byte[0], in rtl8723e_dm_bt_set_bt_dm()
892 rtl8723e_dm_bt_set_fw_bt_hid_info(hw, false); in rtl8723e_dm_bt_set_bt_dm()
893 rtl8723e_dm_bt_set_fw_2_ant_hid(hw, false, false); in rtl8723e_dm_bt_set_bt_dm()
896 rtl8723e_dm_bt_set_fw_tra_tdma_ctrl(hw, btdm->tra_tdma_on, in rtl8723e_dm_bt_set_bt_dm()
899 rtl8723e_dm_bt_set_fw_tdma_ctrl(hw, false, btdm->tdma_ant, in rtl8723e_dm_bt_set_bt_dm()
904 rtl8723e_dm_bt_set_fw_ignore_wlan_act(hw, in rtl8723e_dm_bt_set_bt_dm()
907 rtl8723e_dm_bt_set_fw_3a(hw, 0x0, 0x0, 0x0, 0x8, 0x0); in rtl8723e_dm_bt_set_bt_dm()
918 rtl8723e_dm_bt_set_sw_full_time_dac_swing(hw, btdm->sw_dac_swing_on, in rtl8723e_dm_bt_set_bt_dm()
920 rtl8723e_dm_bt_set_fw_dec_bt_pwr(hw, btdm->dec_bt_pwr); in rtl8723e_dm_bt_set_bt_dm()
927 static u32 rtl8723e_dm_bt_tx_rx_couter_h(struct ieee80211_hw *hw) in rtl8723e_dm_bt_tx_rx_couter_h() argument
936 static u32 rtl8723e_dm_bt_tx_rx_couter_l(struct ieee80211_hw *hw) in rtl8723e_dm_bt_tx_rx_couter_l() argument
945 static u8 rtl8723e_dm_bt_bt_tx_rx_counter_level(struct ieee80211_hw *hw) in rtl8723e_dm_bt_bt_tx_rx_counter_level() argument
947 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_bt_tx_rx_counter_level()
951 bt_tx_rx_cnt = rtl8723e_dm_bt_tx_rx_couter_h(hw) in rtl8723e_dm_bt_bt_tx_rx_counter_level()
952 + rtl8723e_dm_bt_tx_rx_couter_l(hw); in rtl8723e_dm_bt_bt_tx_rx_counter_level()
988 static void rtl8723e_dm_bt_2_ant_hid_sco_esco(struct ieee80211_hw *hw) in rtl8723e_dm_bt_2_ant_hid_sco_esco() argument
990 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_2_ant_hid_sco_esco()
996 rtl8723e_dm_bt_btdm_structure_reload(hw, &btdm8723); in rtl8723e_dm_bt_2_ant_hid_sco_esco()
1002 bt_tx_rx_cnt_lvl = rtl8723e_dm_bt_bt_tx_rx_counter_level(hw); in rtl8723e_dm_bt_2_ant_hid_sco_esco()
1049 rtl8723e_dm_bt_check_coex_rssi_state(hw, 2, 47, 0); in rtl8723e_dm_bt_2_ant_hid_sco_esco()
1051 rtl8723e_dm_bt_check_coex_rssi_state1(hw, 2, 27, 0); in rtl8723e_dm_bt_2_ant_hid_sco_esco()
1139 if (rtl8723e_dm_bt_need_to_dec_bt_pwr(hw)) in rtl8723e_dm_bt_2_ant_hid_sco_esco()
1159 if (rtl8723e_dm_bt_is_coexist_state_changed(hw)) in rtl8723e_dm_bt_2_ant_hid_sco_esco()
1160 rtl8723e_dm_bt_set_bt_dm(hw, &btdm8723); in rtl8723e_dm_bt_2_ant_hid_sco_esco()
1164 static void rtl8723e_dm_bt_2_ant_ftp_a2dp(struct ieee80211_hw *hw) in rtl8723e_dm_bt_2_ant_ftp_a2dp() argument
1166 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_2_ant_ftp_a2dp()
1173 rtl8723e_dm_bt_btdm_structure_reload(hw, &btdm8723); in rtl8723e_dm_bt_2_ant_ftp_a2dp()
1179 bt_tx_rx_cnt_lvl = rtl8723e_dm_bt_bt_tx_rx_counter_level(hw); in rtl8723e_dm_bt_2_ant_ftp_a2dp()
1187 rtl8723e_dm_bt_check_coex_rssi_state(hw, 2, 37, 0); in rtl8723e_dm_bt_2_ant_ftp_a2dp()
1264 rtl8723e_dm_bt_check_coex_rssi_state(hw, 2, 47, 0); in rtl8723e_dm_bt_2_ant_ftp_a2dp()
1266 rtl8723e_dm_bt_check_coex_rssi_state1(hw, 2, 27, 0); in rtl8723e_dm_bt_2_ant_ftp_a2dp()
1354 if (rtl8723e_dm_bt_need_to_dec_bt_pwr(hw)) in rtl8723e_dm_bt_2_ant_ftp_a2dp()
1373 if (rtl8723e_dm_bt_is_coexist_state_changed(hw)) in rtl8723e_dm_bt_2_ant_ftp_a2dp()
1374 rtl8723e_dm_bt_set_bt_dm(hw, &btdm8723); in rtl8723e_dm_bt_2_ant_ftp_a2dp()
1378 static void rtl8723e_dm_bt_inq_page_monitor(struct ieee80211_hw *hw) in rtl8723e_dm_bt_inq_page_monitor() argument
1380 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_inq_page_monitor()
1412 static void rtl8723e_dm_bt_reset_action_profile_state(struct ieee80211_hw *hw) in rtl8723e_dm_bt_reset_action_profile_state() argument
1414 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_reset_action_profile_state()
1426 static void _rtl8723e_dm_bt_coexist_2_ant(struct ieee80211_hw *hw) in _rtl8723e_dm_bt_coexist_2_ant() argument
1428 struct rtl_priv *rtlpriv = rtl_priv(hw); in _rtl8723e_dm_bt_coexist_2_ant()
1434 _rtl8723_dm_bt_check_wifi_state(hw); in _rtl8723e_dm_bt_coexist_2_ant()
1446 rtl8723e_dm_bt_inq_page_monitor(hw); in _rtl8723e_dm_bt_coexist_2_ant()
1447 rtl8723e_dm_bt_reset_action_profile_state(hw); in _rtl8723e_dm_bt_coexist_2_ant()
1449 if (rtl8723e_dm_bt_is_2_ant_common_action(hw)) { in _rtl8723e_dm_bt_coexist_2_ant()
1466 rtl8723e_dm_bt_2_ant_hid_sco_esco(hw); in _rtl8723e_dm_bt_coexist_2_ant()
1477 rtl8723e_dm_bt_2_ant_ftp_a2dp(hw); in _rtl8723e_dm_bt_coexist_2_ant()
1487 rtl8723e_dm_bt_2_ant_hid_sco_esco(hw); in _rtl8723e_dm_bt_coexist_2_ant()
1492 static void _rtl8723e_dm_bt_coexist_1_ant(struct ieee80211_hw *hw) in _rtl8723e_dm_bt_coexist_1_ant() argument
1497 void rtl8723e_dm_bt_hw_coex_all_off_8723a(struct ieee80211_hw *hw) in rtl8723e_dm_bt_hw_coex_all_off_8723a() argument
1499 rtl8723e_dm_bt_set_coex_table(hw, 0x5a5aaaaa, 0xcc, 0x3); in rtl8723e_dm_bt_hw_coex_all_off_8723a()
1500 rtl8723e_dm_bt_set_hw_pta_mode(hw, true); in rtl8723e_dm_bt_hw_coex_all_off_8723a()
1503 void rtl8723e_dm_bt_fw_coex_all_off_8723a(struct ieee80211_hw *hw) in rtl8723e_dm_bt_fw_coex_all_off_8723a() argument
1505 rtl8723e_dm_bt_set_fw_ignore_wlan_act(hw, false); in rtl8723e_dm_bt_fw_coex_all_off_8723a()
1506 rtl8723e_dm_bt_set_fw_3a(hw, 0x0, 0x0, 0x0, 0x8, 0x0); in rtl8723e_dm_bt_fw_coex_all_off_8723a()
1507 rtl8723e_dm_bt_set_fw_2_ant_hid(hw, false, false); in rtl8723e_dm_bt_fw_coex_all_off_8723a()
1508 rtl8723e_dm_bt_set_fw_tra_tdma_ctrl(hw, false, TDMA_2ANT, in rtl8723e_dm_bt_fw_coex_all_off_8723a()
1510 rtl8723e_dm_bt_set_fw_tdma_ctrl(hw, false, TDMA_2ANT, TDMA_NAV_OFF, in rtl8723e_dm_bt_fw_coex_all_off_8723a()
1512 rtl8723e_dm_bt_set_fw_dac_swing_level(hw, 0); in rtl8723e_dm_bt_fw_coex_all_off_8723a()
1513 rtl8723e_dm_bt_set_fw_bt_hid_info(hw, false); in rtl8723e_dm_bt_fw_coex_all_off_8723a()
1514 rtl8723e_dm_bt_set_fw_bt_retry_index(hw, 2); in rtl8723e_dm_bt_fw_coex_all_off_8723a()
1515 rtl8723e_dm_bt_set_fw_wlan_act(hw, 0x10, 0x10); in rtl8723e_dm_bt_fw_coex_all_off_8723a()
1516 rtl8723e_dm_bt_set_fw_dec_bt_pwr(hw, false); in rtl8723e_dm_bt_fw_coex_all_off_8723a()
1519 void rtl8723e_dm_bt_sw_coex_all_off_8723a(struct ieee80211_hw *hw) in rtl8723e_dm_bt_sw_coex_all_off_8723a() argument
1521 rtl8723e_dm_bt_agc_table(hw, BT_AGCTABLE_OFF); in rtl8723e_dm_bt_sw_coex_all_off_8723a()
1522 rtl8723e_dm_bt_bb_back_off_level(hw, BT_BB_BACKOFF_OFF); in rtl8723e_dm_bt_sw_coex_all_off_8723a()
1523 rtl8723e_dm_bt_reject_ap_aggregated_packet(hw, false); in rtl8723e_dm_bt_sw_coex_all_off_8723a()
1525 dm_bt_set_sw_penalty_tx_rate_adapt(hw, BT_TX_RATE_ADAPTIVE_NORMAL); in rtl8723e_dm_bt_sw_coex_all_off_8723a()
1526 rtl8723e_dm_bt_set_sw_rf_rx_lpf_corner(hw, BT_RF_RX_LPF_CORNER_RESUME); in rtl8723e_dm_bt_sw_coex_all_off_8723a()
1527 rtl8723e_dm_bt_set_sw_full_time_dac_swing(hw, false, 0xc0); in rtl8723e_dm_bt_sw_coex_all_off_8723a()
1530 static void rtl8723e_dm_bt_query_bt_information(struct ieee80211_hw *hw) in rtl8723e_dm_bt_query_bt_information() argument
1532 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_query_bt_information()
1542 rtl8723e_fill_h2c_cmd(hw, 0x38, 1, h2c_parameter); in rtl8723e_dm_bt_query_bt_information()
1545 static void rtl8723e_dm_bt_bt_hw_counters_monitor(struct ieee80211_hw *hw) in rtl8723e_dm_bt_bt_hw_counters_monitor() argument
1547 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_bt_hw_counters_monitor()
1584 static void rtl8723e_dm_bt_bt_enable_disable_check(struct ieee80211_hw *hw) in rtl8723e_dm_bt_bt_enable_disable_check() argument
1586 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_bt_enable_disable_check()
1637 void rtl8723e_dm_bt_coexist_8723(struct ieee80211_hw *hw) in rtl8723e_dm_bt_coexist_8723() argument
1639 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_coexist_8723()
1641 rtl8723e_dm_bt_query_bt_information(hw); in rtl8723e_dm_bt_coexist_8723()
1642 rtl8723e_dm_bt_bt_hw_counters_monitor(hw); in rtl8723e_dm_bt_coexist_8723()
1643 rtl8723e_dm_bt_bt_enable_disable_check(hw); in rtl8723e_dm_bt_coexist_8723()
1648 _rtl8723e_dm_bt_coexist_2_ant(hw); in rtl8723e_dm_bt_coexist_8723()
1652 _rtl8723e_dm_bt_coexist_1_ant(hw); in rtl8723e_dm_bt_coexist_8723()
1655 if (!rtl8723e_dm_bt_is_same_coexist_state(hw)) { in rtl8723e_dm_bt_coexist_8723()
1669 static void rtl8723e_dm_bt_parse_bt_info(struct ieee80211_hw *hw, in rtl8723e_dm_bt_parse_bt_info() argument
1672 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl8723e_dm_bt_parse_bt_info()
1714 void rtl_8723e_c2h_command_handle(struct ieee80211_hw *hw) in rtl_8723e_c2h_command_handle() argument
1716 struct rtl_priv *rtlpriv = rtl_priv(hw); in rtl_8723e_c2h_command_handle()
1768 rtl8723e_dm_bt_parse_bt_info(hw, ptmp_buf, c2h_event.cmd_len); in rtl_8723e_c2h_command_handle()