Merge "wlan: IBSS: update HT secondary channel offset from beacon in pStaDs"
diff --git a/CORE/HDD/src/wlan_hdd_assoc.c b/CORE/HDD/src/wlan_hdd_assoc.c
index b3a5419..2b49a75 100644
--- a/CORE/HDD/src/wlan_hdd_assoc.c
+++ b/CORE/HDD/src/wlan_hdd_assoc.c
@@ -1088,13 +1088,16 @@
}
}
if ((TRUE == pHddCtx->cfg_ini->fEnableTDLSSupport) &&
- (TRUE == sme_IsFeatureSupportedByFW(TDLS))) {
+ (TRUE == sme_IsFeatureSupportedByFW(TDLS)) &&
+ (eTDLS_SUPPORT_ENABLED == pHddCtx->tdls_mode_last ||
+ eTDLS_SUPPORT_EXPLICIT_TRIGGER_ONLY ==
+ pHddCtx->tdls_mode_last)) {
if (pAdapter->device_mode != WLAN_HDD_INFRA_STATION)
/* Enable TDLS support Once P2P session ends since
* upond detection of concurrency TDLS would be disabled
*/
- wlan_hdd_tdls_set_mode(pHddCtx, eTDLS_SUPPORT_ENABLED,
- FALSE);
+ wlan_hdd_tdls_set_mode(pHddCtx, pHddCtx->tdls_mode_last,
+ FALSE);
}
//If the Device Mode is Station
// and the P2P Client is Connected
diff --git a/CORE/HDD/src/wlan_hdd_cfg80211.c b/CORE/HDD/src/wlan_hdd_cfg80211.c
index 5f90428..1a45df7 100644
--- a/CORE/HDD/src/wlan_hdd_cfg80211.c
+++ b/CORE/HDD/src/wlan_hdd_cfg80211.c
@@ -10015,8 +10015,6 @@
if(is_p2p_scan && (pScanResult->ssId.ssId != NULL) &&
!vos_mem_compare( pScanResult->ssId.ssId, "DIRECT-", 7) )
{
- hddLog(VOS_TRACE_LEVEL_INFO, FL(" Non P2P BSS skipped: =%s:"),
- pScanResult->ssId.ssId);
pScanResult = sme_ScanResultGetNext(hHal, pResult);
continue; //Skip the non p2p bss entries
}
@@ -10629,10 +10627,6 @@
vos_mem_zero( &scanRequest, sizeof(scanRequest));
- hddLog(VOS_TRACE_LEVEL_INFO, "scan request for ssid = %d",
- (int)request->n_ssids);
-
-
/* Even though supplicant doesn't provide any SSIDs, n_ssids is set to 1.
* Becasue of this, driver is assuming that this is not wildcard scan and so
* is not aging out the scan results.
diff --git a/CORE/HDD/src/wlan_hdd_hostapd.c b/CORE/HDD/src/wlan_hdd_hostapd.c
index 70a76d4..6a6f1f5 100644
--- a/CORE/HDD/src/wlan_hdd_hostapd.c
+++ b/CORE/HDD/src/wlan_hdd_hostapd.c
@@ -925,7 +925,10 @@
pHddApCtx->operatingChannel = 0; //Invalidate the channel info.
if ((TRUE == pHddCtx->cfg_ini->fEnableTDLSSupport) &&
- (TRUE == sme_IsFeatureSupportedByFW(TDLS)))
+ (TRUE == sme_IsFeatureSupportedByFW(TDLS)) &&
+ (eTDLS_SUPPORT_ENABLED == pHddCtx->tdls_mode_last ||
+ eTDLS_SUPPORT_EXPLICIT_TRIGGER_ONLY ==
+ pHddCtx->tdls_mode_last))
{
if (pHostapdAdapter->device_mode == WLAN_HDD_P2P_GO)
{
@@ -933,7 +936,8 @@
* upond detection of concurrency TDLS would be disabled
*/
hddLog(LOG1, FL("Enable TDLS support"));
- wlan_hdd_tdls_set_mode(pHddCtx, eTDLS_SUPPORT_ENABLED, FALSE);
+ wlan_hdd_tdls_set_mode(pHddCtx, pHddCtx->tdls_mode_last,
+ FALSE);
}
}
diff --git a/CORE/HDD/src/wlan_hdd_main.c b/CORE/HDD/src/wlan_hdd_main.c
index 5d1c8a0..99b9b16 100755
--- a/CORE/HDD/src/wlan_hdd_main.c
+++ b/CORE/HDD/src/wlan_hdd_main.c
@@ -3314,8 +3314,8 @@
tANI_U8 len = 0;
len = scnprintf(extra, sizeof(extra), "%s %d", command, val);
- if (copy_to_user(priv_data.buf, &extra, len + 1))
- {
+ len = VOS_MIN(priv_data.total_len, len + 1);
+ if (copy_to_user(priv_data.buf, &extra, len)) {
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: failed to copy data to user buffer", __func__);
ret = -EFAULT;
@@ -3371,8 +3371,8 @@
tANI_U8 len = 0;
len = scnprintf(extra, sizeof(extra), "%s %d", command, val);
- if (copy_to_user(priv_data.buf, &extra, len + 1))
- {
+ len = VOS_MIN(priv_data.total_len, len + 1);
+ if (copy_to_user(priv_data.buf, &extra, len)) {
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: failed to copy data to user buffer", __func__);
ret = -EFAULT;
@@ -3479,8 +3479,8 @@
tANI_U8 len = 0;
len = scnprintf(extra, sizeof(extra), "%s %d", command, wesMode);
- if (copy_to_user(priv_data.buf, &extra, len + 1))
- {
+ len = VOS_MIN(priv_data.total_len, len + 1);
+ if (copy_to_user(priv_data.buf, &extra, len)) {
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: failed to copy data to user buffer", __func__);
ret = -EFAULT;
@@ -3833,8 +3833,8 @@
len = scnprintf(extra, sizeof(extra), "%s %d",
command, roamScanControl);
- if (copy_to_user(priv_data.buf, &extra, len + 1))
- {
+ len = VOS_MIN(priv_data.total_len, len + 1);
+ if (copy_to_user(priv_data.buf, &extra, len)) {
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: failed to copy data to user buffer", __func__);
ret = -EFAULT;
@@ -3928,6 +3928,7 @@
memset(extra, 0, sizeof(extra));
ret = hdd_get_dwell_time(pCfg, command, extra, sizeof(extra), &len);
+ len = VOS_MIN(priv_data.total_len, len + 1);
if (ret != 0 || copy_to_user(priv_data.buf, &extra, len + 1))
{
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
@@ -4159,8 +4160,8 @@
tsmMetrics.UplinkPktLoss, tsmMetrics.UplinkPktCount, tsmMetrics.RoamingCount,
tsmMetrics.RoamingDly);
- if (copy_to_user(priv_data.buf, &extra, len + 1))
- {
+ len = VOS_MIN(priv_data.total_len, len + 1);
+ if (copy_to_user(priv_data.buf, &extra, len)) {
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
"%s: failed to copy data to user buffer", __func__);
ret = -EFAULT;
diff --git a/CORE/HDD/src/wlan_hdd_p2p.c b/CORE/HDD/src/wlan_hdd_p2p.c
index 322e4e1..f3716b2 100644
--- a/CORE/HDD/src/wlan_hdd_p2p.c
+++ b/CORE/HDD/src/wlan_hdd_p2p.c
@@ -201,7 +201,7 @@
{
if( cfgState->buf )
{
- hddLog( LOGP,
+ hddLog( LOG1,
"%s: We need to receive yet an ack from one of tx packet",
__func__);
}
@@ -802,7 +802,6 @@
cfgState = WLAN_HDD_GET_CFG_STATE_PTR( pAdapter );
pRemainChanCtx = cfgState->remain_on_chan_ctx;
pAdapter->startRocTs = vos_timer_get_system_time();
- hddLog( LOG1, "Ready on chan ind");
if( pRemainChanCtx != NULL )
{
MTRACE(vos_trace(VOS_MODULE_ID_HDD,
diff --git a/CORE/HDD/src/wlan_hdd_tdls.c b/CORE/HDD/src/wlan_hdd_tdls.c
index 3b87e96..01230f0 100644
--- a/CORE/HDD/src/wlan_hdd_tdls.c
+++ b/CORE/HDD/src/wlan_hdd_tdls.c
@@ -90,13 +90,13 @@
if (adapter == NULL) {
hddLog(LOGE, FL("Station Adapter Not Found"));
- return;
+ goto done;
}
connected_tdls_peers = wlan_hdd_tdlsConnectedPeers(adapter);
if (!connected_tdls_peers) {
- hddLog(LOG1, FL("No TDLS connected peers to delete TDLS peers"));
- return;
+ hddLog(LOG1, FL("No TDLS connected peers to delete TDLS peers"));
+ goto done;
}
/* TDLS is not supported in case of concurrency
@@ -158,6 +158,7 @@
eSIR_MAC_TDLS_TEARDOWN_UNSPEC_REASON);
}
+done:
wlan_hdd_tdls_set_mode(hddctx, eTDLS_SUPPORT_DISABLED, FALSE);
hddLog(LOG1, FL("TDLS Support Disabled"));
}
@@ -2443,7 +2444,6 @@
hdd_adapter_t *pAdapter;
tdlsCtx_t *pHddTdlsCtx;
- ENTER();
VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO,
"%s mode %d", __func__, (int)tdls_mode);
@@ -2491,7 +2491,6 @@
mutex_unlock(&pHddCtx->tdls_lock);
- EXIT();
}
static
diff --git a/CORE/MAC/src/pe/lim/limP2P.c b/CORE/MAC/src/pe/lim/limP2P.c
index a13e5ef..d2a411a 100644
--- a/CORE/MAC/src/pe/lim/limP2P.c
+++ b/CORE/MAC/src/pe/lim/limP2P.c
@@ -891,6 +891,7 @@
tDot11fIEHTCaps dot11HtCap;
PopulateDot11fHTCaps(pMac, psessionEntry, &dot11HtCap);
+
pIe = limGetIEPtr(pMac,pIeStartPtr, nBytes,
DOT11F_EID_HTCAPS,ONE_BYTE);
limLog( pMac, LOG2, FL("pIe %p dot11HtCap.supportedMCSSet[0]=0x%x"),
diff --git a/CORE/MAC/src/pe/lim/limProcessAssocReqFrame.c b/CORE/MAC/src/pe/lim/limProcessAssocReqFrame.c
index 45c3542..996e56b 100644
--- a/CORE/MAC/src/pe/lim/limProcessAssocReqFrame.c
+++ b/CORE/MAC/src/pe/lim/limProcessAssocReqFrame.c
@@ -1163,8 +1163,36 @@
pStaDs->htMaxAmsduLength = (tANI_U8)pAssocReq->HTCaps.maximalAMSDUsize;
pStaDs->htMaxRxAMpduFactor = pAssocReq->HTCaps.maxRxAMPDUFactor;
pStaDs->htMIMOPSState = pAssocReq->HTCaps.mimoPowerSave;
- pStaDs->htShortGI20Mhz = (tANI_U8)pAssocReq->HTCaps.shortGI20MHz;
- pStaDs->htShortGI40Mhz = (tANI_U8)pAssocReq->HTCaps.shortGI40MHz;
+
+ /* pAssocReq will be copied to psessionEntry->parsedAssocReq later */
+ /* check whether AP is enabled with shortGI */
+ if (wlan_cfgGetInt(pMac, WNI_CFG_SHORT_GI_20MHZ, &val) !=
+ eSIR_SUCCESS) {
+ limLog(pMac, LOGE,
+ FL("could not retrieve shortGI 20Mhz CFG"));
+ goto error;
+ }
+ if (val) {
+ pStaDs->htShortGI20Mhz = (tANI_U8)pAssocReq->HTCaps.shortGI20MHz;
+ } else {
+ /* Unset htShortGI20Mhz in ht_caps*/
+ pAssocReq->HTCaps.shortGI20MHz = 0;
+ pStaDs->htShortGI20Mhz = 0;
+ }
+
+ if (wlan_cfgGetInt(pMac, WNI_CFG_SHORT_GI_40MHZ, &val) !=
+ eSIR_SUCCESS) {
+ limLog(pMac, LOGE,
+ FL("could not retrieve shortGI 40Mhz CFG"));
+ goto error;
+ }
+ if (val) {
+ pStaDs->htShortGI40Mhz = (tANI_U8)pAssocReq->HTCaps.shortGI40MHz;
+ } else {
+ /* Unset htShortGI40Mhz in ht_caps */
+ pAssocReq->HTCaps.shortGI40MHz = 0;
+ pStaDs->htShortGI40Mhz = 0;
+ }
pStaDs->htSupportedChannelWidthSet = (tANI_U8)pAssocReq->HTCaps.supportedChannelWidthSet;
/* peer just follows AP; so when we are softAP/GO, we just store our session entry's secondary channel offset here in peer INFRA STA
* However, if peer's 40MHz channel width support is disabled then secondary channel will be zero
diff --git a/CORE/MAC/src/pe/lim/limProcessMlmReqMessages.c b/CORE/MAC/src/pe/lim/limProcessMlmReqMessages.c
index 257fade..a0b1f11 100644
--- a/CORE/MAC/src/pe/lim/limProcessMlmReqMessages.c
+++ b/CORE/MAC/src/pe/lim/limProcessMlmReqMessages.c
@@ -746,7 +746,6 @@
}
else
{
- limLog(pMac, LOG1, FL("Channel %d is Active"), channelNum);
return;
}
if (!tx_timer_running(&pMac->lim.limTimers.gLimActiveToPassiveChannelTimer))
@@ -1259,10 +1258,6 @@
{
tANI_U8 channelNum;
- limLog(pMac, LOG1, FL("Continue SCAN on chan %d, total chan %d"),
- pMac->lim.gLimCurrentScanChannelId,
- pMac->lim.gpLimMlmScanReq->channelList.numChannels);
-
if (pMac->lim.gLimCurrentScanChannelId >
(tANI_U32) (pMac->lim.gpLimMlmScanReq->channelList.numChannels - 1)
|| pMac->lim.abortScan)
@@ -4068,7 +4063,6 @@
(pPeriodicProbeReqTimer->sessionId != 0xff) && (pMac->lim.probeCounter < pMac->lim.maxProbe))
{
tLimMlmScanReq *pLimMlmScanReq = pMac->lim.gpLimMlmScanReq;
- limLog(pMac, LOG1, FL("Scanning : Periodic scanning"));
pMac->lim.probeCounter++;
/**
* Periodic channel timer timed out
diff --git a/CORE/MAC/src/pe/lim/limProcessTdls.c b/CORE/MAC/src/pe/lim/limProcessTdls.c
index d8528e2..ea7f034 100644
--- a/CORE/MAC/src/pe/lim/limProcessTdls.c
+++ b/CORE/MAC/src/pe/lim/limProcessTdls.c
@@ -434,13 +434,16 @@
tANI_U32 header_offset = 0 ;
tANI_U8 *addr1 = NULL ;
tANI_U8 *addr3 = NULL ;
+ tpDphHashNode pStaDs = NULL;
+ tANI_U16 aid = 0;
+ tANI_U8 qosMode = 0;
+
tANI_U8 toDs = (tdlsLinkType == TDLS_LINK_AP)
? ANI_TXDIR_TODS :ANI_TXDIR_IBSS ;
tANI_U8 *peerMac = (reqType == TDLS_INITIATOR)
? link_iden->RespStaAddr : link_iden->InitStaAddr;
tANI_U8 *staMac = (reqType == TDLS_INITIATOR)
? link_iden->InitStaAddr : link_iden->RespStaAddr;
-
pMacHdr = (tpSirMacDataHdr3a) (pFrame);
/*
@@ -457,7 +460,18 @@
*/
pMacHdr->fc.protVer = SIR_MAC_PROTOCOL_VERSION;
pMacHdr->fc.type = SIR_MAC_DATA_FRAME ;
- pMacHdr->fc.subType = IS_QOS_ENABLED(psessionEntry) ? SIR_MAC_DATA_QOS_DATA : SIR_MAC_DATA_DATA;
+
+ pStaDs = dphLookupHashEntry(pMac, peerMac, &aid,
+ &psessionEntry->dph.dphHashTable);
+ if (pStaDs)
+ {
+ qosMode = pStaDs->qosMode;
+ }
+
+ pMacHdr->fc.subType = ((IS_QOS_ENABLED(psessionEntry) &&
+ (tdlsLinkType == TDLS_LINK_AP)) ||
+ ((tdlsLinkType == TDLS_LINK_DIRECT) && qosMode))
+ ? SIR_MAC_DATA_QOS_DATA : SIR_MAC_DATA_DATA;
/*
* TL is not setting up below fields, so we are doing it here
@@ -489,7 +503,8 @@
//printMacAddr(pMacHdr->sa) ;
//printMacAddr(pMacHdr->da) ;
- if (IS_QOS_ENABLED(psessionEntry))
+ if (((tdlsLinkType == TDLS_LINK_AP) && (IS_QOS_ENABLED(psessionEntry))) ||
+ ((tdlsLinkType == TDLS_LINK_DIRECT) && qosMode))
{
pMacHdr->qosControl.tid = tid;
header_offset += sizeof(tSirMacDataHdr3a);
@@ -1348,6 +1363,11 @@
#ifndef NO_PAD_TDLS_MIN_8023_SIZE
tANI_U32 padLen = 0;
#endif
+ tpDphHashNode pStaDs = NULL;
+ tANI_U16 aid = 0;
+ tANI_U8 qosMode = 0;
+ tANI_U8 tdlsLinkType = 0;
+
/*
* The scheme here is to fill out a 'tDot11fProbeRequest' structure
* and then hand it off to 'dot11fPackProbeRequest' (for
@@ -1383,7 +1403,17 @@
* 89-0d.
* 8 bytes of RFC 1042 header
*/
- nBytes = nPayload + ((IS_QOS_ENABLED(psessionEntry))
+ pStaDs = dphLookupHashEntry(pMac, peerMac, &aid,
+ &psessionEntry->dph.dphHashTable);
+ if (pStaDs)
+ {
+ qosMode = pStaDs->qosMode;
+ }
+ tdlsLinkType = (reason == eSIR_MAC_TDLS_TEARDOWN_PEER_UNREACHABLE)
+ ? TDLS_LINK_AP : TDLS_LINK_DIRECT;
+ nBytes = nPayload + (((IS_QOS_ENABLED(psessionEntry) &&
+ (tdlsLinkType == TDLS_LINK_AP)) ||
+ ((tdlsLinkType == TDLS_LINK_DIRECT) && qosMode))
? sizeof(tSirMacDataHdr3a) : sizeof(tSirMacMgmtHdr))
+ sizeof( eth_890d_header )
+ PAYLOAD_TYPE_TDLS_SIZE
@@ -2569,7 +2599,8 @@
&psessionEntry->dph.dphHashTable) ;
/* Lets enable QOS parameter */
- pStaDs->qosMode = 1;
+ pStaDs->qosMode = (pTdlsAddStaReq->capability & CAPABILITIES_QOS_OFFSET) ||
+ pTdlsAddStaReq->htcap_present;
pStaDs->wmeEnabled = 1;
pStaDs->lleEnabled = 0;
/* TDLS Dummy AddSTA does not have qosInfo , is it OK ??
diff --git a/CORE/MAC/src/pe/lim/limSendManagementFrames.c b/CORE/MAC/src/pe/lim/limSendManagementFrames.c
index 811d433..4fbd15b 100644
--- a/CORE/MAC/src/pe/lim/limSendManagementFrames.c
+++ b/CORE/MAC/src/pe/lim/limSendManagementFrames.c
@@ -1482,6 +1482,7 @@
if ( pSta->mlmStaContext.htCapability &&
psessionEntry->htCapability )
{
+ limLog(pMac, LOG1, FL("Populate HT IEs in Assoc Response"));
PopulateDot11fHTCaps( pMac, psessionEntry, &frm.HTCaps );
/*
*Check the STA capability and update the HTCaps accordingly
@@ -1495,6 +1496,13 @@
PopulateDot11fHTInfo( pMac, &frm.HTInfo, psessionEntry );
}
+ limLog(pMac, LOG1, FL("SupportedChnlWidth: %d, mimoPS: %d, GF: %d,"
+ "shortGI20:%d, shortGI40: %d, dsssCck: %d, AMPDU Param: %x"),
+ frm.HTCaps.supportedChannelWidthSet, frm.HTCaps.mimoPowerSave,
+ frm.HTCaps.greenField, frm.HTCaps.shortGI20MHz, frm.HTCaps.shortGI40MHz,
+ frm.HTCaps.dsssCckMode40MHz, frm.HTCaps.maxRxAMPDUFactor);
+
+
#ifdef WLAN_FEATURE_AP_HT40_24G
/* Populate Overlapping BSS Scan Parameters IEs,
@@ -2442,6 +2450,7 @@
if ( psessionEntry->htCapability &&
pMac->lim.htCapabilityPresentInBeacon)
{
+ limLog(pMac, LOG1, FL("Populate HT IEs in Assoc Request"));
PopulateDot11fHTCaps( pMac, psessionEntry, &pFrm->HTCaps );
#ifdef DISABLE_GF_FOR_INTEROP
@@ -2461,6 +2470,14 @@
#endif
}
+
+ limLog(pMac, LOG1, FL("SupportedChnlWidth: %d, mimoPS: %d, GF: %d,"
+ "shortGI20:%d, shortGI40: %d, dsssCck: %d, AMPDU Param: %x"),
+ pFrm->HTCaps.supportedChannelWidthSet, pFrm->HTCaps.mimoPowerSave,
+ pFrm->HTCaps.greenField, pFrm->HTCaps.shortGI20MHz, pFrm->HTCaps.shortGI40MHz,
+ pFrm->HTCaps.dsssCckMode40MHz, pFrm->HTCaps.maxRxAMPDUFactor);
+
+
#ifdef WLAN_FEATURE_11AC
if ( psessionEntry->vhtCapability &&
psessionEntry->vhtCapabilityPresentInBeacon)
@@ -2925,7 +2942,11 @@
{
PopulateDot11fHTCaps( pMac, psessionEntry, &frm.HTCaps );
}
-
+ limLog(pMac, LOG1, FL("SupportedChnlWidth: %d, mimoPS: %d, GF: %d,"
+ "shortGI20:%d, shortGI40: %d, dsssCck: %d, AMPDU Param: %x"),
+ frm.HTCaps.supportedChannelWidthSet, frm.HTCaps.mimoPowerSave,
+ frm.HTCaps.greenField, frm.HTCaps.shortGI20MHz, frm.HTCaps.shortGI40MHz,
+ frm.HTCaps.dsssCckMode40MHz, frm.HTCaps.maxRxAMPDUFactor);
#if defined WLAN_FEATURE_VOWIFI_11R
if ( psessionEntry->pLimReAssocReq->bssDescription.mdiePresent &&
(pMac->ft.ftSmeContext.addMDIE == TRUE)
@@ -3408,6 +3429,11 @@
{
PopulateDot11fHTCaps( pMac, psessionEntry, &frm.HTCaps );
}
+ limLog(pMac, LOG1, FL("SupportedChnlWidth: %d, mimoPS: %d, GF: %d,"
+ "shortGI20:%d, shortGI40: %d, dsssCck: %d, AMPDU Param: %x"),
+ frm.HTCaps.supportedChannelWidthSet, frm.HTCaps.mimoPowerSave,
+ frm.HTCaps.greenField, frm.HTCaps.shortGI20MHz, frm.HTCaps.shortGI40MHz,
+ frm.HTCaps.dsssCckMode40MHz, frm.HTCaps.maxRxAMPDUFactor);
#ifdef WLAN_FEATURE_11AC
if ( psessionEntry->vhtCapability &&
psessionEntry->vhtCapabilityPresentInBeacon)
diff --git a/CORE/MAC/src/pe/lim/limSendSmeRspMessages.c b/CORE/MAC/src/pe/lim/limSendSmeRspMessages.c
index d6eef57..a966a4d 100644
--- a/CORE/MAC/src/pe/lim/limSendSmeRspMessages.c
+++ b/CORE/MAC/src/pe/lim/limSendSmeRspMessages.c
@@ -729,10 +729,6 @@
tANI_U8 *pbBuf;
tSirBssDescription *pDesc;
- limLog(pMac, LOG1,
- FL("Sending message SME_SCAN_RSP with length=%d reasonCode %s"),
- length, limResultCodeStr(resultCode));
-
if (resultCode != eSIR_SME_SUCCESS)
{
limPostSmeScanRspMessage(pMac, length, resultCode,smesessionId,smetranscationId);
@@ -803,15 +799,14 @@
}
curMsgLen = msgLen;
- limLog(pMac, LOG1, FL("ScanRsp : msgLen %d, bssDescr Len=%d"),
- msgLen, ptemp->bssDescription.length);
pDesc->length
= ptemp->bssDescription.length;
vos_mem_copy( (tANI_U8 *) &pDesc->bssId,
(tANI_U8 *) &ptemp->bssDescription.bssId,
ptemp->bssDescription.length);
- limLog(pMac, LOG1, FL("BssId "));
+ limLog(pMac, LOG1, FL("ScanRsp : msgLen %d, bssDescr Len=%d BssID "),
+ msgLen, ptemp->bssDescription.length);
limPrintMacAddr(pMac, ptemp->bssDescription.bssId, LOG1);
pSirSmeScanRsp->sessionId = smesessionId;
diff --git a/CORE/SME/src/csr/csrUtil.c b/CORE/SME/src/csr/csrUtil.c
index 9da468c..a17bfdd 100644
--- a/CORE/SME/src/csr/csrUtil.c
+++ b/CORE/SME/src/csr/csrUtil.c
@@ -2340,19 +2340,18 @@
{
phyMode = eCSR_DOT11_MODE_TAURUS;
}
- }
- }
+ }
+ }
if(pIes->HTCaps.present && (eCSR_DOT11_MODE_TAURUS != phyMode))
{
phyMode = eCSR_DOT11_MODE_11n;
- }
-
#ifdef WLAN_FEATURE_11AC
- if ( pIes->VHTCaps.present && (eCSR_DOT11_MODE_TAURUS != phyMode))
- {
- phyMode = eCSR_DOT11_MODE_11ac;
- }
+ if ( pIes->VHTCaps.present)
+ {
+ phyMode = eCSR_DOT11_MODE_11ac;
+ }
#endif
+ }
*pPhyMode = phyMode;
}
diff --git a/CORE/SME/src/pmc/pmc.c b/CORE/SME/src/pmc/pmc.c
index d5a52b0..847b02b 100644
--- a/CORE/SME/src/pmc/pmc.c
+++ b/CORE/SME/src/pmc/pmc.c
@@ -2169,10 +2169,10 @@
break;
case eSmeCommandExitBmps:
- if( BMPS == pMac->pmc.pmcState )
+ if ((BMPS == pMac->pmc.pmcState) || (UAPSD == pMac->pmc.pmcState))
{
+ tPmcState origState = pMac->pmc.pmcState;
pMac->pmc.requestFullPowerPending = FALSE;
-
/* Change PMC state */
pMac->pmc.pmcState = REQUEST_FULL_POWER;
status = pmcSendMessage( pMac, eWNI_PMC_EXIT_BMPS_REQ,
@@ -2185,7 +2185,7 @@
}
else
{
- pMac->pmc.pmcState = BMPS;
+ pMac->pmc.pmcState = origState;
pmcLog(pMac, LOGE, FL("eWNI_PMC_EXIT_BMPS_REQ fail to be sent to PE status %d"), status);
pmcEnterFullPowerState(pMac);
}
diff --git a/CORE/SME/src/pmc/pmcApi.c b/CORE/SME/src/pmc/pmcApi.c
index 1c2287d..055f0dc 100644
--- a/CORE/SME/src/pmc/pmcApi.c
+++ b/CORE/SME/src/pmc/pmcApi.c
@@ -2173,18 +2173,12 @@
if(pattern == NULL)
{
pmcLog(pMac, LOGE, FL("Null broadcast pattern being passed"));
-#ifdef FEATURE_WLAN_DIAG_SUPPORT
- WLAN_VOS_DIAG_LOG_FREE(log_ptr);
-#endif
return eHAL_STATUS_FAILURE;
}
if( pSession == NULL)
{
pmcLog(pMac, LOGE, FL("Session not found "));
-#ifdef FEATURE_WLAN_DIAG_SUPPORT
- WLAN_VOS_DIAG_LOG_FREE(log_ptr);
-#endif
return eHAL_STATUS_FAILURE;
}
diff --git a/CORE/SME/src/sme_common/sme_Api.c b/CORE/SME/src/sme_common/sme_Api.c
index 2a4ed84..5633259 100644
--- a/CORE/SME/src/sme_common/sme_Api.c
+++ b/CORE/SME/src/sme_common/sme_Api.c
@@ -888,13 +888,18 @@
{
// we can reuse the pCommand
- /* For roam command set timeout to 30 * 2 sec.
+ /* For ROC set timeot to 30 *3 as Supplicant can retry
+ * P2P Invitation Request 120 times with 500ms interval.
+ * For roam command set timeout to 30 * 2 sec.
* There are cases where we try to connect to different
* APs with same SSID one by one until sucessfully conneted
* and thus roam command might take more time if connection
* is rejected by too many APs.
*/
- if ((eSmeCommandRoam == pCommand->command) &&
+ if (eSmeCommandRemainOnChannel == pCommand->command)
+ pMac->sme.smeCmdActiveList.cmdTimeoutDuration =
+ CSR_ACTIVE_LIST_CMD_TIMEOUT_VALUE * 3;
+ else if ((eSmeCommandRoam == pCommand->command) &&
(eCsrHddIssued == pCommand->u.roamCmd.roamReason))
pMac->sme.smeCmdActiveList.cmdTimeoutDuration =
CSR_ACTIVE_LIST_CMD_TIMEOUT_VALUE * 2;
diff --git a/CORE/SYS/legacy/src/utils/src/parserApi.c b/CORE/SYS/legacy/src/utils/src/parserApi.c
index 8ab9d3f..91880f1 100644
--- a/CORE/SYS/legacy/src/utils/src/parserApi.c
+++ b/CORE/SYS/legacy/src/utils/src/parserApi.c
@@ -605,10 +605,6 @@
pDot11f->shortGI40MHz = 0;
}
- limLog(pMac, LOG1, FL("SupportedChnlWidth: %d, mimoPS: %d, GF: %d,"
- "shortGI20:%d, shortGI40: %d, dsssCck: %d\n"),
- pDot11f->supportedChannelWidthSet, pDot11f->mimoPowerSave, pDot11f->greenField,
- pDot11f->shortGI20MHz, pDot11f->shortGI40MHz, pDot11f->dsssCckMode40MHz);
CFG_GET_INT( nSirStatus, pMac, WNI_CFG_HT_AMPDU_PARAMS, nCfgValue );
@@ -620,9 +616,6 @@
pDot11f->mpduDensity = pHTParametersInfo->mpduDensity;
pDot11f->reserved1 = pHTParametersInfo->reserved;
- limLog( pMac, LOG1, FL( "AMPDU Param: %x\n" ), nCfgValue);
-
-
CFG_GET_STR( nSirStatus, pMac, WNI_CFG_SUPPORTED_MCS_SET,
pDot11f->supportedMCSSet, nCfgLen,
SIZE_OF_SUPPORTED_MCS_SET );
@@ -2643,11 +2636,12 @@
if ( ar.HTCaps.present )
{
+ limLog(pMac, LOG1, FL("Received Assoc Response with HT Cap"));
vos_mem_copy( &pAssocRsp->HTCaps, &ar.HTCaps, sizeof( tDot11fIEHTCaps ) );
}
if ( ar.HTInfo.present )
- {
+ { limLog(pMac, LOG1, FL("Received Assoc Response with HT Info"));
vos_mem_copy( &pAssocRsp->HTInfo, &ar.HTInfo, sizeof( tDot11fIEHTInfo ) );
}
diff --git a/CORE/VOSS/src/vos_sched.c b/CORE/VOSS/src/vos_sched.c
index c9662f3..cfefb61 100644
--- a/CORE/VOSS/src/vos_sched.c
+++ b/CORE/VOSS/src/vos_sched.c
@@ -420,9 +420,6 @@
/*
** Service the WDI message queue
*/
- VOS_TRACE(VOS_MODULE_ID_WDI, VOS_TRACE_LEVEL_INFO,
- ("Servicing the VOS MC WDI Message queue"));
-
pMsgWrapper = vos_mq_get(&pSchedContext->wdiMcMq);
if (pMsgWrapper == NULL)