mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-15 01:01:56 -04:00
qcacld-3.0: Add support to allow user select preferred band for SAP
Add enum QDF_MCC_TO_SCC_WITH_PREFERRED_BAND(6) for this. If ini gWlanMccToSccSwitchMode is selected to QDF_MCC_TO_SCC_WITH_PREFERRED_BAND(6) then following will be the behaviour of STA+SAP concurrency. 1. If second interface(SAP/STA) comes in same band as first interface(STA/SAP) respectively then force SCC irrespective of channel. 2. If second interface(SAP/STA) comes in other band as first interface(STA/SAP) then dont force SCC allow interband MCC or DBS based on DBS capability. Allow interband MCC but not intraband MCC. Change-Id: I91d41b4b0306ed4e362b5bcab9538f5fd5feea7d CRs-Fixed: 2260672
This commit is contained in:
parent
ef742dc73c
commit
b816ce8e7c
2 changed files with 8 additions and 15 deletions
|
|
@ -3082,6 +3082,8 @@ enum hdd_dot11_mode {
|
|||
* fav channel(s)without SAP restart.
|
||||
* If gWlainMccToSccSwitchMode = 5: Force switch without SAP restart.MCC allowed
|
||||
* in exceptional cases.
|
||||
* If gWlainMccToSccSwitchMode = 6: Force Switch without SAP restart only in
|
||||
user preffered band.
|
||||
* Related: None.
|
||||
*
|
||||
* Supported Feature: Concurrency
|
||||
|
|
@ -3093,7 +3095,7 @@ enum hdd_dot11_mode {
|
|||
#define CFG_WLAN_MCC_TO_SCC_SWITCH_MODE "gWlanMccToSccSwitchMode"
|
||||
#define CFG_WLAN_MCC_TO_SCC_SWITCH_MODE_MIN (QDF_MCC_TO_SCC_SWITCH_DISABLE)
|
||||
#define CFG_WLAN_MCC_TO_SCC_SWITCH_MODE_MAX \
|
||||
(QDF_MCC_TO_SCC_SWITCH_FORCE_PREFERRED_WITHOUT_DISCONNECTION)
|
||||
(QDF_MCC_TO_SCC_SWITCH_MAX - 1)
|
||||
#define CFG_WLAN_MCC_TO_SCC_SWITCH_MODE_DEFAULT (QDF_MCC_TO_SCC_SWITCH_DISABLE)
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -1103,13 +1103,7 @@ uint16_t csr_check_concurrent_channel_overlap(tpAniSirGlobal mac_ctx,
|
|||
policy_mgr_is_dbs_enable(mac_ctx->psoc));
|
||||
|
||||
if (intf_ch && sap_ch != intf_ch &&
|
||||
cc_switch_mode != QDF_MCC_TO_SCC_SWITCH_FORCE &&
|
||||
cc_switch_mode !=
|
||||
QDF_MCC_TO_SCC_SWITCH_FORCE_WITHOUT_DISCONNECTION &&
|
||||
cc_switch_mode !=
|
||||
QDF_MCC_TO_SCC_SWITCH_WITH_FAVORITE_CHANNEL &&
|
||||
cc_switch_mode !=
|
||||
QDF_MCC_TO_SCC_SWITCH_FORCE_PREFERRED_WITHOUT_DISCONNECTION) {
|
||||
!policy_mgr_is_force_scc(mac_ctx->psoc)) {
|
||||
sap_lfreq = sap_cfreq - sap_hbw;
|
||||
sap_hfreq = sap_cfreq + sap_hbw;
|
||||
intf_lfreq = intf_cfreq - intf_hbw;
|
||||
|
|
@ -1129,15 +1123,12 @@ uint16_t csr_check_concurrent_channel_overlap(tpAniSirGlobal mac_ctx,
|
|||
intf_ch = 0;
|
||||
} else if (intf_ch && sap_ch != intf_ch &&
|
||||
((cc_switch_mode == QDF_MCC_TO_SCC_SWITCH_FORCE) ||
|
||||
(cc_switch_mode ==
|
||||
QDF_MCC_TO_SCC_SWITCH_FORCE_WITHOUT_DISCONNECTION) ||
|
||||
(cc_switch_mode ==
|
||||
QDF_MCC_TO_SCC_SWITCH_WITH_FAVORITE_CHANNEL) ||
|
||||
(cc_switch_mode ==
|
||||
QDF_MCC_TO_SCC_SWITCH_FORCE_PREFERRED_WITHOUT_DISCONNECTION))) {
|
||||
policy_mgr_is_force_scc(mac_ctx->psoc))) {
|
||||
if (!((intf_ch <= 14 && sap_ch <= 14) ||
|
||||
(intf_ch > 14 && sap_ch > 14))) {
|
||||
if (policy_mgr_is_dbs_enable(mac_ctx->psoc))
|
||||
if (policy_mgr_is_dbs_enable(mac_ctx->psoc) ||
|
||||
cc_switch_mode ==
|
||||
QDF_MCC_TO_SCC_WITH_PREFERRED_BAND)
|
||||
intf_ch = 0;
|
||||
} else if (cc_switch_mode ==
|
||||
QDF_MCC_TO_SCC_SWITCH_WITH_FAVORITE_CHANNEL) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue