rtlwifi: btcoex: 21a 1ant: If wifi only, do not initiate coex mechanism
authorYan-Hsuan Chuang <yhchuang@realtek.com>
Mon, 10 Apr 2017 16:23:05 +0000 (11:23 -0500)
committerKalle Valo <kvalo@codeaurora.org>
Thu, 13 Apr 2017 14:11:01 +0000 (17:11 +0300)
If the device has wifi mode only, there is no need to initiate the
hardware for wifi and bt coexistence, so just return to avoid it.

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 05e33d38d49c861e0e5a32224d854172e1a3fc13..86eab6a4ada2c98b1e5f93e2b1a44b40f7d7f99e 100644 (file)
@@ -1990,7 +1990,7 @@ static void btc8821a1ant_init_coex_dm(struct btc_coexist *btcoexist)
 }
 
 static void btc8821a1ant_init_hw_config(struct btc_coexist *btcoexist,
-                                       bool back_up)
+                                       bool back_up, bool wifi_only)
 {
        struct rtl_priv *rtlpriv = btcoexist->adapter;
        u8 u1_tmp = 0;
@@ -1999,6 +1999,9 @@ static void btc8821a1ant_init_hw_config(struct btc_coexist *btcoexist,
        RT_TRACE(rtlpriv, COMP_BT_COEXIST, DBG_LOUD,
                 "[BTCoex], 1Ant Init HW Config!!\n");
 
+       if (wifi_only)
+               return;
+
        if (back_up) {
                coex_dm->backup_arfr_cnt1 = btcoexist->btc_read_4byte(btcoexist,
                                                                      0x430);
@@ -2039,9 +2042,9 @@ static void btc8821a1ant_init_hw_config(struct btc_coexist *btcoexist,
 /**************************************************************
  * extern function start with ex_btc8821a1ant_
  **************************************************************/
-void ex_btc8821a1ant_init_hwconfig(struct btc_coexist *btcoexist)
+void ex_btc8821a1ant_init_hwconfig(struct btc_coexist *btcoexist, bool wifionly)
 {
-       btc8821a1ant_init_hw_config(btcoexist, true);
+       btc8821a1ant_init_hw_config(btcoexist, true, wifionly);
 }
 
 void ex_btc8821a1ant_init_coex_dm(struct btc_coexist *btcoexist)
@@ -2783,7 +2786,7 @@ void ex_btc8821a1ant_pnp_notify(struct btc_coexist *btcoexist, u8 pnp_state)
                RT_TRACE(rtlpriv, COMP_BT_COEXIST, DBG_LOUD,
                         "[BTCoex], Pnp notify to WAKE UP\n");
                btcoexist->stop_coex_dm = false;
-               btc8821a1ant_init_hw_config(btcoexist, false);
+               btc8821a1ant_init_hw_config(btcoexist, false, false);
                btc8821a1ant_init_coex_dm(btcoexist);
                btc8821a1ant_query_bt_info(btcoexist);
        }