wlan: Increment rxMcast packet count if destination address is MCAST

Increment rxMcast packet count statistics if and only if destination
address is multicast group address and not a broadcast address. Do not
consider Bcast bit in RX BD-Header(pRxMeta->bcast) as it will be set
for both multicast and broadcast packets.

Change-Id: Ieaad10aba2c386c9d41f8b04c4b139a60c998311
CRs-Fixed: 746948
diff --git a/CORE/TL/inc/wlan_qct_tl.h b/CORE/TL/inc/wlan_qct_tl.h
index f807c52..8d26fe0 100644
--- a/CORE/TL/inc/wlan_qct_tl.h
+++ b/CORE/TL/inc/wlan_qct_tl.h
@@ -137,6 +137,16 @@
 // Choose the largest possible value that can be accomodates in 8 bit signed
 // variable.
 #define SNR_HACK_BMPS                         (127)
+#define IS_BROADCAST_ADD(_a)              \
+    ((_a)[0] == 0xff &&                         \
+     (_a)[1] == 0xff &&                         \
+     (_a)[2] == 0xff &&                         \
+     (_a)[3] == 0xff &&                         \
+     (_a)[4] == 0xff &&                         \
+     (_a)[5] == 0xff)
+
+#define IS_MULTICAST_ADD(_a)  (*(_a) & 0x01)
+
 /*--------------------------------------------------------------------------
   Access category enum used by TL
   - order must be kept as these values are used to setup the AC mask
diff --git a/CORE/TL/src/wlan_qct_tl.c b/CORE/TL/src/wlan_qct_tl.c
index 288eb50..be33299 100644
--- a/CORE/TL/src/wlan_qct_tl.c
+++ b/CORE/TL/src/wlan_qct_tl.c
@@ -6086,7 +6086,7 @@
         if ( NULL != pClientSTA)
         {
             tpSirMacMgmtHdr pMacHeader = WDA_GET_RX_MAC_HEADER( pvBDHeader );
-            if( !WDA_IS_RX_BCAST(pvBDHeader) && ( pMacHeader->da[0] & 0x1))
+            if (!IS_BROADCAST_ADD(pMacHeader->da) && IS_MULTICAST_ADD(pMacHeader->da))
             {
                 pClientSTA->interfaceStats.accessCategoryStats[ac].rxMcast++;
             }