Merge "wlan: Rate limit excessive logging in SAP Tx path."
diff --git a/CORE/HDD/src/wlan_hdd_cfg.c b/CORE/HDD/src/wlan_hdd_cfg.c
index 86c42b7..356b658 100644
--- a/CORE/HDD/src/wlan_hdd_cfg.c
+++ b/CORE/HDD/src/wlan_hdd_cfg.c
@@ -3813,8 +3813,8 @@
   VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gApHT4024G] Value = [%u]", pHddCtx->cfg_ini->apHT40_24GEnabled);
 #endif
   VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gAcsScanBandPreference] Value = [%u] ",pHddCtx->cfg_ini->acsScanBandPreference);
-  VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gACSBandSwitchThreshold] value = [%u]\n",pHddCtx->cfg_ini->acsBandSwitchThreshold);
-  VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gDeferScanTimeInterval] value = [%u]\n",pHddCtx->cfg_ini->nDeferScanTimeInterval);
+  VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gACSBandSwitchThreshold] value = [%u]",pHddCtx->cfg_ini->acsBandSwitchThreshold);
+  VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gDeferScanTimeInterval] value = [%u]",pHddCtx->cfg_ini->nDeferScanTimeInterval);
   VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gEnableTDLSScan] value = [%u]\n",pHddCtx->cfg_ini->fEnableTDLSScan);
   VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gDxeReplenishRXTimerVal] Value = [%u] ", pHddCtx->cfg_ini->dxeReplenishRXTimerVal);
   VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "Name = [gDxeSSREnable] Value = [%u] ", pHddCtx->cfg_ini->dxeSSREnable);
diff --git a/CORE/HDD/src/wlan_hdd_early_suspend.c b/CORE/HDD/src/wlan_hdd_early_suspend.c
index cec04e2..9c4f047 100644
--- a/CORE/HDD/src/wlan_hdd_early_suspend.c
+++ b/CORE/HDD/src/wlan_hdd_early_suspend.c
@@ -1097,7 +1097,7 @@
    tSirHostOffloadReq  offLoadRequest;
    hdd_context_t *pHddCtx = WLAN_HDD_GET_CTX(pAdapter);
 
-   hddLog(VOS_TRACE_LEVEL_INFO, FL(" fenable = %d \n"), fenable);
+   hddLog(VOS_TRACE_LEVEL_INFO, FL(" fenable = %d "), fenable);
 
    if(fenable)
    {
diff --git a/CORE/HDD/src/wlan_hdd_ftm.c b/CORE/HDD/src/wlan_hdd_ftm.c
index 1dc968c..7575eeb 100644
--- a/CORE/HDD/src/wlan_hdd_ftm.c
+++ b/CORE/HDD/src/wlan_hdd_ftm.c
@@ -5550,7 +5550,7 @@
 
     if(wrqu->data.length != 2)
     {
-        hddLog(LOGE, "Invalid number of Arguments  %d  \n",  wrqu->data.length);
+        hddLog(LOGE, "Invalid number of Arguments  %d ",  wrqu->data.length);
         return -EINVAL;
     }
     pAdapter = (netdev_priv(dev));
@@ -5589,7 +5589,7 @@
 
         default:
         {
-            hddLog(LOGE, "Invalid IOCTL command %d  \n", sub_cmd );
+            hddLog(LOGE, "Invalid IOCTL command %d ", sub_cmd );
             break;
         }
     }
diff --git a/CORE/HDD/src/wlan_hdd_main.c b/CORE/HDD/src/wlan_hdd_main.c
index 2082654..378437e 100755
--- a/CORE/HDD/src/wlan_hdd_main.c
+++ b/CORE/HDD/src/wlan_hdd_main.c
@@ -10249,7 +10249,8 @@
        //EAPOL and DHCP
        if (!pHddCtx->cfg_ini->gEnableDebugLog)
            pHddCtx->cfg_ini->gEnableDebugLog =
-           VOS_PKT_PROTO_TYPE_EAPOL | VOS_PKT_PROTO_TYPE_DHCP;
+           VOS_PKT_PROTO_TYPE_EAPOL | VOS_PKT_PROTO_TYPE_DHCP |
+           VOS_PKT_PROTO_TYPE_ARP;
    }
 
    if (pHddCtx->cfg_ini->wlanLoggingEnable &&
diff --git a/CORE/HDD/src/wlan_hdd_p2p.c b/CORE/HDD/src/wlan_hdd_p2p.c
index 8eabb5e..fe1f6b8 100644
--- a/CORE/HDD/src/wlan_hdd_p2p.c
+++ b/CORE/HDD/src/wlan_hdd_p2p.c
@@ -1698,7 +1698,7 @@
     {
         VOS_TRACE( VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
                "%s: P2P_SET GO NoA: fail to read param "
-               "count=%d duration=%d interval=%d \n",
+               "count=%d duration=%d interval=%d ",
                 __func__, count, start_time, duration);
         return -EINVAL;
     }
@@ -1784,7 +1784,7 @@
     {
         VOS_TRACE (VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
                  "%s: P2P_SET GO PS: fail to read param "
-                 " legacy_ps=%d opp_ps=%d ctwindow=%d \n",
+                 " legacy_ps=%d opp_ps=%d ctwindow=%d ",
                  __func__, legacy_ps, opp_ps, ctwindow);
         return -EINVAL;
     }
diff --git a/CORE/HDD/src/wlan_hdd_softap_tx_rx.c b/CORE/HDD/src/wlan_hdd_softap_tx_rx.c
index 620f30e..7c9215b 100644
--- a/CORE/HDD/src/wlan_hdd_softap_tx_rx.c
+++ b/CORE/HDD/src/wlan_hdd_softap_tx_rx.c
@@ -700,7 +700,7 @@
 
    ++pAdapter->hdd_stats.hddTxRxStats.txTimeoutCount;
 
-   for (i = 0; i < 8; i++)
+   for (i = 0; i < NUM_TX_QUEUES; i++)
    {
       txq = netdev_get_tx_queue(dev, i);
       VOS_TRACE( VOS_MODULE_ID_HDD_SAP_DATA, VOS_TRACE_LEVEL_ERROR,
@@ -708,7 +708,7 @@
    }
 
    VOS_TRACE( VOS_MODULE_ID_HDD_SAP_DATA, VOS_TRACE_LEVEL_ERROR,
-              "carrier state: %d", netif_carrier_ok(dev));
+             "carrier state: %d", netif_carrier_ok(dev));
 
    ++pAdapter->hdd_stats.hddTxRxStats.continuousTxTimeoutCount;
 
diff --git a/CORE/HDD/src/wlan_hdd_wext.c b/CORE/HDD/src/wlan_hdd_wext.c
index d1fa78a..b2afa29 100644
--- a/CORE/HDD/src/wlan_hdd_wext.c
+++ b/CORE/HDD/src/wlan_hdd_wext.c
@@ -7092,16 +7092,22 @@
     ptSapContext pSapCtx = VOS_GET_SAP_CB(pVosContext);
     hdd_station_ctx_t *pHddStaCtx = WLAN_HDD_GET_STATION_CTX_PTR(pAdapter);
     hdd_ibss_peer_info_t *pPeerInfo;
+    v_SIZE_t tx_queue_count[NUM_TX_QUEUES];
 
     for ( i=0; i< NUM_TX_QUEUES; i++)
     {
         spin_lock_bh(&pAdapter->wmm_tx_queue[i].lock);
-
-        hddLog(LOGE, "HDD WMM TxQueue Info For AC: %d Count: %d PrevAdress:%p, NextAddress:%p",
-               i, pAdapter->wmm_tx_queue[i].count,
-               pAdapter->wmm_tx_queue[i].anchor.prev, pAdapter->wmm_tx_queue[i].anchor.next);
+        tx_queue_count[i] = pAdapter->wmm_tx_queue[i].count;
         spin_unlock_bh(&pAdapter->wmm_tx_queue[i].lock);
     }
+
+    for ( i=0; i< NUM_TX_QUEUES; i++) {
+        if (tx_queue_count[i]) {
+            hddLog(LOGE, "HDD WMM TxQueue Info For AC: %d Count: %d",
+               i, tx_queue_count[i]);
+        }
+    }
+
     if(pSapCtx == NULL){
         VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_ERROR,
                   FL("psapCtx is NULL"));
@@ -7119,11 +7125,8 @@
                 if( pSapCtx->aStaInfo[i].wmm_tx_queue[j].count )
                 {
                    spin_lock_bh(&pSapCtx->aStaInfo[i].wmm_tx_queue[j].lock);
-                   hddLog(LOGE, "HDD TxQueue Info For AC: %d Count: %d"
-                         "PrevAdress:%p, NextAddress:%p",
-                         j, pSapCtx->aStaInfo[i].wmm_tx_queue[j].count,
-                         pSapCtx->aStaInfo[i].wmm_tx_queue[j].anchor.prev,
-                         pSapCtx->aStaInfo[i].wmm_tx_queue[j].anchor.next);
+                   hddLog(LOGE, "HDD TxQueue Info For AC: %d Count: %d",
+                         j, pSapCtx->aStaInfo[i].wmm_tx_queue[j].count);
                   spin_unlock_bh(&pSapCtx->aStaInfo[i].wmm_tx_queue[j].lock);
                 }
              }
diff --git a/CORE/MAC/src/pe/lim/limP2P.c b/CORE/MAC/src/pe/lim/limP2P.c
index d2a411a..ecfa883 100644
--- a/CORE/MAC/src/pe/lim/limP2P.c
+++ b/CORE/MAC/src/pe/lim/limP2P.c
@@ -1126,7 +1126,7 @@
             if (pMac->lim.gpLimRemainOnChanReq == NULL)
             {
                 limLog( pMac, LOGE,
-                        FL("Failed to Send Action frame \n"));
+                        FL("Failed to Send Action frame"));
                 limSendSmeRsp(pMac, eWNI_SME_ACTION_FRAME_SEND_CNF,
                               eHAL_STATUS_FAILURE, pMbMsg->sessionId, 0);
                 return;
@@ -1195,7 +1195,7 @@
         else
         {
             limLog(pMac, LOGE,
-                FL("Dropping SA Query frame - Unable to find PE Session \n"));
+                FL("Dropping SA Query frame - Unable to find PE Session "));
             limSendSmeRsp(pMac, eWNI_SME_ACTION_FRAME_SEND_CNF,
                     eHAL_STATUS_FAILURE, pMbMsg->sessionId, 0);
             palPktFree( pMac->hHdd, HAL_TXRX_FRM_802_11_MGMT,
diff --git a/CORE/MAC/src/pe/lim/limProcessActionFrame.c b/CORE/MAC/src/pe/lim/limProcessActionFrame.c
index 82a4f6f..ce2fff9 100644
--- a/CORE/MAC/src/pe/lim/limProcessActionFrame.c
+++ b/CORE/MAC/src/pe/lim/limProcessActionFrame.c
@@ -2027,7 +2027,7 @@
     mmhMsg.type = eWNI_SME_2040_COEX_IND;
     mmhMsg.bodyptr = pSirSmeHT2040CoexInfoInd;
     mmhMsg.bodyval = 0;
-    limLog(pMac, LOGW, FL("Posting eWNI_SME_2040_COEX_IND Message to SME \n"));
+    limLog(pMac, LOGW, FL("Posting eWNI_SME_2040_COEX_IND Message to SME "));
     limSysProcessMmhMsgApi(pMac, &mmhMsg, ePROT);
 
     vos_mem_free(pFrm);
diff --git a/CORE/MAC/src/pe/lim/limProcessAssocReqFrame.c b/CORE/MAC/src/pe/lim/limProcessAssocReqFrame.c
index 996e56b..5728b30 100644
--- a/CORE/MAC/src/pe/lim/limProcessAssocReqFrame.c
+++ b/CORE/MAC/src/pe/lim/limProcessAssocReqFrame.c
@@ -247,14 +247,21 @@
         }
         else
         {
-            /* STA might have missed the assoc response,
-             * so it is sending assoc request frame again.
+#ifdef WLAN_FEATURE_11W
+            /* Do not send Assoc rsp for duplicate assoc req in case of PMF
+             * enabled STA, as driver needs to start SA Querry in this case
              */
-            limSendAssocRspMgmtFrame( pMac, eSIR_SUCCESS,
+            if (!pStaDs->rmfEnabled)
+#endif
+            {
+               /* STA might have missed the assoc response,
+                * so it is sending assoc request frame again.
+                */
+                limSendAssocRspMgmtFrame( pMac, eSIR_SUCCESS,
                     pStaDs->assocId, pStaDs->staAddr,
                     pStaDs->mlmStaContext.subType, pStaDs,
                     psessionEntry);
-            limLog(pMac, LOGE,
+                limLog(pMac, LOGE,
                     FL("DUT already received an assoc request frame "
                         "and STA is sending another assoc req.So, do not "
                         "Process sessionid: %d sys subType=%d for role=%d "
@@ -262,7 +269,8 @@
                     psessionEntry->peSessionId, subType,
                     psessionEntry->limSystemRole,
                     MAC_ADDR_ARRAY(pHdr->sa));
-            return;
+                return;
+            }
         }
     }
 
diff --git a/CORE/MAC/src/pe/lim/limProcessMessageQueue.c b/CORE/MAC/src/pe/lim/limProcessMessageQueue.c
index d47b0e8..cf8a6f5 100644
--- a/CORE/MAC/src/pe/lim/limProcessMessageQueue.c
+++ b/CORE/MAC/src/pe/lim/limProcessMessageQueue.c
@@ -578,7 +578,7 @@
         if ( DOT11F_FAILED( status ) )
         {
             limLog(pMac, LOGE, FL("Failed to parse a Beacons"
-                        "(%d):\n"), status);
+                        "(%d)"), status);
             vos_mem_free(pBeacon);
             return;
         }
@@ -616,7 +616,7 @@
         if ( DOT11F_FAILED( status ) )
         {
             limLog(pMac, LOGE, FL("Failed to parse a Probe"
-                        "Response (%d:\n"), status);
+                        "Response (%d"), status);
             vos_mem_free(pProbeResponse);
             return;
         }
@@ -2171,7 +2171,7 @@
                                                      pTdlsLinkEstablishParams->staIdx,
                                                      &sessionId))== NULL)
             {
-                limLog(pMac, LOGE, FL("session %u  does not exist.\n"), sessionId);
+                limLog(pMac, LOGE, FL("session %u  does not exist"), sessionId);
                 /* Still send the eWNI_SME_TDLS_LINK_ESTABLISH_RSP message to SME
                    with session id as zero and status as FAILURE so, that message
                    queued in SME queue can be freed to prevent the SME cmd buffer leak */
@@ -2205,7 +2205,7 @@
                                                      pTdlsChanSwitchParams->staIdx,
                                                      &sessionId))== NULL)
             {
-                limLog(pMac, LOGE, FL("session %u  does not exist.\n"), sessionId);
+                limLog(pMac, LOGE, FL("session %u  does not exist"), sessionId);
                 /* Still send the eWNI_SME_TDLS_LINK_ESTABLISH_RSP message to SME
                    with session id as zero and status as FAILURE so, that message
                    queued in SME queue can be freed to prevent the SME cmd buffer leak */
diff --git a/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c b/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c
index 042faff..6f50507 100644
--- a/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c
+++ b/CORE/MAC/src/pe/lim/limProcessMlmRspMessages.c
@@ -1203,7 +1203,7 @@
     pSirSmeAssocInd->wmmEnabledSta = pAssocInd->WmmStaInfoPresent;
 #ifdef WLAN_FEATURE_AP_HT40_24G
     pSirSmeAssocInd->HT40MHzIntoEnabledSta = pAssocInd->HT40MHzIntoPresent;
-    limLog(pMac, LOGW, FL("HT40MHzIntoPresent: %d \n"),
+    limLog(pMac, LOGW, FL("HT40MHzIntoPresent: %d"),
                  pSirSmeAssocInd->HT40MHzIntoEnabledSta);
 #endif
 } /*** end limAssocIndSerDes() ***/
diff --git a/CORE/MAC/src/pe/lim/limProcessTdls.c b/CORE/MAC/src/pe/lim/limProcessTdls.c
index 87eb15f..e949a53 100644
--- a/CORE/MAC/src/pe/lim/limProcessTdls.c
+++ b/CORE/MAC/src/pe/lim/limProcessTdls.c
@@ -1147,7 +1147,7 @@
                      ((pMac->lim.gLimTDLSUapsdMask & 0x08) >> 3);
 
         if(wlan_cfgGetInt(pMac, WNI_CFG_MAX_SP_LENGTH, &val) != eSIR_SUCCESS)
-           limLog(pMac, LOGE, FL("could not retrieve Max SP Length \n"));
+           limLog(pMac, LOGE, FL("could not retrieve Max SP Length"));
 
         tdlsSetupReq.WMMInfoStation.max_sp_length = (tANI_U8)val;
         tdlsSetupReq.WMMInfoStation.present = 1;
@@ -1625,7 +1625,7 @@
                      ((pMac->lim.gLimTDLSUapsdMask & 0x08) >> 3);
 
         if(wlan_cfgGetInt(pMac, WNI_CFG_MAX_SP_LENGTH, &val) != eSIR_SUCCESS)
-           limLog(pMac, LOGE, FL("could not retrieve Max SP Length \n"));
+           limLog(pMac, LOGE, FL("could not retrieve Max SP Length"));
 
         tdlsSetupRsp.WMMInfoStation.max_sp_length = (tANI_U8)val;
         tdlsSetupRsp.WMMInfoStation.present = 1;
diff --git a/CORE/MAC/src/pe/lim/limSendMessages.c b/CORE/MAC/src/pe/lim/limSendMessages.c
index 05480b2..0b48288 100644
--- a/CORE/MAC/src/pe/lim/limSendMessages.c
+++ b/CORE/MAC/src/pe/lim/limSendMessages.c
@@ -734,7 +734,7 @@
     bssIdx = psessionEntry->bssIdx;
 
     VOS_TRACE (VOS_MODULE_ID_PE,VOS_TRACE_LEVEL_INFO,
-               " Sending STOP OBSS cmd, bssid %d staid %d \n",
+               " Sending STOP OBSS cmd, bssid %d staid %d ",
                psessionEntry->bssIdx, psessionEntry->staId);
 
     msgQ.type = WDA_HT40_OBSS_STOP_SCAN_IND;
diff --git a/CORE/MAC/src/pe/lim/limSession.c b/CORE/MAC/src/pe/lim/limSession.c
index 2b7f3e3..58b7571 100644
--- a/CORE/MAC/src/pe/lim/limSession.c
+++ b/CORE/MAC/src/pe/lim/limSession.c
@@ -197,7 +197,7 @@
             return(&pMac->lim.gpSession[i]);
         }
     }
-    limLog(pMac, LOGE, FL("Session can not be created.. Reached Max permitted sessions \n "));
+    limLog(pMac, LOGE, FL("Session can not be created.. Reached Max permitted sessions "));
     return NULL;
 }
 
@@ -230,7 +230,7 @@
         }
     }
 
-    limLog(pMac, LOG4, FL("Session lookup fails for BSSID: \n "));
+    limLog(pMac, LOG4, FL("Session lookup fails for BSSID: "));
     limPrintMacAddr(pMac, bssid, LOG4);
     return(NULL);
 
@@ -279,7 +279,7 @@
 {
     if(sessionId >=  pMac->lim.maxBssId)
     {
-        limLog(pMac, LOGE, FL("Invalid sessionId: %d \n "), sessionId);
+        limLog(pMac, LOGE, FL("Invalid sessionId: %d "), sessionId);
         return(NULL);
     }
     if((pMac->lim.gpSession[sessionId].valid == TRUE))
@@ -529,7 +529,7 @@
       }
    }   
 
-   limLog(pMac, LOG1, FL("Session lookup fails for Peer StaId: \n "));
+   limLog(pMac, LOG1, FL("Session lookup fails for Peer StaId: "));
    limPrintMacAddr(pMac, sa, LOG1);
    return NULL;
 }
diff --git a/CORE/MAC/src/pe/lim/limSessionUtils.c b/CORE/MAC/src/pe/lim/limSessionUtils.c
index 3026a9d..023672f 100644
--- a/CORE/MAC/src/pe/lim/limSessionUtils.c
+++ b/CORE/MAC/src/pe/lim/limSessionUtils.c
@@ -253,7 +253,7 @@
 
     if(sessionId >=  pMac->lim.maxBssId)
     {
-        limLog(pMac, LOGE, FL("Invalid sessionId: %d \n "), sessionId);
+        limLog(pMac, LOGE, FL("Invalid sessionId: %d "), sessionId);
         return FALSE;
     }
 
diff --git a/CORE/SAP/src/sapApiLinkCntl.c b/CORE/SAP/src/sapApiLinkCntl.c
index c3f3cc5..d51daba 100644
--- a/CORE/SAP/src/sapApiLinkCntl.c
+++ b/CORE/SAP/src/sapApiLinkCntl.c
@@ -814,7 +814,7 @@
     if ( NULL == pBeaconStruct )
     {
         VOS_TRACE(VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_ERROR,
-                   FL("Unable to allocate memory \n"));
+                   FL("Unable to allocate memory "));
         return halStatus;
     }
 
diff --git a/CORE/SAP/src/sapChSelect.c b/CORE/SAP/src/sapChSelect.c
index eba3ee3..aa4c746 100644
--- a/CORE/SAP/src/sapChSelect.c
+++ b/CORE/SAP/src/sapChSelect.c
@@ -1350,7 +1350,7 @@
     if ( NULL == pBeaconStruct )
     {
         VOS_TRACE(VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH,
-                   "Unable to allocate memory in sapComputeSpectWeight\n");
+                   "Unable to allocate memory in sapComputeSpectWeight");
         return;
     }
     VOS_TRACE( VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH, "In %s, Computing spectral weight", __func__);
@@ -1628,7 +1628,7 @@
                 }
 
                 VOS_TRACE(VOS_MODULE_ID_SAP, VOS_TRACE_LEVEL_INFO_HIGH,
-                   "In %s, bssdes.ch_self=%d, bssdes.ch_ID=%d, bssdes.rssi=%d, SpectCh.bssCount=%d, pScanResult=%p, ChannelWidth %d, secondaryChanOffset %d, center frequency %d \n",
+                   "In %s, bssdes.ch_self=%d, bssdes.ch_ID=%d, bssdes.rssi=%d, SpectCh.bssCount=%d, pScanResult=%p, ChannelWidth %d, secondaryChanOffset %d, center frequency %d ",
                   __func__, pScanResult->BssDescriptor.channelIdSelf, pScanResult->BssDescriptor.channelId, pScanResult->BssDescriptor.rssi, pSpectCh->bssCount, pScanResult,pSpectCh->channelWidth,secondaryChannelOffset,centerFreq);
                  pSpectCh++;
                  break;
diff --git a/CORE/SME/inc/pmc.h b/CORE/SME/inc/pmc.h
index 3f235bf..5c75647 100644
--- a/CORE/SME/inc/pmc.h
+++ b/CORE/SME/inc/pmc.h
@@ -202,6 +202,7 @@
     v_BOOL_t    ImpsReqTimerFailed;
     tANI_U8     ImpsReqFailCnt;
     tANI_U8     ImpsReqTimerfailCnt;
+    tANI_U8     ImpsRspFailCnt;
 
 #ifdef FEATURE_WLAN_BATCH_SCAN
    /*HDD callback to be called after receiving SET BATCH SCAN RSP from FW*/
diff --git a/CORE/SME/src/pmc/pmcApi.c b/CORE/SME/src/pmc/pmcApi.c
index 45744f7..8499506 100644
--- a/CORE/SME/src/pmc/pmcApi.c
+++ b/CORE/SME/src/pmc/pmcApi.c
@@ -1345,16 +1345,32 @@
                     pmcLog(pMac, LOGE, FL("SSR Is in progress do not send "
                                           "exit imps req again"));
                 }
-                else if( eHAL_STATUS_SUCCESS ==
-                      pmcSendMessage(pMac, eWNI_PMC_EXIT_IMPS_REQ, NULL, 0) )
+                else if( (pMac->pmc.ImpsRspFailCnt <=
+                           BMPS_IMPS_FAILURE_REPORT_THRESHOLD))
                 {
-                    fRemoveCommand = eANI_BOOLEAN_FALSE;
-                    pMac->pmc.pmcState = REQUEST_FULL_POWER;
-                    pmcLog(pMac, LOGE, FL("eWNI_PMC_EXIT_IMPS_REQ sent again"
-                                          " to PE"));
+                    pMac->pmc.ImpsRspFailCnt++;
+                    if (eHAL_STATUS_SUCCESS ==
+                        pmcSendMessage(pMac, eWNI_PMC_EXIT_IMPS_REQ, NULL, 0) )
+                    {
+                        fRemoveCommand = eANI_BOOLEAN_FALSE;
+                        pMac->pmc.pmcState = REQUEST_FULL_POWER;
+                        pmcLog(pMac, LOGE, FL("eWNI_PMC_EXIT_IMPS_REQ sent again"
+                                              " to PE"));
+                        break;
+                    }
+                }
+                else
+                {
+                    pMac->pmc.ImpsRspFailCnt = 0;
+                    VOS_ASSERT(0);
                     break;
                 }
             }
+            else
+            {
+                pMac->pmc.ImpsRspFailCnt = 0;
+            }
+
             pmcEnterFullPowerState(pMac);
         break;
 
diff --git a/CORE/SYS/legacy/src/utils/src/parserApi.c b/CORE/SYS/legacy/src/utils/src/parserApi.c
index f5868b7..61fd233 100644
--- a/CORE/SYS/legacy/src/utils/src/parserApi.c
+++ b/CORE/SYS/legacy/src/utils/src/parserApi.c
@@ -141,17 +141,17 @@
 
 inline static void __printWMMParams(tpAniSirGlobal  pMac, tDot11fIEWMMParams *pWmm)
 {
-    limLog(pMac, LOG1, FL("WMM Parameters Received: \n"));
-    limLog(pMac, LOG1, FL("BE: aifsn %d, acm %d, aci %d, cwmin %d, cwmax %d, txop %d \n"),
+    limLog(pMac, LOG1, FL("WMM Parameters Received: "));
+    limLog(pMac, LOG1, FL("BE: aifsn %d, acm %d, aci %d, cwmin %d, cwmax %d, txop %d "),
            pWmm->acbe_aifsn, pWmm->acbe_acm, pWmm->acbe_aci, pWmm->acbe_acwmin, pWmm->acbe_acwmax, pWmm->acbe_txoplimit);
 
-    limLog(pMac, LOG1, FL("BK: aifsn %d, acm %d, aci %d, cwmin %d, cwmax %d, txop %d \n"),
+    limLog(pMac, LOG1, FL("BK: aifsn %d, acm %d, aci %d, cwmin %d, cwmax %d, txop %d "),
            pWmm->acbk_aifsn, pWmm->acbk_acm, pWmm->acbk_aci, pWmm->acbk_acwmin, pWmm->acbk_acwmax, pWmm->acbk_txoplimit);
 
-    limLog(pMac, LOG1, FL("VI: aifsn %d, acm %d, aci %d, cwmin %d, cwmax %d, txop %d \n"),
+    limLog(pMac, LOG1, FL("VI: aifsn %d, acm %d, aci %d, cwmin %d, cwmax %d, txop %d "),
            pWmm->acvi_aifsn, pWmm->acvi_acm, pWmm->acvi_aci, pWmm->acvi_acwmin, pWmm->acvi_acwmax, pWmm->acvi_txoplimit);
 
-    limLog(pMac, LOG1, FL("VO: aifsn %d, acm %d, aci %d, cwmin %d, cwmax %d, txop %d \n"),
+    limLog(pMac, LOG1, FL("VO: aifsn %d, acm %d, aci %d, cwmin %d, cwmax %d, txop %d "),
            pWmm->acvo_aifsn, pWmm->acvo_acm, pWmm->acvo_aci, pWmm->acvo_acwmin, pWmm->acvo_acwmax, pWmm->acvo_txoplimit);
 
     return;
@@ -204,7 +204,7 @@
              // & if no more IE, 
              bytesLeft <= (tANI_U16)( ieLen ) )
         {
-            dot11fLog( pMac, LOG3, FL("No IE (%d) in FindIELocation.\n"), EID );
+            dot11fLog( pMac, LOG3, FL("No IE (%d) in FindIELocation."), EID );
             return ret_val;
         }
         bytesLeft -= ieLen;
@@ -228,7 +228,7 @@
     if ( eSIR_SUCCESS != nSirStatus )
     {
         dot11fLog( pMac, LOGP, FL("Failed to retrieve the Capabilities b"
-                               "itfield from CFG (%d).\n"), nSirStatus );
+                               "itfield from CFG (%d)."), nSirStatus );
         return nSirStatus;
     }
 
@@ -255,7 +255,7 @@
     if ( eSIR_SUCCESS != nSirStatus )
     {
         dot11fLog( pMac, LOGP, FL("Failed to retrieve the Capabilities b"
-                               "itfield from CFG (%d).\n"), nSirStatus );
+                               "itfield from CFG (%d)."), nSirStatus );
         return nSirStatus;
     }
 
@@ -349,7 +349,7 @@
 
         if(len > MAX_SIZE_OF_TRIPLETS_IN_COUNTRY_IE)
         {
-            dot11fLog( pMac, LOGE, FL("len:%d is out of bounds, resetting.\n"), len);
+            dot11fLog( pMac, LOGE, FL("len:%d is out of bounds, resetting."), len);
             len = MAX_SIZE_OF_TRIPLETS_IN_COUNTRY_IE;
         }
 
@@ -441,7 +441,7 @@
 
         val  = psessionEntry->cfgProtection.fromllb;
         if(!val ){
-            dot11fLog( pMac, LOGE, FL("11B protection not enabled. Not populating ERP IE %d\n" ),val );
+            dot11fLog( pMac, LOGE, FL("11B protection not enabled. Not populating ERP IE %d" ),val );
             return eSIR_SUCCESS;
         }
 
@@ -501,7 +501,7 @@
         else
         {
             dot11fLog( pMac, LOGE, FL("no session context exists while"
-                        " populating Operational Rate Set\n"));
+                        " populating Operational Rate Set"));
         }
     }
     else if ( HIGHEST_24GHZ_CHANNEL_NUM >= nChannelNum )
@@ -673,32 +673,32 @@
                               tDot11fIEVHTCaps *pDot11f)
 {
 #ifdef DUMP_MGMT_CNTNTS
-    limLog(pMac, LOG1, FL("maxMPDULen (2): %d\n"), pDot11f->maxMPDULen);
-    limLog(pMac, LOG1, FL("supportedChannelWidthSet (2): %d\n"), pDot11f->supportedChannelWidthSet);
-    limLog(pMac, LOG1, FL("ldpcCodingCap (1): %d\n"), pDot11f->ldpcCodingCap);
-    limLog(pMac, LOG1, FL("shortGI80MHz (1): %d\n"), pDot11f->shortGI80MHz);
-    limLog(pMac, LOG1, FL("shortGI160and80plus80MHz (1): %d\n"), pDot11f->shortGI160and80plus80MHz);
-    limLog(pMac, LOG1, FL("txSTBC (1): %d\n"), pDot11f->txSTBC);
-    limLog(pMac, LOG1, FL("rxSTBC (3): %d\n"), pDot11f->rxSTBC);
-    limLog(pMac, LOG1, FL("suBeamFormerCap (1): %d\n"), pDot11f->suBeamFormerCap);
-    limLog(pMac, LOG1, FL("suBeamformeeCap (1): %d\n"), pDot11f->suBeamformeeCap);
-    limLog(pMac, LOG1, FL("csnofBeamformerAntSup (3): %d\n"), pDot11f->csnofBeamformerAntSup);
-    limLog(pMac, LOG1, FL("numSoundingDim (3): %d\n"), pDot11f->numSoundingDim);
-    limLog(pMac, LOG1, FL("muBeamformerCap (1): %d\n"), pDot11f->muBeamformerCap);
-    limLog(pMac, LOG1, FL("muBeamformeeCap (1): %d\n"), pDot11f->muBeamformeeCap);
-    limLog(pMac, LOG1, FL("vhtTXOPPS (1): %d\n"), pDot11f->vhtTXOPPS);
-    limLog(pMac, LOG1, FL("htcVHTCap (1): %d\n"), pDot11f->htcVHTCap);
-    limLog(pMac, LOG1, FL("maxAMPDULenExp (3): %d\n"), pDot11f->maxAMPDULenExp);
-    limLog(pMac, LOG1, FL("vhtLinkAdaptCap (2): %d\n"), pDot11f->vhtLinkAdaptCap);
-    limLog(pMac, LOG1, FL("rxAntPattern (1): %d\n"), pDot11f->vhtLinkAdaptCap);
-    limLog(pMac, LOG1, FL("txAntPattern (1): %d\n"), pDot11f->vhtLinkAdaptCap);
-    limLog(pMac, LOG1, FL("reserved1 (2): %d\n"), pDot11f->reserved1);
-    limLog(pMac, LOG1, FL("rxMCSMap (16): %d\n"), pDot11f->rxMCSMap);
-    limLog(pMac, LOG1, FL("rxHighSupDataRate (13): %d\n"), pDot11f->rxHighSupDataRate);
-    limLog(pMac, LOG1, FL("reserve (3): %d\n"), pDot11f->reserved2);
-    limLog(pMac, LOG1, FL("txMCSMap (16): %d\n"), pDot11f->txMCSMap);
-    limLog(pMac, LOG1, FL("txSupDataRate (13): %d\n"), pDot11f->txSupDataRate);
-    limLog(pMac, LOG1, FL("reserv (3): %d\n"), pDot11f->reserved3);
+    limLog(pMac, LOG1, FL("maxMPDULen (2): %d"), pDot11f->maxMPDULen);
+    limLog(pMac, LOG1, FL("supportedChannelWidthSet (2): %d"), pDot11f->supportedChannelWidthSet);
+    limLog(pMac, LOG1, FL("ldpcCodingCap (1): %d"), pDot11f->ldpcCodingCap);
+    limLog(pMac, LOG1, FL("shortGI80MHz (1): %d"), pDot11f->shortGI80MHz);
+    limLog(pMac, LOG1, FL("shortGI160and80plus80MHz (1): %d"), pDot11f->shortGI160and80plus80MHz);
+    limLog(pMac, LOG1, FL("txSTBC (1): %d"), pDot11f->txSTBC);
+    limLog(pMac, LOG1, FL("rxSTBC (3): %d"), pDot11f->rxSTBC);
+    limLog(pMac, LOG1, FL("suBeamFormerCap (1): %d"), pDot11f->suBeamFormerCap);
+    limLog(pMac, LOG1, FL("suBeamformeeCap (1): %d"), pDot11f->suBeamformeeCap);
+    limLog(pMac, LOG1, FL("csnofBeamformerAntSup (3): %d"), pDot11f->csnofBeamformerAntSup);
+    limLog(pMac, LOG1, FL("numSoundingDim (3): %d"), pDot11f->numSoundingDim);
+    limLog(pMac, LOG1, FL("muBeamformerCap (1): %d"), pDot11f->muBeamformerCap);
+    limLog(pMac, LOG1, FL("muBeamformeeCap (1): %d"), pDot11f->muBeamformeeCap);
+    limLog(pMac, LOG1, FL("vhtTXOPPS (1): %d"), pDot11f->vhtTXOPPS);
+    limLog(pMac, LOG1, FL("htcVHTCap (1): %d"), pDot11f->htcVHTCap);
+    limLog(pMac, LOG1, FL("maxAMPDULenExp (3): %d"), pDot11f->maxAMPDULenExp);
+    limLog(pMac, LOG1, FL("vhtLinkAdaptCap (2): %d"), pDot11f->vhtLinkAdaptCap);
+    limLog(pMac, LOG1, FL("rxAntPattern (1): %d"), pDot11f->vhtLinkAdaptCap);
+    limLog(pMac, LOG1, FL("txAntPattern (1): %d"), pDot11f->vhtLinkAdaptCap);
+    limLog(pMac, LOG1, FL("reserved1 (2): %d"), pDot11f->reserved1);
+    limLog(pMac, LOG1, FL("rxMCSMap (16): %d"), pDot11f->rxMCSMap);
+    limLog(pMac, LOG1, FL("rxHighSupDataRate (13): %d"), pDot11f->rxHighSupDataRate);
+    limLog(pMac, LOG1, FL("reserve (3): %d"), pDot11f->reserved2);
+    limLog(pMac, LOG1, FL("txMCSMap (16): %d"), pDot11f->txMCSMap);
+    limLog(pMac, LOG1, FL("txSupDataRate (13): %d"), pDot11f->txSupDataRate);
+    limLog(pMac, LOG1, FL("reserv (3): %d"), pDot11f->reserved3);
 #endif /* DUMP_MGMT_CNTNTS */
 }
 
@@ -706,10 +706,10 @@
                               tDot11fIEVHTOperation *pDot11f)
 {
 #ifdef DUMP_MGMT_CNTNTS
-    limLog(pMac, LOG1, FL("chanWidth : %d\n"), pDot11f->chanWidth);
-    limLog(pMac, LOG1, FL("chanCenterFreqSeg1: %d\n"), pDot11f->chanCenterFreqSeg1);
-    limLog(pMac, LOG1, FL("chanCenterFreqSeg2: %d\n"), pDot11f->chanCenterFreqSeg2);
-    limLog(pMac, LOG1, FL("basicMCSSet: %d\n"), pDot11f->basicMCSSet);
+    limLog(pMac, LOG1, FL("chanWidth : %d"), pDot11f->chanWidth);
+    limLog(pMac, LOG1, FL("chanCenterFreqSeg1: %d"), pDot11f->chanCenterFreqSeg1);
+    limLog(pMac, LOG1, FL("chanCenterFreqSeg2: %d"), pDot11f->chanCenterFreqSeg2);
+    limLog(pMac, LOG1, FL("basicMCSSet: %d"), pDot11f->basicMCSSet);
 #endif /* DUMP_MGMT_CNTNTS */
 }
 
@@ -717,11 +717,11 @@
                               tDot11fIEVHTExtBssLoad *pDot11f)
 {
 #ifdef DUMP_MGMT_CNTNTS
-    limLog(pMac, LOG1, FL("muMIMOCapStaCount : %d\n"), pDot11f->muMIMOCapStaCount);
-    limLog(pMac, LOG1, FL("ssUnderUtil: %d\n"), pDot11f->ssUnderUtil);
-    limLog(pMac, LOG1, FL("FortyMHzUtil: %d\n"), pDot11f->FortyMHzUtil);
-    limLog(pMac, LOG1, FL("EightyMHzUtil: %d\n"), pDot11f->EightyMHzUtil);
-    limLog(pMac, LOG1, FL("OneSixtyMHzUtil: %d\n"), pDot11f->OneSixtyMHzUtil);
+    limLog(pMac, LOG1, FL("muMIMOCapStaCount : %d"), pDot11f->muMIMOCapStaCount);
+    limLog(pMac, LOG1, FL("ssUnderUtil: %d"), pDot11f->ssUnderUtil);
+    limLog(pMac, LOG1, FL("FortyMHzUtil: %d"), pDot11f->FortyMHzUtil);
+    limLog(pMac, LOG1, FL("EightyMHzUtil: %d"), pDot11f->EightyMHzUtil);
+    limLog(pMac, LOG1, FL("OneSixtyMHzUtil: %d"), pDot11f->OneSixtyMHzUtil);
 #endif /* DUMP_MGMT_CNTNTS */
 }
 
@@ -730,10 +730,10 @@
                                tDot11fIEOperatingMode *pDot11f)
 {
 #ifdef DUMP_MGMT_CNTNTS
-    limLog(pMac, LOG1, FL("ChanWidth : %d\n"), pDot11f->chanWidth);
-    limLog(pMac, LOG1, FL("reserved: %d\n"), pDot11f->reserved);
-    limLog(pMac, LOG1, FL("rxNSS: %d\n"), pDot11f->rxNSS);
-    limLog(pMac, LOG1, FL("rxNSS Type: %d\n"), pDot11f->rxNSSType);
+    limLog(pMac, LOG1, FL("ChanWidth : %d"), pDot11f->chanWidth);
+    limLog(pMac, LOG1, FL("reserved: %d"), pDot11f->reserved);
+    limLog(pMac, LOG1, FL("rxNSS: %d"), pDot11f->rxNSS);
+    limLog(pMac, LOG1, FL("rxNSS Type: %d"), pDot11f->rxNSSType);
 #endif /* DUMP_MGMT_CNTNTS */
 }
 
@@ -1099,7 +1099,7 @@
     if (NULL == psessionEntry)
     {
         PELOGE(limLog(pMac, LOG1,
-                FL("Invalid session entry in PopulateDot11fHTInfo()\n"));)
+                FL("Invalid session entry in PopulateDot11fHTInfo()"));)
         return eSIR_FAILURE;
     }
 
@@ -1116,7 +1116,7 @@
     if (psessionEntry == NULL)
     {
         PELOGE(limLog(pMac, LOG1,
-            FL("Keep the value retrieved from cfg for secondary channel offset and recommended Tx Width set\n"));)
+            FL("Keep the value retrieved from cfg for secondary channel offset and recommended Tx Width set"));)
     }
     else
     {
@@ -1313,7 +1313,7 @@
     tANI_U32  val = 0;
 
     if(wlan_cfgGetInt(pMac, WNI_CFG_MAX_SP_LENGTH, &val) != eSIR_SUCCESS) 
-        PELOGE(limLog(pMac, LOGE, FL("could not retrieve Max SP Length \n"));)
+        PELOGE(limLog(pMac, LOGE, FL("could not retrieve Max SP Length "));)
    
     pDot11f->more_data_ack = 0;
     pDot11f->max_sp_length = (tANI_U8)val;
@@ -1348,12 +1348,12 @@
         if ( DOT11F_FAILED( status ) )
         {
             dot11fLog( pMac, LOGE, FL("Parse failure in PopulateDot11fRS"
-                                   "N (0x%08x).\n"),
+                                   "N (0x%08x)."),
                     status );
             return eSIR_FAILURE;
         }
         dot11fLog( pMac, LOG2, FL("dot11fUnpackIeRSN returned 0x%08x in "
-                               "PopulateDot11fRSN.\n"), status );
+                               "PopulateDot11fRSN."), status );
         }
 
     }
@@ -1405,12 +1405,12 @@
                                         pDot11f );
             if ( DOT11F_FAILED( status ) )
             {
-                dot11fLog( pMac, LOGE, FL("Parse failure in PopulateDot11fWAPI (0x%08x).\n"),
+                dot11fLog( pMac, LOGE, FL("Parse failure in PopulateDot11fWAPI (0x%08x)."),
                         status );
                 return eSIR_FAILURE;
             }
             dot11fLog( pMac, LOG2, FL("dot11fUnpackIeRSN returned 0x%08x in "
-                               "PopulateDot11fWAPI.\n"), status );
+                               "PopulateDot11fWAPI."), status );
         }
     }
 
@@ -1540,7 +1540,7 @@
         }
         else
         {
-            dot11fLog( pMac, LOGE, FL("no session context exists while populating Operational Rate Set\n"));
+            dot11fLog( pMac, LOGE, FL("no session context exists while populating Operational Rate Set"));
             nRates = 0;
         }
     }
@@ -1685,7 +1685,7 @@
     {
         dot11fLog( pMac, LOG1, FL("Failed to get the STAID in Populat"
                                   "eDot11fTPCReport; limGetMgmtStaid "
-                                  "returned status %d.\n"),
+                                  "returned status %d."),
                    nSirStatus );
         return eSIR_FAILURE;
     }
@@ -1810,7 +1810,7 @@
     pInfo->acbe_uapsd = LIM_UAPSD_GET(ACBE, pMac->lim.gUapsdPerAcBitmask);
 
     if(wlan_cfgGetInt(pMac, WNI_CFG_MAX_SP_LENGTH, &val) != eSIR_SUCCESS) 
-        PELOGE(limLog(pMac, LOGE, FL("could not retrieve Max SP Length \n"));)
+        PELOGE(limLog(pMac, LOGE, FL("could not retrieve Max SP Length "));)
     pInfo->max_sp_length = (tANI_U8)val;
     pInfo->present = 1;
 }
@@ -1906,7 +1906,7 @@
         if ( DOT11F_FAILED( status ) )
         {
             dot11fLog( pMac, LOGE, FL("Parse failure in PopulateDot11fWP"
-                                   "A (0x%08x).\n"),
+                                   "A (0x%08x)."),
                     status );
             return eSIR_FAILURE;
         }
@@ -1952,12 +1952,12 @@
     if (wlan_cfgGetInt(pMac, WNI_CFG_PROPRIETARY_ANI_FEATURES_ENABLED, &val)
         != eSIR_SUCCESS)
     {
-        limLog(pMac, LOGP, FL("could not retrieve PropFeature enabled flag\n"));
+        limLog(pMac, LOGP, FL("could not retrieve PropFeature enabled flag"));
         return eSIR_FAILURE;
     }
     if (wlan_cfgGetInt(pMac, WNI_CFG_PROP_CAPABILITY, &val) != eSIR_SUCCESS)
     {
-        limLog(pMac, LOGP, FL("could not retrieve PROP_CAPABLITY flag\n"));
+        limLog(pMac, LOGP, FL("could not retrieve PROP_CAPABLITY flag"));
         return eSIR_FAILURE;
     }
 
@@ -1982,14 +1982,14 @@
     status = dot11fUnpackProbeRequest(pMac, pFrame, nFrame, &pr);
     if ( DOT11F_FAILED( status ) )
     {
-        limLog(pMac, LOGE, FL("Failed to parse a Probe Request (0x%08x, %d bytes):\n"),
+        limLog(pMac, LOGE, FL("Failed to parse a Probe Request (0x%08x, %d bytes)"),
                   status, nFrame);
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
         return eSIR_FAILURE;
     }
     else if ( DOT11F_WARNED( status ) )
     {
-      limLog( pMac, LOGW, FL("There were warnings while unpacking a Probe Request (0x%08x, %d bytes):\n"),
+      limLog( pMac, LOGW, FL("There were warnings while unpacking a Probe Request (0x%08x, %d bytes)"),
                  status, nFrame );
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
     }
@@ -1997,7 +1997,7 @@
     // & "transliterate" from a 'tDot11fProbeRequestto' a 'tSirProbeReq'...
     if ( ! pr.SSID.present )
     {
-        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE SSID not present!\n"));)
+        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE SSID not present!"));)
     }
     else
     {
@@ -2007,7 +2007,7 @@
 
     if ( ! pr.SuppRates.present )
     {
-        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE Supported Rates not present!\n"));)
+        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE Supported Rates not present!"));)
         return eSIR_FAILURE;
     }
     else
@@ -2095,7 +2095,7 @@
                              RSNIE_CAPABILITY_LEN, DEFAULT_RSNIE_CAP_VAL );
                 *nMissingRsnBytes = RSNIE_CAPABILITY_LEN;
                 limLog(pMac, LOG1,
-                       FL("Added RSN Capability to the RSNIE as 0x00 0x00\n"));
+                       FL("Added RSN Capability to the RSNIE as 0x00 0x00"));
 
                 return eHAL_STATUS_SUCCESS;
             }
@@ -2123,7 +2123,7 @@
         status = eHAL_STATUS_SUCCESS;
     if (!HAL_STATUS_SUCCESS(status))
     {
-        limLog(pMac, LOGE, FL("Failed to allocate memory\n") );
+        limLog(pMac, LOGE, FL("Failed to allocate memory") );
         return eSIR_FAILURE;
     }
 
@@ -2133,7 +2133,7 @@
     status = dot11fUnpackProbeResponse( pMac, pFrame, nFrame, pr );
     if ( DOT11F_FAILED( status ) )
     {
-        limLog(pMac, LOGE, FL("Failed to parse a Probe Response (0x%08x, %d bytes):\n"),
+        limLog(pMac, LOGE, FL("Failed to parse a Probe Response (0x%08x, %d bytes)"),
                   status, nFrame);
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
         vos_mem_vfree(pr);
@@ -2141,7 +2141,7 @@
     }
     else if ( DOT11F_WARNED( status ) )
     {
-      limLog( pMac, LOGW, FL("There were warnings while unpacking a Probe Response (0x%08x, %d bytes):\n"),
+      limLog( pMac, LOGW, FL("There were warnings while unpacking a Probe Response (0x%08x, %d bytes)"),
                  status, nFrame );
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
     }
@@ -2175,7 +2175,7 @@
 
     if ( ! pr->SSID.present )
     {
-        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE SSID not present!\n"));)
+        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE SSID not present!"));)
     }
     else
     {
@@ -2185,7 +2185,7 @@
 
     if ( ! pr->SuppRates.present )
     {
-        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE Supported Rates not present!\n"));)
+        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE Supported Rates not present!"));)
     }
     else
     {
@@ -2287,14 +2287,14 @@
     {
         pProbeResp->wmeEdcaPresent = 1;
         ConvertWMMParams( pMac, &pProbeResp->edcaParams, &pr->WMMParams );
-        PELOG1(limLog(pMac, LOG1, FL("WMM Parameter present in Probe Response Frame!\n"));
+        PELOG1(limLog(pMac, LOG1, FL("WMM Parameter present in Probe Response Frame!"));
                                 __printWMMParams(pMac, &pr->WMMParams);)
     }
 
     if ( pr->WMMInfoAp.present )
     {
         pProbeResp->wmeInfoPresent = 1;
-        PELOG1(limLog(pMac, LOG1, FL("WMM Information Element present in Probe Response Frame!\n"));)
+        PELOG1(limLog(pMac, LOG1, FL("WMM Information Element present in Probe Response Frame!"));)
     }
 
     if ( pr->WMMCaps.present )
@@ -2318,7 +2318,7 @@
                        sizeof(tANI_U16) );
         pProbeResp->mdie[2] = ((pr->MobilityDomain.overDSCap << 0) | (pr->MobilityDomain.resourceReqCap << 1));
 #ifdef WLAN_FEATURE_VOWIFI_11R_DEBUG
-        limLog(pMac, LOG2, FL("mdie=%02x%02x%02x\n"), (unsigned int)pProbeResp->mdie[0],
+        limLog(pMac, LOG2, FL("mdie=%02x%02x%02x"), (unsigned int)pProbeResp->mdie[0],
                (unsigned int)pProbeResp->mdie[1], (unsigned int)pProbeResp->mdie[2]);
 #endif
     }
@@ -2370,7 +2370,7 @@
         status = eHAL_STATUS_SUCCESS;
     if (!HAL_STATUS_SUCCESS(status))
     {
-        limLog(pMac, LOGE, FL("Failed to allocate memory\n") );
+        limLog(pMac, LOGE, FL("Failed to allocate memory") );
         return eSIR_FAILURE;
     }
         // Zero-init our [out] parameter,
@@ -2381,7 +2381,7 @@
     status = dot11fUnpackAssocRequest( pMac, pFrame, nFrame, ar );
     if ( DOT11F_FAILED( status ) )
     {
-        limLog(pMac, LOGE, FL("Failed to parse an Association Request (0x%08x, %d bytes):\n"),
+        limLog(pMac, LOGE, FL("Failed to parse an Association Request (0x%08x, %d bytes):"),
                   status, nFrame);
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
         vos_mem_free(ar);
@@ -2389,7 +2389,7 @@
     }
     else if ( DOT11F_WARNED( status ) )
     {
-      limLog( pMac, LOGW, FL("There were warnings while unpacking an Assoication Request (0x%08x, %d bytes):\n"),
+      limLog( pMac, LOGW, FL("There were warnings while unpacking an Assoication Request (0x%08x, %d bytes):"),
                  status, nFrame );
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
     }
@@ -2515,14 +2515,14 @@
 
     if ( ! pAssocReq->ssidPresent )
     {
-        PELOG2(limLog(pMac, LOG2, FL("Received Assoc without SSID IE.\n"));)
+        PELOG2(limLog(pMac, LOG2, FL("Received Assoc without SSID IE."));)
         vos_mem_free(ar);
         return eSIR_FAILURE;
     }
 
     if ( !pAssocReq->suppRatesPresent && !pAssocReq->extendedRatesPresent )
     {
-        PELOG2(limLog(pMac, LOG2, FL("Received Assoc without supp rate IE.\n"));)
+        PELOG2(limLog(pMac, LOG2, FL("Received Assoc without supp rate IE."));)
         vos_mem_free(ar);
         return eSIR_FAILURE;
     }
@@ -2531,13 +2531,13 @@
     if ( ar->VHTCaps.present )
     {
         vos_mem_copy( &pAssocReq->VHTCaps, &ar->VHTCaps, sizeof( tDot11fIEVHTCaps ) );
-        limLog( pMac, LOGW, FL("Received Assoc Req with VHT Cap\n"));
+        limLog( pMac, LOGW, FL("Received Assoc Req with VHT Cap"));
         limLogVHTCap( pMac, &pAssocReq->VHTCaps);
     }
     if ( ar->OperatingMode.present )
     {
         vos_mem_copy( &pAssocReq->operMode, &ar->OperatingMode, sizeof (tDot11fIEOperatingMode));
-        limLog( pMac, LOGW, FL("Received Assoc Req with Operating Mode IE\n"));
+        limLog( pMac, LOGW, FL("Received Assoc Req with Operating Mode IE"));
         limLogOperatingMode( pMac, &pAssocReq->operMode);
     }
 #endif
@@ -2563,14 +2563,14 @@
     status = dot11fUnpackAssocResponse( pMac, pFrame, nFrame, &ar);
     if ( DOT11F_FAILED( status ) )
     {
-        limLog(pMac, LOGE, FL("Failed to parse an Association Response (0x%08x, %d bytes):\n"),
+        limLog(pMac, LOGE, FL("Failed to parse an Association Response (0x%08x, %d bytes)"),
                   status, nFrame);
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
         return eSIR_FAILURE;
     }
     else if ( DOT11F_WARNED( status ) )
     {
-        limLog( pMac, LOGW, FL("There were warnings while unpacking an Association Response (0x%08x, %d bytes):\n"),
+        limLog( pMac, LOGW, FL("There were warnings while unpacking an Association Response (0x%08x, %d bytes)"),
                    status, nFrame );
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
     }
@@ -2601,7 +2601,7 @@
     if ( ! ar.SuppRates.present )
     {
         pAssocRsp->suppRatesPresent = 0;
-        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE Supported Rates not present!\n"));)
+        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE Supported Rates not present!"));)
     }
     else
     {
@@ -2748,14 +2748,14 @@
     status = dot11fUnpackReAssocRequest( pMac, pFrame, nFrame, &ar );
     if ( DOT11F_FAILED( status ) )
     {
-        limLog(pMac, LOGE, FL("Failed to parse a Re-association Request (0x%08x, %d bytes):\n"),
+        limLog(pMac, LOGE, FL("Failed to parse a Re-association Request (0x%08x, %d bytes)"),
                   status, nFrame);
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
         return eSIR_FAILURE;
     }
     else if ( DOT11F_WARNED( status ) )
     {
-      limLog( pMac, LOGW, FL("There were warnings while unpacking a Re-association Request (0x%08x, %d bytes):\n"),
+      limLog( pMac, LOGW, FL("There were warnings while unpacking a Re-association Request (0x%08x, %d bytes)"),
                  status, nFrame );
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
     }
@@ -2861,13 +2861,13 @@
 
     if ( ! pAssocReq->ssidPresent )
     {
-        PELOG2(limLog(pMac, LOG2, FL("Received Assoc without SSID IE.\n"));)
+        PELOG2(limLog(pMac, LOG2, FL("Received Assoc without SSID IE."));)
         return eSIR_FAILURE;
     }
 
     if ( ! pAssocReq->suppRatesPresent && ! pAssocReq->extendedRatesPresent )
     {
-        PELOG2(limLog(pMac, LOG2, FL("Received Assoc without supp rate IE.\n"));)
+        PELOG2(limLog(pMac, LOG2, FL("Received Assoc without supp rate IE."));)
         return eSIR_FAILURE;
     }
 
@@ -2903,7 +2903,7 @@
     if ( ar.OperatingMode.present )
     {
         vos_mem_copy( &pAssocReq->operMode, &ar.OperatingMode, sizeof( tDot11fIEOperatingMode  ) );
-        limLog( pMac, LOGW, FL("Received Assoc Req with Operating Mode IE\n"));
+        limLog( pMac, LOGW, FL("Received Assoc Req with Operating Mode IE"));
         limLogOperatingMode( pMac, &pAssocReq->operMode);
     }
 #endif
@@ -2939,7 +2939,7 @@
         status = eHAL_STATUS_SUCCESS;
     if (!HAL_STATUS_SUCCESS(status))
     {
-        limLog(pMac, LOGE, FL("Failed to allocate memory\n") );
+        limLog(pMac, LOGE, FL("Failed to allocate memory") );
         return eSIR_FAILURE;
     }
     // delegate to the framesc-generated code,
@@ -2947,14 +2947,14 @@
 
     if ( DOT11F_FAILED( status ) )
     {
-        limLog(pMac, LOGE, FL("Failed to parse Beacon IEs (0x%08x, %d bytes):\n"),
+        limLog(pMac, LOGE, FL("Failed to parse Beacon IEs (0x%08x, %d bytes)"),
                   status, nPayload);
         vos_mem_free(pBies);
         return eSIR_FAILURE;
     }
     else if ( DOT11F_WARNED( status ) )
     {
-      limLog( pMac, LOGW, FL("There were warnings while unpacking Beacon IEs (0x%08x, %d bytes):\n"),
+      limLog( pMac, LOGW, FL("There were warnings while unpacking Beacon IEs (0x%08x, %d bytes)"),
                  status, nPayload );
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pPayload, nPayload);)
     }
@@ -2962,7 +2962,7 @@
     // & "transliterate" from a 'tDot11fBeaconIEs' to a 'eseBcnReportMandatoryIe'...
     if ( !pBies->SSID.present )
     {
-        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE SSID not present!\n"));)
+        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE SSID not present!"));)
     }
     else
     {
@@ -2974,7 +2974,7 @@
 
     if ( !pBies->SuppRates.present )
     {
-        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE Supported Rates not present!\n"));)
+        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE Supported Rates not present!"));)
     }
     else
     {
@@ -3233,7 +3233,7 @@
         status = eHAL_STATUS_SUCCESS;
     if (!HAL_STATUS_SUCCESS(status))
     {
-        limLog(pMac, LOGE, FL("Failed to allocate memory\n") );
+        limLog(pMac, LOGE, FL("Failed to allocate memory") );
         return eSIR_FAILURE;
     }
     // delegate to the framesc-generated code,
@@ -3241,7 +3241,7 @@
 
     if ( DOT11F_FAILED( status ) )
     {
-        limLog(pMac, LOGE, FL("Failed to parse Beacon IEs (0x%08x, %d bytes):\n"),
+        limLog(pMac, LOGE, FL("Failed to parse Beacon IEs (0x%08x, %d bytes)"),
                   status, nPayload);
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pPayload, nPayload);)
         vos_mem_free(pBies);
@@ -3249,7 +3249,7 @@
     }
     else if ( DOT11F_WARNED( status ) )
     {
-      limLog( pMac, LOGW, FL("There were warnings while unpacking Beacon IEs (0x%08x, %d bytes):\n"),
+      limLog( pMac, LOGW, FL("There were warnings while unpacking Beacon IEs (0x%08x, %d bytes)"),
                  status, nPayload );
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pPayload, nPayload);)
     }
@@ -3257,7 +3257,7 @@
     // & "transliterate" from a 'tDot11fBeaconIEs' to a 'tSirProbeRespBeacon'...
     if ( ! pBies->SSID.present )
     {
-        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE SSID not present!\n"));)
+        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE SSID not present!"));)
     }
     else
     {
@@ -3267,7 +3267,7 @@
 
     if ( ! pBies->SuppRates.present )
     {
-        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE Supported Rates not present!\n"));)
+        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE Supported Rates not present!"));)
     }
     else
     {
@@ -3478,7 +3478,7 @@
         status = eHAL_STATUS_SUCCESS;
     if (!HAL_STATUS_SUCCESS(status))
     {
-        limLog(pMac, LOGE, FL("Failed to allocate memory\n") );
+        limLog(pMac, LOGE, FL("Failed to allocate memory") );
         return eSIR_FAILURE;
     }
 
@@ -3491,7 +3491,7 @@
     status = dot11fUnpackBeacon( pMac, pPayload, nPayload, pBeacon );
     if ( DOT11F_FAILED( status ) )
     {
-        limLog(pMac, LOGE, FL("Failed to parse Beacon IEs (0x%08x, %d bytes):\n"),
+        limLog(pMac, LOGE, FL("Failed to parse Beacon IEs (0x%08x, %d bytes)"),
                   status, nPayload);
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pPayload, nPayload);)
         vos_mem_vfree(pBeacon);
@@ -3499,7 +3499,7 @@
     }
     else if ( DOT11F_WARNED( status ) )
     {
-      limLog( pMac, LOGW, FL("There were warnings while unpacking Beacon IEs (0x%08x, %d bytes):\n"),
+      limLog( pMac, LOGW, FL("There were warnings while unpacking Beacon IEs (0x%08x, %d bytes)"),
                  status, nPayload );
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pPayload, nPayload);)
     }
@@ -3532,7 +3532,7 @@
  
     if ( ! pBeacon->SSID.present )
     {
-        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE SSID not present!\n"));)
+        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE SSID not present!"));)
     }
     else
     {
@@ -3542,7 +3542,7 @@
 
     if ( ! pBeacon->SuppRates.present )
     {
-        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE Supported Rates not present!\n"));)
+        PELOGW(limLog(pMac, LOGW, FL("Mandatory IE Supported Rates not present!"));)
     }
     else
     {
@@ -3677,14 +3677,14 @@
     {
         pBeaconStruct->wmeEdcaPresent = 1;
         ConvertWMMParams( pMac, &pBeaconStruct->edcaParams, &pBeacon->WMMParams );
-        PELOG1(limLog(pMac, LOG1, FL("WMM Parameter present in Beacon Frame!\n"));
+        PELOG1(limLog(pMac, LOG1, FL("WMM Parameter present in Beacon Frame!"));
         __printWMMParams(pMac, &pBeacon->WMMParams); )
     }
 
     if ( pBeacon->WMMInfoAp.present )
     {
         pBeaconStruct->wmeInfoPresent = 1;
-        PELOG1(limLog(pMac, LOG1, FL("WMM Info present in Beacon Frame!\n"));)
+        PELOG1(limLog(pMac, LOG1, FL("WMM Info present in Beacon Frame!"));)
     }
 
     if ( pBeacon->WMMCaps.present )
@@ -3775,14 +3775,14 @@
     status = dot11fUnpackAuthentication( pMac, pFrame, nFrame, &auth );
     if ( DOT11F_FAILED( status ) )
     {
-        limLog(pMac, LOGE, FL("Failed to parse an Authentication frame (0x%08x, %d bytes):\n"),
+        limLog(pMac, LOGE, FL("Failed to parse an Authentication frame (0x%08x, %d bytes)"),
                   status, nFrame);
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
         return eSIR_FAILURE;
     }
     else if ( DOT11F_WARNED( status ) )
     {
-      limLog( pMac, LOGW, FL("There were warnings while unpacking an Authentication frame (0x%08x, %d bytes):\n"),
+      limLog( pMac, LOGW, FL("There were warnings while unpacking an Authentication frame (0x%08x, %d bytes)"),
                  status, nFrame );
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
     }
@@ -3847,7 +3847,7 @@
     if ( DOT11F_FAILED( status ) )
     {
         limLog(pMac, LOGE, FL("Failed to parse an Add TS Request f"
-                                 "rame (0x%08x, %d bytes):\n"),
+                                 "rame (0x%08x, %d bytes)"),
                   status, nFrame);
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
         return eSIR_FAILURE;
@@ -3856,7 +3856,7 @@
     {
         limLog( pMac, LOGW, FL("There were warnings while unpackin"
                                   "g an Add TS Request frame (0x%08x,"
-                                  "%d bytes):\n"),
+                                  "%d bytes)"),
                    status, nFrame );
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
     }
@@ -3873,7 +3873,7 @@
         }
         else
         {
-            limLog( pMac, LOGE, FL("Mandatory TSPEC element missing in Add TS Request.\n") );
+            limLog( pMac, LOGE, FL("Mandatory TSPEC element missing in Add TS Request.") );
             return eSIR_FAILURE;
         }
 
@@ -3885,7 +3885,7 @@
             {
                 if ( eSIR_SUCCESS != ConvertTCLAS( pMac, &( pAddTs->tclasInfo[i] ), &( addts.TCLAS[i] ) ) )
                 {
-                    limLog( pMac, LOGE, FL("Failed to convert a TCLAS IE.\n") );
+                    limLog( pMac, LOGE, FL("Failed to convert a TCLAS IE.") );
                     return eSIR_FAILURE;
                 }
             }
@@ -3912,7 +3912,7 @@
             {
                 if ( eSIR_SUCCESS != ConvertWMMTCLAS( pMac, &( pAddTs->tclasInfo[i] ), &( addts.WMMTCLAS[i] ) ) )
                 {
-                    limLog( pMac, LOGE, FL("Failed to convert a TCLAS IE.\n") );
+                    limLog( pMac, LOGE, FL("Failed to convert a TCLAS IE.") );
                     return eSIR_FAILURE;
                 }
             }
@@ -3926,7 +3926,7 @@
 
         if ( 1 < pAddTs->numTclas && ( ! pAddTs->tclasProcPresent ) )
         {
-            limLog( pMac, LOGE, FL("%d TCLAS IE but not TCLASPROC IE.\n"),
+            limLog( pMac, LOGE, FL("%d TCLAS IE but not TCLASPROC IE."),
                        pAddTs->numTclas );
             return eSIR_FAILURE;
         }
@@ -3942,7 +3942,7 @@
         }
         else
         {
-            limLog( pMac, LOGE, FL("Mandatory WME TSPEC element missing!\n") );
+            limLog( pMac, LOGE, FL("Mandatory WME TSPEC element missing!") );
             return eSIR_FAILURE;
         }
     }
@@ -3998,7 +3998,7 @@
     if ( DOT11F_FAILED( status ) )
     {
         limLog(pMac, LOGE, FL("Failed to parse an Add TS Response f"
-                                 "rame (0x%08x, %d bytes):\n"),
+                                 "rame (0x%08x, %d bytes)"),
                   status, nFrame);
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
         return eSIR_FAILURE;
@@ -4007,7 +4007,7 @@
     {
         limLog( pMac, LOGW, FL("There were warnings while unpackin"
                                   "g an Add TS Response frame (0x%08x,"
-                                  "%d bytes):\n"),
+                                  "%d bytes)"),
                    status, nFrame );
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
     }
@@ -4027,7 +4027,7 @@
         // TS Delay is present iff status indicates its presence
         if ( eSIR_MAC_TS_NOT_CREATED_STATUS == pAddTs->status && ! addts.TSDelay.present )
         {
-            limLog( pMac, LOGW, FL("Missing TSDelay IE.\n") );
+            limLog( pMac, LOGW, FL("Missing TSDelay IE.") );
         }
 
         if ( addts.TSPEC.present )
@@ -4036,7 +4036,7 @@
         }
         else
         {
-            limLog( pMac, LOGE, FL("Mandatory TSPEC element missing in Add TS Response.\n") );
+            limLog( pMac, LOGE, FL("Mandatory TSPEC element missing in Add TS Response.") );
             return eSIR_FAILURE;
         }
 
@@ -4048,7 +4048,7 @@
             {
                 if ( eSIR_SUCCESS != ConvertTCLAS( pMac, &( pAddTs->tclasInfo[i] ), &( addts.TCLAS[i] ) ) )
                 {
-                    limLog( pMac, LOGE, FL("Failed to convert a TCLAS IE.\n") );
+                    limLog( pMac, LOGE, FL("Failed to convert a TCLAS IE.") );
                     return eSIR_FAILURE;
                 }
             }
@@ -4094,7 +4094,7 @@
             {
                 if ( eSIR_SUCCESS != ConvertWMMTCLAS( pMac, &( pAddTs->tclasInfo[i] ), &( addts.WMMTCLAS[i] ) ) )
                 {
-                    limLog( pMac, LOGE, FL("Failed to convert a TCLAS IE.\n") );
+                    limLog( pMac, LOGE, FL("Failed to convert a TCLAS IE.") );
                     return eSIR_FAILURE;
                 }
             }
@@ -4108,7 +4108,7 @@
 
         if ( 1 < pAddTs->numTclas && ( ! pAddTs->tclasProcPresent ) )
         {
-            limLog( pMac, LOGE, FL("%d TCLAS IE but not TCLASPROC IE.\n"),
+            limLog( pMac, LOGE, FL("%d TCLAS IE but not TCLASPROC IE."),
                        pAddTs->numTclas );
             return eSIR_FAILURE;
         }
@@ -4125,7 +4125,7 @@
         }
         else
         {
-            limLog( pMac, LOGE, FL("Mandatory WME TSPEC element missing!\n") );
+            limLog( pMac, LOGE, FL("Mandatory WME TSPEC element missing!") );
             return eSIR_FAILURE;
         }
 
@@ -4186,7 +4186,7 @@
     if ( DOT11F_FAILED( status ) )
     {
         limLog(pMac, LOGE, FL("Failed to parse an Del TS Request f"
-                                 "rame (0x%08x, %d bytes):\n"),
+                                 "rame (0x%08x, %d bytes)"),
                   status, nFrame);
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
         return eSIR_FAILURE;
@@ -4195,7 +4195,7 @@
     {
         dot11fLog( pMac, LOGW, FL("There were warnings while unpackin"
                                   "g an Del TS Request frame (0x%08x,"
-                                  "%d bytes):\n"),
+                                  "%d bytes):"),
                    status, nFrame );
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
     }
@@ -4224,7 +4224,7 @@
         }
         else
         {
-            dot11fLog( pMac, LOGE, FL("Mandatory WME TSPEC element missing!\n") );
+            dot11fLog( pMac, LOGE, FL("Mandatory WME TSPEC element missing!") );
             return eSIR_FAILURE;
         }
     }
@@ -4244,14 +4244,14 @@
     status = dot11fUnpackQosMapConfigure(pMac, pFrame, nFrame, &mapConfigure);
     if ( DOT11F_FAILED( status ) )
     {
-        dot11fLog(pMac, LOGE, FL("Failed to parse Qos Map Configure frame (0x%08x, %d bytes):\n"),
+        dot11fLog(pMac, LOGE, FL("Failed to parse Qos Map Configure frame (0x%08x, %d bytes):"),
                   status, nFrame);
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
         return eSIR_FAILURE;
     }
     else if ( DOT11F_WARNED( status ) )
     {
-      dot11fLog( pMac, LOGW, FL("There were warnings while unpacking Qos Map Configure frame (0x%08x, %d bytes):\n"),
+      dot11fLog( pMac, LOGW, FL("There were warnings while unpacking Qos Map Configure frame (0x%08x, %d bytes):"),
                  status, nFrame );
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
     }
@@ -4278,14 +4278,14 @@
     status = dot11fUnpackTPCRequest( pMac, pFrame, nFrame, &req );
     if ( DOT11F_FAILED( status ) )
     {
-        dot11fLog(pMac, LOGE, FL("Failed to parse a TPC Request frame (0x%08x, %d bytes):\n"),
+        dot11fLog(pMac, LOGE, FL("Failed to parse a TPC Request frame (0x%08x, %d bytes):"),
                   status, nFrame);
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
         return eSIR_FAILURE;
     }
     else if ( DOT11F_WARNED( status ) )
     {
-      dot11fLog( pMac, LOGW, FL("There were warnings while unpacking a TPC Request frame (0x%08x, %d bytes):\n"),
+      dot11fLog( pMac, LOGW, FL("There were warnings while unpacking a TPC Request frame (0x%08x, %d bytes):"),
                  status, nFrame );
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
     }
@@ -4302,7 +4302,7 @@
     }
     else
     {
-        dot11fLog( pMac, LOGW, FL("!!!Rcv TPC Req of inalid type!\n") );
+        dot11fLog( pMac, LOGW, FL("!!!Rcv TPC Req of inalid type!") );
         return eSIR_FAILURE;
     }
 
@@ -4327,14 +4327,14 @@
     status = dot11fUnpackMeasurementRequest( pMac, pFrame, nFrame, &mr );
     if ( DOT11F_FAILED( status ) )
     {
-        dot11fLog(pMac, LOGE, FL("Failed to parse a Measurement Request frame (0x%08x, %d bytes):\n"),
+        dot11fLog(pMac, LOGE, FL("Failed to parse a Measurement Request frame (0x%08x, %d bytes):"),
                   status, nFrame);
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
         return eSIR_FAILURE;
     }
     else if ( DOT11F_WARNED( status ) )
     {
-      dot11fLog( pMac, LOGW, FL("There were warnings while unpacking a Measurement Request frame (0x%08x, %d bytes):\n"),
+      dot11fLog( pMac, LOGW, FL("There were warnings while unpacking a Measurement Request frame (0x%08x, %d bytes)"),
                  status, nFrame );
         PELOG2(sirDumpBuf(pMac, SIR_DBG_MODULE_ID, LOG2, pFrame, nFrame);)
     }
@@ -4347,7 +4347,7 @@
 
     if ( 0 == mr.num_MeasurementRequest )
     {
-        dot11fLog( pMac, LOGE, FL("Missing mandatory IE in Measurement Request Frame.\n") );
+        dot11fLog( pMac, LOGE, FL("Missing mandatory IE in Measurement Request Frame.") );
         return eSIR_FAILURE;
     }
     else if ( 1 < mr.num_MeasurementRequest )
@@ -4567,7 +4567,7 @@
         pDot11f->info.Params8021dq.tag_type = pOld->tclasParams.t8021dq.tag;
         break;
     default:
-        limLog( pMac, LOGE, FL("Bad TCLAS type %d in PopulateDot11fTCLAS.\n"),
+        limLog( pMac, LOGE, FL("Bad TCLAS type %d in PopulateDot11fTCLAS."),
                 pDot11f->classifier_type );
         return eSIR_FAILURE;
     }
@@ -4639,7 +4639,7 @@
         pDot11f->info.Params8021dq.tag_type = pOld->tclasParams.t8021dq.tag;
         break;
     default:
-        limLog( pMac, LOGE, FL("Bad TCLAS type %d in PopulateDot11fTCLAS.\n"),
+        limLog( pMac, LOGE, FL("Bad TCLAS type %d in PopulateDot11fTCLAS."),
                 pDot11f->classifier_type );
         return eSIR_FAILURE;
     }
@@ -4662,7 +4662,7 @@
     pDot11f->Version.minor = 0x00;
 
     if (wlan_cfgGetInt(pMac, (tANI_U16) WNI_CFG_WPS_STATE, &wpsState) != eSIR_SUCCESS)
-        limLog(pMac, LOGP,"Failed to cfg get id %d\n", WNI_CFG_WPS_STATE );
+        limLog(pMac, LOGP,"Failed to cfg get id %d", WNI_CFG_WPS_STATE );
 
     pDot11f->WPSState.present = 1;
     pDot11f->WPSState.state = (tANI_U8) wpsState;
@@ -4697,7 +4697,7 @@
     pDot11f->SelectedRegistrar.selected = pWscIeInfo->selectedRegistrar;
 
     if (wlan_cfgGetInt(pMac, (tANI_U16) WNI_CFG_WPS_DEVICE_PASSWORD_ID, &devicepasswdId) != eSIR_SUCCESS)
-        limLog(pMac, LOGP,"Failed to cfg get id %d\n", WNI_CFG_WPS_DEVICE_PASSWORD_ID );
+        limLog(pMac, LOGP,"Failed to cfg get id %d", WNI_CFG_WPS_DEVICE_PASSWORD_ID );
 
     pDot11f->DevicePasswordID.present = 1;
     pDot11f->DevicePasswordID.id = (tANI_U16) devicepasswdId;
@@ -4999,14 +4999,14 @@
 
 
     if (wlan_cfgGetInt(pMac, (tANI_U16) WNI_CFG_WPS_VERSION, &wpsVersion) != eSIR_SUCCESS)
-        limLog(pMac, LOGP,"Failed to cfg get id %d\n", WNI_CFG_WPS_VERSION );
+        limLog(pMac, LOGP,"Failed to cfg get id %d", WNI_CFG_WPS_VERSION );
 
     pDot11f->Version.present = 1;
     pDot11f->Version.major = (tANI_U8) ((wpsVersion & 0xF0)>>4);
     pDot11f->Version.minor = (tANI_U8) (wpsVersion & 0x0F);
 
     if (wlan_cfgGetInt(pMac, (tANI_U16) WNI_CFG_WPS_STATE, &wpsState) != eSIR_SUCCESS)
-        limLog(pMac, LOGP,"Failed to cfg get id %d\n", WNI_CFG_WPS_STATE );
+        limLog(pMac, LOGP,"Failed to cfg get id %d", WNI_CFG_WPS_STATE );
 
     pDot11f->WPSState.present = 1;
     pDot11f->WPSState.state = (tANI_U8) wpsState;
@@ -5107,14 +5107,14 @@
 
     if (wlan_cfgGetInt(pMac, WNI_CFG_WPS_PRIMARY_DEVICE_CATEGORY, &val) != eSIR_SUCCESS)
     {
-       limLog(pMac, LOGP, FL("cfg get prim device category failed\n"));
+       limLog(pMac, LOGP, FL("cfg get prim device category failed"));
     }
     else
        pDot11f->PrimaryDeviceType.primary_category = (tANI_U16) val;
 
     if (wlan_cfgGetInt(pMac, WNI_CFG_WPS_PIMARY_DEVICE_OUI, &val) != eSIR_SUCCESS)
     {
-       limLog(pMac, LOGP, FL("cfg get prim device OUI failed\n"));
+       limLog(pMac, LOGP, FL("cfg get prim device OUI failed"));
     }
     else
     {
@@ -5126,7 +5126,7 @@
 
     if (wlan_cfgGetInt(pMac, WNI_CFG_WPS_DEVICE_SUB_CATEGORY, &val) != eSIR_SUCCESS)
     {
-       limLog(pMac, LOGP, FL("cfg get prim device sub category failed\n"));
+       limLog(pMac, LOGP, FL("cfg get prim device sub category failed"));
     }
     else
        pDot11f->PrimaryDeviceType.sub_category = (tANI_U16) val;
@@ -5179,7 +5179,7 @@
     pDot11f->SelectedRegistrar.selected = pWscIeInfo->selectedRegistrar;
 
     if (wlan_cfgGetInt(pMac, (tANI_U16) WNI_CFG_WPS_DEVICE_PASSWORD_ID, &devicepasswdId) != eSIR_SUCCESS)
-       limLog(pMac, LOGP,"Failed to cfg get id %d\n", WNI_CFG_WPS_DEVICE_PASSWORD_ID );
+       limLog(pMac, LOGP,"Failed to cfg get id %d", WNI_CFG_WPS_DEVICE_PASSWORD_ID );
 
     pDot11f->DevicePasswordID.present = 1;
     pDot11f->DevicePasswordID.id = (tANI_U16) devicepasswdId;
diff --git a/CORE/TL/src/wlan_qct_tl.c b/CORE/TL/src/wlan_qct_tl.c
index d0ae3f2..0c87328 100644
--- a/CORE/TL/src/wlan_qct_tl.c
+++ b/CORE/TL/src/wlan_qct_tl.c
@@ -7164,25 +7164,26 @@
 
         if( WLAN_STA_SOFTAP == pClientSTA->wSTADesc.wSTAType)
         {
-            TLLOGE(VOS_TRACE(VOS_MODULE_ID_TL, VOS_TRACE_LEVEL_ERROR,
+            TLLOG1(VOS_TRACE(VOS_MODULE_ID_TL, VOS_TRACE_LEVEL_INFO,
                   "TrafficStatistics for SOFTAP Station:"));
-            TLLOGE(VOS_TRACE(VOS_MODULE_ID_TL, VOS_TRACE_LEVEL_ERROR,
+            TLLOG1(VOS_TRACE(VOS_MODULE_ID_TL, VOS_TRACE_LEVEL_INFO,
                   "RUF=%d\tRMF=%d\tRBF=%d", pClientSTA->trafficStatistics.rxUCFcnt,
                                             pClientSTA->trafficStatistics.rxMCFcnt,
                                             pClientSTA->trafficStatistics.rxBCFcnt));
-            TLLOGE(VOS_TRACE(VOS_MODULE_ID_TL, VOS_TRACE_LEVEL_ERROR,
+            TLLOG1(VOS_TRACE(VOS_MODULE_ID_TL, VOS_TRACE_LEVEL_INFO,
                   "RUB=%d\tRMB=%d\tRBB=%d", pClientSTA->trafficStatistics.rxUCBcnt,
                                             pClientSTA->trafficStatistics.rxMCBcnt,
                                             pClientSTA->trafficStatistics.rxBCBcnt));
-            TLLOGE(VOS_TRACE(VOS_MODULE_ID_TL, VOS_TRACE_LEVEL_ERROR,
+            TLLOG1(VOS_TRACE(VOS_MODULE_ID_TL, VOS_TRACE_LEVEL_INFO,
                   "TUF=%d\tTMF=%d\tTBF=%d", pClientSTA->trafficStatistics.txUCFcnt,
                                             pClientSTA->trafficStatistics.txMCFcnt,
                                             pClientSTA->trafficStatistics.txBCFcnt));
-            TLLOGE(VOS_TRACE(VOS_MODULE_ID_TL, VOS_TRACE_LEVEL_ERROR,
+            TLLOG1(VOS_TRACE(VOS_MODULE_ID_TL, VOS_TRACE_LEVEL_INFO,
                   "TUB=%d\tTMB=%d\tTBB=%d", pClientSTA->trafficStatistics.txUCBcnt,
                                             pClientSTA->trafficStatistics.txMCBcnt,
                                             pClientSTA->trafficStatistics.txBCBcnt));
         }
+
     }
    return;
 }
diff --git a/CORE/WDA/inc/wlan_qct_wda.h b/CORE/WDA/inc/wlan_qct_wda.h
index 89dfc82..06d2839 100644
--- a/CORE/WDA/inc/wlan_qct_wda.h
+++ b/CORE/WDA/inc/wlan_qct_wda.h
@@ -431,6 +431,8 @@
    wpt_uint8            wdaAddSelfStaFailReason;
 } tWDA_AddSelfStaDebugParams;
 
+#define BMPS_IMPS_FAILURE_REPORT_THRESHOLD    10
+
 typedef struct
 {
    v_PVOID_t            pVosContext;             /* global VOSS context*/