qcacld-3.0: Add ini to support BT SCO-WLAN coex

Add ini gBtScoAllowWlan2GScan to support BT SCO-WLAN coex.
Using this ini can control whether allow wlan 2g scan or not
when BT SCO connection is on.

Change-Id: Ia63b1ff92e75937487827c34bca1d2e1c289962d
CRs-Fixed: 2464679
This commit is contained in:
hqu
2019-06-04 11:24:11 +08:00
committed by nshrivas
parent 1a7b71af4f
commit 1dd504ae34
4 changed files with 40 additions and 1 deletions

View File

@@ -60,6 +60,8 @@
* @bt_interference_high_ll: Lower limit of high level BT interference
* @bt_interference_high_ul: Upper limit of high level BT interference
* @btc_mpta_helper_enable: Enable/Disable tri-radio MPTA helper
* @bt_sco_allow_wlan_2g_scan: Enable/Disble wlan 2g scan when
* BT SCO connection is on
*/
struct wlan_fwol_coex_config {
uint8_t btc_mode;
@@ -76,6 +78,7 @@ struct wlan_fwol_coex_config {
#ifdef FEATURE_MPTA_HELPER
bool btc_mpta_helper_enable;
#endif
bool bt_sco_allow_wlan_2g_scan;
};
#define FWOL_THERMAL_LEVEL_MAX 4

View File

@@ -77,6 +77,8 @@ fwol_init_coex_config_in_cfg(struct wlan_objmgr_psoc *psoc,
coex_config->bt_interference_high_ul =
cfg_get(psoc, CFG_BT_INTERFERENCE_HIGH_UL);
fwol_mpta_helper_config_get(psoc, coex_config);
coex_config->bt_sco_allow_wlan_2g_scan =
cfg_get(psoc, CFG_BT_SCO_ALLOW_WLAN_2G_SCAN);
}
static void

View File

@@ -260,6 +260,29 @@
#define COEX_MPTA_HELPER_CFG
#endif
/*
* <ini>
* gBtScoAllowWlan2GScan - Allow wlan 2g scan when BT SCO connection is on
* @Min: 0
* @Max: 1
* @Default: 1
*
* 0 - Disable
* 1 - Enable
*
* This ini is used to enable or disable wlan 2g scan
* when BT SCO connection is on.
*
*
* Usage: External
*
* </ini>
*/
#define CFG_BT_SCO_ALLOW_WLAN_2G_SCAN CFG_INI_BOOL( \
"gBtScoAllowWlan2GScan", \
1, \
"Bt Sco Allow Wlan 2G Scan")
#define CFG_COEX_ALL \
CFG(CFG_BTC_MODE) \
CFG(CFG_ANTENNA_ISOLATION) \
@@ -272,5 +295,6 @@
CFG(CFG_BT_INTERFERENCE_MEDIUM_UL) \
CFG(CFG_BT_INTERFERENCE_HIGH_LL) \
CFG(CFG_BT_INTERFERENCE_HIGH_UL) \
COEX_MPTA_HELPER_CFG
COEX_MPTA_HELPER_CFG \
CFG(CFG_BT_SCO_ALLOW_WLAN_2G_SCAN)
#endif

View File

@@ -4801,6 +4801,16 @@ static int hdd_send_coex_config_params(struct hdd_context *hdd_ctx,
if (wlan_hdd_mpta_helper_enable(&coex_cfg_params, &config))
goto err;
coex_cfg_params.config_type =
WMI_COEX_CONFIG_BT_SCO_ALLOW_WLAN_2G_SCAN;
coex_cfg_params.config_arg1 = config.bt_sco_allow_wlan_2g_scan;
status = sme_send_coex_config_cmd(&coex_cfg_params);
if (QDF_IS_STATUS_ERROR(status)) {
hdd_err("Failed to send coex BT sco allow wlan 2g scan");
goto err;
}
return 0;
err:
return -EINVAL;