OSDN Git Service

rtlwifi: btcoex: 21a 1ant: shorten wifi slot when connected scan
authorYan-Hsuan Chuang <yhchuang@realtek.com>
Thu, 11 May 2017 23:24:31 +0000 (18:24 -0500)
committerKalle Valo <kvalo@codeaurora.org>
Thu, 18 May 2017 14:08:25 +0000 (17:08 +0300)
If the wifi is scanning when connected, it is better if the slot
is shortened and the priority is increased. Otherwise bt a2dp may have
low quality.

Signed-off-by: Yan-Hsuan Chuang <yhchuang@realtek.com>
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Cc: Pkshih <pkshih@realtek.com>
Cc: Birming Chiu <birming@realtek.com>
Cc: Shaofu <shaofu@realtek.com>
Cc: Steven Ting <steventing@realtek.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtc8821a1ant.c

index 55cde3d..13d8ac2 100644 (file)
@@ -1730,23 +1730,23 @@ void btc8821a1ant_action_wifi_connected_scan(struct btc_coexist *btcoexist)
 
        /* tdma and coex table */
        if (BT_8821A_1ANT_BT_STATUS_ACL_BUSY == coex_dm->bt_status) {
-               if (bt_link_info->a2dp_exist && bt_link_info->pan_exist) {
-                       btc8821a1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 22);
+               if (bt_link_info->a2dp_exist) {
+                       btc8821a1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 14);
                        btc8821a1ant_coex_table_with_type(btcoexist,
                                                          NORMAL_EXEC, 1);
                } else {
-               btc8821a1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 20);
-               btc8821a1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 1);
-       }
-       } else if ((BT_8821A_1ANT_BT_STATUS_SCO_BUSY ==
-                   coex_dm->bt_status) ||
-                  (BT_8821A_1ANT_BT_STATUS_ACL_SCO_BUSY ==
-                   coex_dm->bt_status)) {
+                       btc8821a1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 20);
+                       btc8821a1ant_coex_table_with_type(btcoexist,
+                                                         NORMAL_EXEC, 4);
+               }
+       } else if ((coex_dm->bt_status == BT_8821A_1ANT_BT_STATUS_SCO_BUSY) ||
+                  (coex_dm->bt_status ==
+                   BT_8821A_1ANT_BT_STATUS_ACL_SCO_BUSY)) {
                btc8821a1ant_act_bt_sco_hid_only_busy(btcoexist,
                        BT_8821A_1ANT_WIFI_STATUS_CONNECTED_SCAN);
        } else {
-               btc8821a1ant_ps_tdma(btcoexist, NORMAL_EXEC, true, 20);
-               btc8821a1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 1);
+               btc8821a1ant_ps_tdma(btcoexist, NORMAL_EXEC, false, 8);
+               btc8821a1ant_coex_table_with_type(btcoexist, NORMAL_EXEC, 2);
        }
 }