|
@@ -309,6 +309,43 @@ static void btc8723b2ant_monitor_bt_ctr(struct btc_coexist *btcoexist)
|
|
|
btcoexist->btc_write_1byte(btcoexist, 0x76e, 0xc);
|
|
|
}
|
|
|
|
|
|
+static void btc8723b2ant_monitor_wifi_ctr(struct btc_coexist *btcoexist)
|
|
|
+{
|
|
|
+ if (coex_sta->under_ips) {
|
|
|
+ coex_sta->crc_ok_cck = 0;
|
|
|
+ coex_sta->crc_ok_11g = 0;
|
|
|
+ coex_sta->crc_ok_11n = 0;
|
|
|
+ coex_sta->crc_ok_11n_agg = 0;
|
|
|
+
|
|
|
+ coex_sta->crc_err_cck = 0;
|
|
|
+ coex_sta->crc_err_11g = 0;
|
|
|
+ coex_sta->crc_err_11n = 0;
|
|
|
+ coex_sta->crc_err_11n_agg = 0;
|
|
|
+ } else {
|
|
|
+ coex_sta->crc_ok_cck =
|
|
|
+ btcoexist->btc_read_4byte(btcoexist, 0xf88);
|
|
|
+ coex_sta->crc_ok_11g =
|
|
|
+ btcoexist->btc_read_2byte(btcoexist, 0xf94);
|
|
|
+ coex_sta->crc_ok_11n =
|
|
|
+ btcoexist->btc_read_2byte(btcoexist, 0xf90);
|
|
|
+ coex_sta->crc_ok_11n_agg =
|
|
|
+ btcoexist->btc_read_2byte(btcoexist, 0xfb8);
|
|
|
+
|
|
|
+ coex_sta->crc_err_cck =
|
|
|
+ btcoexist->btc_read_4byte(btcoexist, 0xf84);
|
|
|
+ coex_sta->crc_err_11g =
|
|
|
+ btcoexist->btc_read_2byte(btcoexist, 0xf96);
|
|
|
+ coex_sta->crc_err_11n =
|
|
|
+ btcoexist->btc_read_2byte(btcoexist, 0xf92);
|
|
|
+ coex_sta->crc_err_11n_agg =
|
|
|
+ btcoexist->btc_read_2byte(btcoexist, 0xfba);
|
|
|
+ }
|
|
|
+
|
|
|
+ /* reset counter */
|
|
|
+ btcoexist->btc_write_1byte_bitmask(btcoexist, 0xf16, 0x1, 0x1);
|
|
|
+ btcoexist->btc_write_1byte_bitmask(btcoexist, 0xf16, 0x1, 0x0);
|
|
|
+}
|
|
|
+
|
|
|
static void btc8723b2ant_query_bt_info(struct btc_coexist *btcoexist)
|
|
|
{
|
|
|
struct rtl_priv *rtlpriv = btcoexist->adapter;
|
|
@@ -2875,6 +2912,9 @@ void ex_btc8723b2ant_periodical(struct btc_coexist *btcoexist)
|
|
|
#if (BT_AUTO_REPORT_ONLY_8723B_2ANT == 0)
|
|
|
btc8723b2ant_query_bt_info(btcoexist);
|
|
|
#else
|
|
|
+ btc8723b2ant_monitor_bt_ctr(btcoexist);
|
|
|
+ btc8723b2ant_monitor_wifi_ctr(btcoexist);
|
|
|
+
|
|
|
if (btc8723b2ant_is_wifi_status_changed(btcoexist) ||
|
|
|
coex_dm->auto_tdma_adjust)
|
|
|
btc8723b2ant_run_coexist_mechanism(btcoexist);
|