summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnjaneedevi Kapparapu <akappa@codeaurora.org>2015-01-08 21:53:33 +0530
committerAnjaneedevi Kapparapu <akappa@codeaurora.org>2015-01-08 21:55:11 +0530
commit17e53f5cfd45288d694bc5572db0d2dfc5ebfe46 (patch)
tree3a5b2e8d5e7489fcd3325e60a1356c98b1782a77
parent85948458fe24e095a4c4b54cfb58b064eeccb19b (diff)
parent71b63298532987b554dabae911c8d7491d6869ca (diff)
Release 4.0.10.011 QCACLD WLAN Driver
Merge remote-tracking branch 'origin/caf/caf-wlan/master' * origin/caf/caf-wlan/master: Cafstaging Release 4.0.10.011 wlan: Include cnss_diag as part of the opensource wlan build. wlan: mac: scan optimization to avoid P2P stale entry Change-Id: I412031ceb414b9377b64d0084936b9f27ad58f16
-rw-r--r--Android.mk5
-rw-r--r--CORE/MAC/inc/aniGlobal.h2
-rw-r--r--CORE/MAC/inc/qwlan_version.h4
-rw-r--r--CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c14
-rw-r--r--CORE/MAC/src/pe/lim/limProcessSmeReqMessages.c1
-rw-r--r--CORE/MAC/src/pe/lim/limSendSmeRspMessages.c22
6 files changed, 46 insertions, 2 deletions
diff --git a/Android.mk b/Android.mk
index b766cd2e20ff..a96352f1ff15 100644
--- a/Android.mk
+++ b/Android.mk
@@ -67,6 +67,11 @@ LOCAL_MODULE_TAGS := debug
LOCAL_MODULE_DEBUG_ENABLE := true
LOCAL_MODULE_PATH := $(TARGET_OUT)/lib/modules/$(WLAN_CHIPSET)
include $(DLKM_DIR)/AndroidKernelModule.mk
+ifeq ($(WLAN_OPEN_SOURCE),1)
+include $(WLAN_BLD_DIR)/qcacld-2.0/tools/athdiag/Android.mk
+include $(WLAN_BLD_DIR)/qcacld-2.0/tools/fwdebuglog/Android.mk
+include $(WLAN_BLD_DIR)/qcacld-2.0/tools/pktlog/Android.mk
+endif
###########################################################
# Create Symbolic link for built <WLAN_CHIPSET>_wlan.ko driver from
diff --git a/CORE/MAC/inc/aniGlobal.h b/CORE/MAC/inc/aniGlobal.h
index cc79bc36282d..c586265ef9e8 100644
--- a/CORE/MAC/inc/aniGlobal.h
+++ b/CORE/MAC/inc/aniGlobal.h
@@ -846,6 +846,8 @@ tLimMlmOemDataRsp *gpLimMlmOemDataRsp;
tANI_U8 fOffloadScanPending; /*Flag to track offload scan */
tANI_U8 fOffloadScanP2PSearch; /*Flag to track the p2p search */
tANI_U8 fOffloadScanP2PListen; /*Flag to track the p2p listen */
+ /*Filter out P2P result if not P2P scan/listen */
+ tANI_U8 offload_scan_filter_p2p_result;
tANI_U8 probeCounter;
tANI_U8 maxProbe;
} tAniSirLim, *tpAniSirLim;
diff --git a/CORE/MAC/inc/qwlan_version.h b/CORE/MAC/inc/qwlan_version.h
index 0ca0c414d5af..bf5e4c04d6bf 100644
--- a/CORE/MAC/inc/qwlan_version.h
+++ b/CORE/MAC/inc/qwlan_version.h
@@ -42,9 +42,9 @@ BRIEF DESCRIPTION:
#define QWLAN_VERSION_MINOR 0
#define QWLAN_VERSION_PATCH 10
#define QWLAN_VERSION_EXTRA ""
-#define QWLAN_VERSION_BUILD 010
+#define QWLAN_VERSION_BUILD 011
-#define QWLAN_VERSIONSTR "4.0.10.010"
+#define QWLAN_VERSIONSTR "4.0.10.011"
#define AR6320_REV1_VERSION 0x5000000
diff --git a/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c b/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c
index 33a209d2f91a..e7900565b787 100644
--- a/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c
+++ b/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c
@@ -4888,6 +4888,19 @@ void limProcessRxScanEvent(tpAniSirGlobal pMac, void *buf)
break;
case SCAN_EVENT_START_FAILED:
case SCAN_EVENT_COMPLETED:
+ limLog(pMac, LOG1, FL("pMac->fScanOffload %d, pMac->lim.fOffloadScanPending %d, pMac->lim.fOffloadScanP2PSearch %d, pMac->lim.fOffloadScanP2PListen %d"),
+ pMac->fScanOffload, pMac->lim.fOffloadScanPending,
+ pMac->lim.fOffloadScanP2PSearch,
+ pMac->lim.fOffloadScanP2PListen);
+
+ if ((SCAN_EVENT_COMPLETED == pScanEvent->event) &&
+ !(pMac->fScanOffload && pMac->lim.fOffloadScanPending &&
+ (pMac->lim.fOffloadScanP2PSearch ||
+ pMac->lim.fOffloadScanP2PListen)))
+ {
+ pMac->lim.offload_scan_filter_p2p_result = 1;
+ }
+
pMac->lim.fOffloadScanPending = 0;
pMac->lim.fOffloadScanP2PSearch = 0;
pMac->lim.fOffloadScanP2PListen = 0;
@@ -4903,6 +4916,7 @@ void limProcessRxScanEvent(tpAniSirGlobal pMac, void *buf)
{
limSendScanOffloadComplete(pMac, pScanEvent);
}
+ pMac->lim.offload_scan_filter_p2p_result = 0;
break;
case SCAN_EVENT_FOREIGN_CHANNEL:
if (P2P_SCAN_TYPE_LISTEN == pScanEvent->p2pScanType)
diff --git a/CORE/MAC/src/pe/lim/limProcessSmeReqMessages.c b/CORE/MAC/src/pe/lim/limProcessSmeReqMessages.c
index 9f45f99d5a9f..1f6c40489c7e 100644
--- a/CORE/MAC/src/pe/lim/limProcessSmeReqMessages.c
+++ b/CORE/MAC/src/pe/lim/limProcessSmeReqMessages.c
@@ -1129,6 +1129,7 @@ static eHalStatus limSendHalStartScanOffloadReq(tpAniSirGlobal pMac,
pMac->lim.fOffloadScanPending = 0;
pMac->lim.fOffloadScanP2PSearch = 0;
+ pMac->lim.offload_scan_filter_p2p_result = 0;
/* The tSirScanOffloadReq will reserve the space for first channel,
so allocate the memory for (numChannels - 1) and uIEFieldLen */
diff --git a/CORE/MAC/src/pe/lim/limSendSmeRspMessages.c b/CORE/MAC/src/pe/lim/limSendSmeRspMessages.c
index b2dbba39f890..86fdb9086082 100644
--- a/CORE/MAC/src/pe/lim/limSendSmeRspMessages.c
+++ b/CORE/MAC/src/pe/lim/limSendSmeRspMessages.c
@@ -782,6 +782,8 @@ limSendSmeScanRsp(tpAniSirGlobal pMac, tANI_U16 length,
tANI_U16 i, bssCount;
tANI_U8 *pbBuf;
tSirBssDescription *pDesc;
+ tANI_U8 *pssidstr;
+ tSirMacSSid *pssid;
limLog(pMac, LOG1,
FL("Sending message SME_SCAN_RSP with length=%d reasonCode %s"),
@@ -807,13 +809,33 @@ limSendSmeScanRsp(tpAniSirGlobal pMac, tANI_U16 length,
return;
}
+
for (i = 0; i < LIM_MAX_NUM_OF_SCAN_RESULTS; i++)
{
//when ptemp is not NULL it is a left over
ptemp = pMac->lim.gLimCachedScanHashTable[i];
+ pSirSmeScanRsp->sessionId = smesessionId;
+ pSirSmeScanRsp->transcationId = smetranscationId;
+
while(ptemp)
{
pbBuf = ((tANI_U8 *)pSirSmeScanRsp) + msgLen;
+
+ if (pMac->lim.offload_scan_filter_p2p_result)
+ {
+ pssid =
+ (tSirMacSSid *)((tANI_U8 *)&ptemp->bssDescription.ieFields + 1);
+ pssidstr = pssid->ssId;
+ if (vos_mem_compare(pssidstr, P2P_WILDCARD_SSID,
+ P2P_WILDCARD_SSID_LEN))
+ {
+ limLog(pMac, LOG1,
+ FL("Skipping p2p entries for eWNI_SME_SCAN_RSP"));
+ ptemp = ptemp->next;
+ continue;
+ }
+ }
+
if(0 == bssCount)
{
msgLen = sizeof(tSirSmeScanRsp) -