wlan: Dynamic configuration of VHT support in 2.4 GHz band
Providing fix for allowing the user to select VHT support through
INI file in 2.4 GHz band.
Change-Id: Ib80159f73b57f6e62ca1077135f16a8c54f54866
CRs-Fixed: 492379
diff --git a/CORE/SME/src/csr/csrApiRoam.c b/CORE/SME/src/csr/csrApiRoam.c
index a4d580d..28acdc7 100644
--- a/CORE/SME/src/csr/csrApiRoam.c
+++ b/CORE/SME/src/csr/csrApiRoam.c
@@ -1603,6 +1603,7 @@
pMac->roam.configParam.nVhtChannelWidth = pParam->nVhtChannelWidth;
pMac->roam.configParam.txBFEnable= pParam->enableTxBF;
pMac->roam.configParam.txBFCsnValue = pParam->txBFCsnValue;
+ pMac->roam.configParam.enableVhtFor24GHz = pParam->enableVhtFor24GHz;
#endif
pMac->roam.configParam.txLdpcEnable = pParam->enableTxLdpc;
}
@@ -11740,6 +11741,7 @@
tCsrRoamSession *pSession = CSR_GET_SESSION( pMac, sessionId );
tANI_U32 dwTmp;
tANI_U8 wpaRsnIE[DOT11F_IE_RSN_MAX_LEN]; //RSN MAX is bigger than WPA MAX
+ tANI_U32 ucDot11Mode = 0;
if(!pSession)
{
@@ -11804,7 +11806,15 @@
palCopyMemory( pMac->hHdd, pBuf, &dwTmp, sizeof(tSirBssType) );
pBuf += sizeof(tSirBssType);
// dot11mode
- *pBuf = (tANI_U8)csrTranslateToWNICfgDot11Mode( pMac, pSession->bssParams.uCfgDot11Mode );
+ ucDot11Mode = csrTranslateToWNICfgDot11Mode( pMac, pSession->bssParams.uCfgDot11Mode );
+ if (pBssDescription->channelId <= 14 &&
+ FALSE == pMac->roam.configParam.enableVhtFor24GHz &&
+ WNI_CFG_DOT11_MODE_11AC == ucDot11Mode)
+ {
+ //Need to disable VHT operation in 2.4 GHz band
+ ucDot11Mode = WNI_CFG_DOT11_MODE_11N;
+ }
+ *pBuf = (tANI_U8)ucDot11Mode;
pBuf++;
//Persona
*pBuf = (tANI_U8)pProfile->csrPersona;