rtlwifi: btcoex: Add power_on_setting routine
authorPing-Ke Shih <pkshih@realtek.com>
Wed, 17 Jan 2018 06:15:26 +0000 (14:15 +0800)
committerKalle Valo <kvalo@codeaurora.org>
Wed, 17 Jan 2018 15:09:15 +0000 (17:09 +0200)
After mac power-on sequence, wifi will start to work so notify btcoex the
event to configure registers especially related to antenna. This will not
only help to assign antenna but also to yield better user experience.

Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtcoutsrc.h
drivers/net/wireless/realtek/rtlwifi/btcoexist/rtl_btc.c
drivers/net/wireless/realtek/rtlwifi/btcoexist/rtl_btc.h
drivers/net/wireless/realtek/rtlwifi/wifi.h

index ea12b9d63a735ef6efd0dc7aa5921b139b54dfeb..bc523af7ef881bed8ee29c923a9f0ff6c5618353 100644 (file)
@@ -608,6 +608,7 @@ extern struct btc_coexist gl_bt_coexist;
 
 bool exhalbtc_initlize_variables(void);
 bool exhalbtc_bind_bt_coex_withadapter(void *adapter);
+void exhalbtc_power_on_setting(struct btc_coexist *btcoexist);
 void exhalbtc_init_hw_config(struct btc_coexist *btcoexist, bool wifi_only);
 void exhalbtc_init_coex_dm(struct btc_coexist *btcoexist);
 void exhalbtc_ips_notify(struct btc_coexist *btcoexist, u8 type);
index 4d9e33078d4fd4aaf5d5a11e8dd4fd5d2c86943d..9e3623b0423cd2f7ef80d51dc30ece08fbb1df7b 100644 (file)
@@ -32,6 +32,7 @@
 static struct rtl_btc_ops rtl_btc_operation = {
        .btc_init_variables = rtl_btc_init_variables,
        .btc_init_hal_vars = rtl_btc_init_hal_vars,
+       .btc_power_on_setting = rtl_btc_power_on_setting,
        .btc_init_hw_config = rtl_btc_init_hw_config,
        .btc_ips_notify = rtl_btc_ips_notify,
        .btc_lps_notify = rtl_btc_lps_notify,
@@ -116,6 +117,11 @@ void rtl_btc_init_hal_vars(struct rtl_priv *rtlpriv)
         */
 }
 
+void rtl_btc_power_on_setting(struct rtl_priv *rtlpriv)
+{
+       exhalbtc_power_on_setting(&gl_bt_coexist);
+}
+
 void rtl_btc_init_hw_config(struct rtl_priv *rtlpriv)
 {
        u8 bt_exist;
index 40f1ce8c8a06638b6216a38394c4ba01615c9afa..9becfa59407d45a885219d08c1727234eaa31563 100644 (file)
@@ -29,6 +29,7 @@
 
 void rtl_btc_init_variables(struct rtl_priv *rtlpriv);
 void rtl_btc_init_hal_vars(struct rtl_priv *rtlpriv);
+void rtl_btc_power_on_setting(struct rtl_priv *rtlpriv);
 void rtl_btc_init_hw_config(struct rtl_priv *rtlpriv);
 void rtl_btc_ips_notify(struct rtl_priv *rtlpriv, u8 type);
 void rtl_btc_lps_notify(struct rtl_priv *rtlpriv, u8 type);
index 941694060f483073523ec307a791b6e4cae5eee3..b27dbe10b1630bea2a4b6f04afb7458c429b57c1 100644 (file)
@@ -2557,6 +2557,7 @@ struct bt_coexist_info {
 struct rtl_btc_ops {
        void (*btc_init_variables) (struct rtl_priv *rtlpriv);
        void (*btc_init_hal_vars) (struct rtl_priv *rtlpriv);
+       void (*btc_power_on_setting)(struct rtl_priv *rtlpriv);
        void (*btc_init_hw_config) (struct rtl_priv *rtlpriv);
        void (*btc_ips_notify) (struct rtl_priv *rtlpriv, u8 type);
        void (*btc_lps_notify)(struct rtl_priv *rtlpriv, u8 type);