Merge "wlan: HS20 indication element support" into wlan-driver.lnx.1.0-dev.1.0
diff --git a/CORE/MAC/src/cfg/cfgUtil/dot11f.frms b/CORE/MAC/src/cfg/cfgUtil/dot11f.frms
index f4e490a..3c125e9 100644
--- a/CORE/MAC/src/cfg/cfgUtil/dot11f.frms
+++ b/CORE/MAC/src/cfg/cfgUtil/dot11f.frms
@@ -2047,6 +2047,28 @@
 
 }
 
+IE hs20vendor_ie (EID_VENDOR_SPECIFIC) OUI (0x50, 0x6F, 0x9A, 0x10)
+{
+    /* hotspot_configurations */
+    {
+        dgaf_dis:               1;
+        hs_id_present:          2;
+        reserved:               1;
+        release_num:            4;
+    }
+    OPTIONAL UNION hs_id (DISCRIMINATOR hs_id_present)
+    {
+        pps_mo (hs_id_present IS 1)
+        {
+            pps_mo_id,          2;
+        }
+        anqp_domain (hs_id_present IS 2)
+        {
+            anqp_domain_id,     2;
+        }
+    };
+}
+
 IE ESETrafStrmMet (EID_VENDOR_SPECIFIC) OUI (0x00, 0x40, 0x96, 0x07)
 {
     tsid,           1;
@@ -3334,6 +3356,7 @@
     OPTIE  OperatingMode;
     OPTIE  WiderBWChanSwitchAnn;
     OPTIE  OBSSScanParameters;
+    OPTIE  hs20vendor_ie;
 } // End frame Beacon.
 
 // Ok, here's  the story on  Beacon1 & Beacon2.   We presumably beacon  a lot
@@ -3414,6 +3437,7 @@
     OPTIE  OperatingMode;
     OPTIE  WiderBWChanSwitchAnn;
     OPTIE  OBSSScanParameters;
+    OPTIE  hs20vendor_ie;
 }
 
 // This frame is just Beacon with its Fixed Fields stripped out.  It's handy
@@ -3471,6 +3495,7 @@
     OPTIE  OperatingMode;
     OPTIE  WiderBWChanSwitchAnn;
     OPTIE  OBSSScanParameters;
+    OPTIE  hs20vendor_ie;
 
 } // End frame BeaconIEs.
 
@@ -3508,6 +3533,7 @@
     OPTIE  ExtCap;
     OPTIE  OperatingMode;
     OPTIE  QosMapSet;
+    OPTIE  hs20vendor_ie;
 } // End frame AssocRequest.
 
 FRAME AssocResponse                       // 7.2.3.5
@@ -3578,6 +3604,7 @@
     OPTIE  ExtCap;
     OPTIE  OperatingMode;
     OPTIE  QosMapSet;
+    OPTIE  hs20vendor_ie;
 } // End frame ReAssocRequest.
 
 FRAME ReAssocResponse                     // 7.2.3.7
@@ -3676,6 +3703,7 @@
     OPTIE  VHTExtBssLoad;
     OPTIE  ExtCap;
     OPTIE  OBSSScanParameters;
+    OPTIE  hs20vendor_ie;
 } // End frame ProbeResponse.
 
 FRAME Authentication                      // 7.2.3.10
diff --git a/CORE/MAC/src/include/dot11f.h b/CORE/MAC/src/include/dot11f.h
index 50788d8..022763c 100644
--- a/CORE/MAC/src/include/dot11f.h
+++ b/CORE/MAC/src/include/dot11f.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012-2014, 2016, 2017 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2012-2017 The Linux Foundation. All rights reserved.
  *
  * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
  *
@@ -30,7 +30,7 @@
   *
   *
   * This file was automatically generated by 'framesc'
-  * Tue Jul  4 11:19:48 2017 from the following file(s):
+  * Thu Jul 20 10:59:48 2017 from the following file(s):
   *
   * dot11f.frms
   *
@@ -6185,6 +6185,45 @@
 #ifdef __cplusplus
 }; /* End extern "C". */
 #endif /* C++ */
+// EID 221 (0xdd) {OUI 0x50, 0x6f, 0x9a, 0x10}
+typedef struct sDot11fIEhs20vendor_ie {
+    tANI_U8      present;
+    tANI_U8         dgaf_dis: 1;
+    tANI_U8    hs_id_present: 2;
+    tANI_U8         reserved: 1;
+    tANI_U8      release_num: 4;
+    union
+    {
+        struct
+        {
+            tANI_U16 pps_mo_id;
+        } pps_mo; /* hs_id_present = 1 */
+        struct
+        {
+            tANI_U16 anqp_domain_id;
+        } anqp_domain; /* hs_id_present = 2 */
+    } hs_id;
+} tDot11fIEhs20vendor_ie;
+
+#define DOT11F_EID_HS20VENDOR_IE ( 221 )
+
+// N.B. These #defines do *not* include the EID & length
+#define DOT11F_IE_HS20VENDOR_IE_MIN_LEN ( 5 )
+
+#define DOT11F_IE_HS20VENDOR_IE_MAX_LEN ( 7 )
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* C++ */
+tANI_U32 dot11fUnpackIehs20vendor_ie(tpAniSirGlobal, tANI_U8*,tANI_U8, tDot11fIEhs20vendor_ie*);
+
+tANI_U32 dot11fPackIehs20vendor_ie(tpAniSirGlobal, tDot11fIEhs20vendor_ie*, tANI_U8*, tANI_U32, tANI_U32*);
+
+tANI_U32 dot11fGetPackedIEhs20vendor_ie(tpAniSirGlobal, tDot11fIEhs20vendor_ie*, tANI_U32*);
+
+#ifdef __cplusplus
+}; /* End extern "C". */
+#endif /* C++ */
 /************************************************************************
  * Frames
  **********************************************************************/
@@ -6325,6 +6364,7 @@
     tDot11fIEExtCap         ExtCap;
     tDot11fIEOperatingMode  OperatingMode;
     tDot11fIEQosMapSet      QosMapSet;
+    tDot11fIEhs20vendor_ie  hs20vendor_ie;
 } tDot11fAssocRequest;
 
 #define DOT11F_ASSOCREQUEST ( 5 )
@@ -6465,6 +6505,7 @@
     tDot11fIEOperatingMode        OperatingMode;
     tDot11fIEWiderBWChanSwitchAnn WiderBWChanSwitchAnn;
     tDot11fIEOBSSScanParameters   OBSSScanParameters;
+    tDot11fIEhs20vendor_ie        hs20vendor_ie;
 } tDot11fBeacon;
 
 #define DOT11F_BEACON ( 8 )
@@ -6539,6 +6580,7 @@
     tDot11fIEOperatingMode        OperatingMode;
     tDot11fIEWiderBWChanSwitchAnn WiderBWChanSwitchAnn;
     tDot11fIEOBSSScanParameters   OBSSScanParameters;
+    tDot11fIEhs20vendor_ie        hs20vendor_ie;
 } tDot11fBeacon2;
 
 #define DOT11F_BEACON2 ( 10 )
@@ -6601,6 +6643,7 @@
     tDot11fIEOperatingMode        OperatingMode;
     tDot11fIEWiderBWChanSwitchAnn WiderBWChanSwitchAnn;
     tDot11fIEOBSSScanParameters   OBSSScanParameters;
+    tDot11fIEhs20vendor_ie        hs20vendor_ie;
 } tDot11fBeaconIEs;
 
 #define DOT11F_BEACONIES ( 11 )
@@ -7217,6 +7260,7 @@
     tDot11fIEVHTExtBssLoad      VHTExtBssLoad;
     tDot11fIEExtCap             ExtCap;
     tDot11fIEOBSSScanParameters OBSSScanParameters;
+    tDot11fIEhs20vendor_ie      hs20vendor_ie;
 } tDot11fProbeResponse;
 
 #define DOT11F_PROBERESPONSE ( 37 )
@@ -7403,6 +7447,7 @@
     tDot11fIEExtCap             ExtCap;
     tDot11fIEOperatingMode      OperatingMode;
     tDot11fIEQosMapSet          QosMapSet;
+    tDot11fIEhs20vendor_ie      hs20vendor_ie;
 } tDot11fReAssocRequest;
 
 #define DOT11F_REASSOCREQUEST ( 44 )
diff --git a/CORE/MAC/src/include/parserApi.h b/CORE/MAC/src/include/parserApi.h
index b37c877..fac5c07 100644
--- a/CORE/MAC/src/include/parserApi.h
+++ b/CORE/MAC/src/include/parserApi.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012-2014, 2016 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2012-2014, 2016-2017 The Linux Foundation. All rights reserved.
  *
  * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
  *
@@ -149,6 +149,8 @@
     tDot11fIEWiderBWChanSwitchAnn WiderBWChanSwitchAnn;
 #endif
     tDot11fIEOBSSScanParameters OBSSScanParameters;
+    tDot11fIEhs20vendor_ie  hs20vendor_ie;
+
 } tSirProbeRespBeacon, *tpSirProbeRespBeacon;
 
 // probe Request structure
@@ -220,6 +222,7 @@
     tDot11fIEVHTCaps          VHTCaps;
     tDot11fIEOperatingMode    operMode;
 #endif
+    tDot11fIEhs20vendor_ie hs20vendor_ie;
 } tSirAssocReq, *tpSirAssocReq;
 
 
@@ -960,7 +963,6 @@
 int FindIELocation( tpAniSirGlobal pMac,
                            tpSirRSNie pRsnIe,
                            tANI_U8 EID);
-#endif
 
 #ifdef WLAN_FEATURE_11AC
 tSirRetStatus
@@ -1000,3 +1002,16 @@
 sap_auth_offload_update_rsn_ie(tpAniSirGlobal pmac,
         tDot11fIERSNOpaque *pdot11f);
 #endif /* SAP_AUTH_OFFLOAD */
+
+/**
+ * sir_copy_hs20_ie() - Update HS 2.0 Information Element.
+ * @dest: dest HS IE buffer to be updated
+ * @src: src HS IE buffer
+ *
+ * Update HS2.0 IE info from src to dest
+ *
+ * Return: void
+ */
+void sir_copy_hs20_ie(tDot11fIEhs20vendor_ie *dest,
+                      tDot11fIEhs20vendor_ie *src);
+#endif /* __PARSE_H__ */
diff --git a/CORE/MAC/src/pe/include/limSession.h b/CORE/MAC/src/pe/include/limSession.h
index e0184ac..7f597da 100644
--- a/CORE/MAC/src/pe/include/limSession.h
+++ b/CORE/MAC/src/pe/include/limSession.h
@@ -353,6 +353,8 @@
     tANI_BOOLEAN isCiscoVendorAP;
     /* To hold OBSS Scan IE Parameters */
     tSirOBSSHT40Param obssHT40ScanParam;
+    /* HS 2.0 Indication */
+    tDot11fIEhs20vendor_ie hs20vendor_ie;
     /* flag to indicate country code in beacon */
     tANI_U8  countryInfoPresent;
     /*  DSCP to UP mapping for HS 2.0 */
diff --git a/CORE/MAC/src/pe/lim/limAssocUtils.c b/CORE/MAC/src/pe/lim/limAssocUtils.c
index 41a952d..ed44ece 100644
--- a/CORE/MAC/src/pe/lim/limAssocUtils.c
+++ b/CORE/MAC/src/pe/lim/limAssocUtils.c
@@ -3425,6 +3425,9 @@
         mlmJoinCnf.sessionId = psessionEntry->peSessionId;
         limPostSmeMessage(pMac, LIM_MLM_JOIN_CNF, (tANI_U32 *) &mlmJoinCnf);
     } // if ((pMac->lim.gLimSystemRole == IBSS....
+
+     /* Update HS 2.0 Information Element */
+    sir_copy_hs20_ie(&psessionEntry->hs20vendor_ie, &pBPR->hs20vendor_ie);
 }
 
 /**
diff --git a/CORE/MAC/src/pe/lim/limPropExtsUtils.c b/CORE/MAC/src/pe/lim/limPropExtsUtils.c
index f4f668a..bd695ed 100644
--- a/CORE/MAC/src/pe/lim/limPropExtsUtils.c
+++ b/CORE/MAC/src/pe/lim/limPropExtsUtils.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012-2016 The Linux Foundation. All rights reserved.
+ * Copyright (c) 2012-2017 The Linux Foundation. All rights reserved.
  *
  * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
  *
@@ -203,6 +203,10 @@
         }
 
     }
+
+    /* Update HS 2.0 Information Element */
+    sir_copy_hs20_ie(&psessionEntry->hs20vendor_ie,
+                     &pBeaconStruct->hs20vendor_ie);
     vos_mem_free(pBeaconStruct);
     return;
 } /****** end limExtractApCapability() ******/
diff --git a/CORE/SYS/legacy/src/utils/src/dot11f.c b/CORE/SYS/legacy/src/utils/src/dot11f.c
index ebdb096..b2dfa63 100644
--- a/CORE/SYS/legacy/src/utils/src/dot11f.c
+++ b/CORE/SYS/legacy/src/utils/src/dot11f.c
@@ -28,7 +28,7 @@
   *
   *
   * This file was automatically generated by 'framesc'
-  * Tue Jul  4 11:19:48 2017 from the following file(s):
+  * Thu Jul 20 10:59:48 2017 from the following file(s):
   *
   * dot11f.frms
   *
@@ -5640,6 +5640,47 @@
 #define SigIeWscReassocRes ( 0x008f )
 
 
+tANI_U32 dot11fUnpackIehs20vendor_ie(tpAniSirGlobal pCtx, tANI_U8 *pBuf, tANI_U8 ielen, tDot11fIEhs20vendor_ie *pDst)
+{
+    tANI_U32 status = DOT11F_PARSE_SUCCESS;
+    tANI_U8 tmp78__;
+    (void) pBuf; (void)ielen; /* Shutup the compiler */
+    if (pDst->present) status = DOT11F_DUPLICATE_IE;
+    pDst->present = 1;
+    tmp78__ = *pBuf;
+    pBuf += 1;
+    ielen -= 1;
+    pDst->dgaf_dis = tmp78__ >> 0 & 0x1;
+    pDst->hs_id_present = tmp78__ >> 1 & 0x3;
+    pDst->reserved = tmp78__ >> 3 & 0x1;
+    pDst->release_num = tmp78__ >> 4 & 0xf;
+    if ( ! ielen )
+    {
+        return 0U;
+    }
+    else
+    {
+        switch (pDst->hs_id_present)
+        {
+            case 1:
+                framesntohs(pCtx, &pDst->hs_id.pps_mo.pps_mo_id, pBuf, 0);
+                pBuf += 2;
+                ielen -= (tANI_U8)2;
+            break;
+            case 2:
+                framesntohs(pCtx, &pDst->hs_id.anqp_domain.anqp_domain_id, pBuf, 0);
+                pBuf += 2;
+                ielen -= (tANI_U8)2;
+            break;
+        }
+    }
+    (void)pCtx;
+    return status;
+} /* End dot11fUnpackIehs20vendor_ie. */
+
+#define SigIehs20vendor_ie ( 0x0090 )
+
+
     static const tFFDefn FFS_AddBAReq[] = {
         { "Category", offsetof(tDot11fAddBAReq, Category), SigFfCategory , DOT11F_FF_CATEGORY_LEN, },
         { "Action", offsetof(tDot11fAddBAReq, Action), SigFfAction , DOT11F_FF_ACTION_LEN, },
@@ -6297,6 +6338,7 @@
         {offsetof(tDot11fAssocRequest, ExtCap), offsetof(tDot11fIEExtCap, present), 0, "ExtCap" , 0, 3, 11, SigIeExtCap, {0, 0, 0, 0, 0}, 0, DOT11F_EID_EXTCAP, 0, },
         {offsetof(tDot11fAssocRequest, OperatingMode), offsetof(tDot11fIEOperatingMode, present), 0, "OperatingMode" , 0, 3, 3, SigIeOperatingMode, {0, 0, 0, 0, 0}, 0, DOT11F_EID_OPERATINGMODE, 0, },
         {offsetof(tDot11fAssocRequest, QosMapSet), offsetof(tDot11fIEQosMapSet, present), 0, "QosMapSet" , 0, 2, 62, SigIeQosMapSet, {0, 0, 0, 0, 0}, 0, DOT11F_EID_QOSMAPSET, 0, },
+        {offsetof(tDot11fAssocRequest, hs20vendor_ie), offsetof(tDot11fIEhs20vendor_ie, present), 0, "hs20vendor_ie" , 0, 7, 9, SigIehs20vendor_ie, {80, 111, 154, 16, 0}, 4, DOT11F_EID_HS20VENDOR_IE, 0, },
     {0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },    };
 
 tANI_U32 dot11fUnpackAssocRequest(tpAniSirGlobal pCtx, tANI_U8 *pBuf, tANI_U32 nBuf, tDot11fAssocRequest *pFrm)
@@ -6889,6 +6931,27 @@
             FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), FRFL("num_dscp_exceptions: %d.\n"), pFrm->QosMapSet.num_dscp_exceptions);
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), ( tANI_U8* ) pFrm->QosMapSet.dscp_exceptions, pFrm->QosMapSet.num_dscp_exceptions);
         }
+        FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), FRFL("hs20vendor_ie:\n"));
+        if (!pFrm->hs20vendor_ie.present)
+        {
+            FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), FRFL("Not present.\n"));
+        }
+        else
+        {
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), FRFL("dgaf_dis (1): %d\n"), pFrm->hs20vendor_ie.dgaf_dis);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), FRFL("hs_id_present (2): %d\n"), pFrm->hs20vendor_ie.hs_id_present);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), FRFL("reserved (1): %d\n"), pFrm->hs20vendor_ie.reserved);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), FRFL("release_num (4): %d\n"), pFrm->hs20vendor_ie.release_num);
+            switch (pFrm->hs20vendor_ie.hs_id_present)
+            {
+                case 1:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.pps_mo.pps_mo_id, 2);
+                break;
+                case 2:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.anqp_domain.anqp_domain_id, 2);
+                break;
+            }
+        }
     }
 #   endif // DOT11F_DUMP_FRAMES
     return status;
@@ -8501,6 +8564,7 @@
         {offsetof(tDot11fBeacon, OperatingMode), offsetof(tDot11fIEOperatingMode, present), 0, "OperatingMode" , 0, 3, 3, SigIeOperatingMode, {0, 0, 0, 0, 0}, 0, DOT11F_EID_OPERATINGMODE, 0, },
         {offsetof(tDot11fBeacon, WiderBWChanSwitchAnn), offsetof(tDot11fIEWiderBWChanSwitchAnn, present), 0, "WiderBWChanSwitchAnn" , 0, 5, 5, SigIeWiderBWChanSwitchAnn, {0, 0, 0, 0, 0}, 0, DOT11F_EID_WIDERBWCHANSWITCHANN, 0, },
         {offsetof(tDot11fBeacon, OBSSScanParameters), offsetof(tDot11fIEOBSSScanParameters, present), 0, "OBSSScanParameters" , 0, 16, 16, SigIeOBSSScanParameters, {0, 0, 0, 0, 0}, 0, DOT11F_EID_OBSSSCANPARAMETERS, 0, },
+        {offsetof(tDot11fBeacon, hs20vendor_ie), offsetof(tDot11fIEhs20vendor_ie, present), 0, "hs20vendor_ie" , 0, 7, 9, SigIehs20vendor_ie, {80, 111, 154, 16, 0}, 4, DOT11F_EID_HS20VENDOR_IE, 0, },
     {0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },    };
 
 tANI_U32 dot11fUnpackBeacon(tpAniSirGlobal pCtx, tANI_U8 *pBuf, tANI_U32 nBuf, tDot11fBeacon *pFrm)
@@ -9551,6 +9615,27 @@
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), ( tANI_U8* )&pFrm->OBSSScanParameters.bssWidthChannelTransitionDelayFactor, 2);
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), ( tANI_U8* )&pFrm->OBSSScanParameters.obssScanActivityThreshold, 2);
         }
+        FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), FRFL("hs20vendor_ie:\n"));
+        if (!pFrm->hs20vendor_ie.present)
+        {
+            FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), FRFL("Not present.\n"));
+        }
+        else
+        {
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), FRFL("dgaf_dis (1): %d\n"), pFrm->hs20vendor_ie.dgaf_dis);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), FRFL("hs_id_present (2): %d\n"), pFrm->hs20vendor_ie.hs_id_present);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), FRFL("reserved (1): %d\n"), pFrm->hs20vendor_ie.reserved);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), FRFL("release_num (4): %d\n"), pFrm->hs20vendor_ie.release_num);
+            switch (pFrm->hs20vendor_ie.hs_id_present)
+            {
+                case 1:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.pps_mo.pps_mo_id, 2);
+                break;
+                case 2:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.anqp_domain.anqp_domain_id, 2);
+                break;
+            }
+        }
     }
 #   endif // DOT11F_DUMP_FRAMES
     return status;
@@ -9687,6 +9772,7 @@
         {offsetof(tDot11fBeacon2, OperatingMode), offsetof(tDot11fIEOperatingMode, present), 0, "OperatingMode" , 0, 3, 3, SigIeOperatingMode, {0, 0, 0, 0, 0}, 0, DOT11F_EID_OPERATINGMODE, 0, },
         {offsetof(tDot11fBeacon2, WiderBWChanSwitchAnn), offsetof(tDot11fIEWiderBWChanSwitchAnn, present), 0, "WiderBWChanSwitchAnn" , 0, 5, 5, SigIeWiderBWChanSwitchAnn, {0, 0, 0, 0, 0}, 0, DOT11F_EID_WIDERBWCHANSWITCHANN, 0, },
         {offsetof(tDot11fBeacon2, OBSSScanParameters), offsetof(tDot11fIEOBSSScanParameters, present), 0, "OBSSScanParameters" , 0, 16, 16, SigIeOBSSScanParameters, {0, 0, 0, 0, 0}, 0, DOT11F_EID_OBSSSCANPARAMETERS, 0, },
+        {offsetof(tDot11fBeacon2, hs20vendor_ie), offsetof(tDot11fIEhs20vendor_ie, present), 0, "hs20vendor_ie" , 0, 7, 9, SigIehs20vendor_ie, {80, 111, 154, 16, 0}, 4, DOT11F_EID_HS20VENDOR_IE, 0, },
     {0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },    };
 
 tANI_U32 dot11fUnpackBeacon2(tpAniSirGlobal pCtx, tANI_U8 *pBuf, tANI_U32 nBuf, tDot11fBeacon2 *pFrm)
@@ -10585,6 +10671,27 @@
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), ( tANI_U8* )&pFrm->OBSSScanParameters.bssWidthChannelTransitionDelayFactor, 2);
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), ( tANI_U8* )&pFrm->OBSSScanParameters.obssScanActivityThreshold, 2);
         }
+        FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), FRFL("hs20vendor_ie:\n"));
+        if (!pFrm->hs20vendor_ie.present)
+        {
+            FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), FRFL("Not present.\n"));
+        }
+        else
+        {
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), FRFL("dgaf_dis (1): %d\n"), pFrm->hs20vendor_ie.dgaf_dis);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), FRFL("hs_id_present (2): %d\n"), pFrm->hs20vendor_ie.hs_id_present);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), FRFL("reserved (1): %d\n"), pFrm->hs20vendor_ie.reserved);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), FRFL("release_num (4): %d\n"), pFrm->hs20vendor_ie.release_num);
+            switch (pFrm->hs20vendor_ie.hs_id_present)
+            {
+                case 1:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.pps_mo.pps_mo_id, 2);
+                break;
+                case 2:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.anqp_domain.anqp_domain_id, 2);
+                break;
+            }
+        }
     }
 #   endif // DOT11F_DUMP_FRAMES
     return status;
@@ -10641,6 +10748,7 @@
         {offsetof(tDot11fBeaconIEs, OperatingMode), offsetof(tDot11fIEOperatingMode, present), 0, "OperatingMode" , 0, 3, 3, SigIeOperatingMode, {0, 0, 0, 0, 0}, 0, DOT11F_EID_OPERATINGMODE, 0, },
         {offsetof(tDot11fBeaconIEs, WiderBWChanSwitchAnn), offsetof(tDot11fIEWiderBWChanSwitchAnn, present), 0, "WiderBWChanSwitchAnn" , 0, 5, 5, SigIeWiderBWChanSwitchAnn, {0, 0, 0, 0, 0}, 0, DOT11F_EID_WIDERBWCHANSWITCHANN, 0, },
         {offsetof(tDot11fBeaconIEs, OBSSScanParameters), offsetof(tDot11fIEOBSSScanParameters, present), 0, "OBSSScanParameters" , 0, 16, 16, SigIeOBSSScanParameters, {0, 0, 0, 0, 0}, 0, DOT11F_EID_OBSSSCANPARAMETERS, 0, },
+        {offsetof(tDot11fBeaconIEs, hs20vendor_ie), offsetof(tDot11fIEhs20vendor_ie, present), 0, "hs20vendor_ie" , 0, 7, 9, SigIehs20vendor_ie, {80, 111, 154, 16, 0}, 4, DOT11F_EID_HS20VENDOR_IE, 0, },
     {0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },    };
 
 tANI_U32 dot11fUnpackBeaconIEs(tpAniSirGlobal pCtx, tANI_U8 *pBuf, tANI_U32 nBuf, tDot11fBeaconIEs *pFrm)
@@ -11799,6 +11907,27 @@
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), ( tANI_U8* )&pFrm->OBSSScanParameters.bssWidthChannelTransitionDelayFactor, 2);
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), ( tANI_U8* )&pFrm->OBSSScanParameters.obssScanActivityThreshold, 2);
         }
+        FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), FRFL("hs20vendor_ie:\n"));
+        if (!pFrm->hs20vendor_ie.present)
+        {
+            FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), FRFL("Not present.\n"));
+        }
+        else
+        {
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), FRFL("dgaf_dis (1): %d\n"), pFrm->hs20vendor_ie.dgaf_dis);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), FRFL("hs_id_present (2): %d\n"), pFrm->hs20vendor_ie.hs_id_present);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), FRFL("reserved (1): %d\n"), pFrm->hs20vendor_ie.reserved);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), FRFL("release_num (4): %d\n"), pFrm->hs20vendor_ie.release_num);
+            switch (pFrm->hs20vendor_ie.hs_id_present)
+            {
+                case 1:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.pps_mo.pps_mo_id, 2);
+                break;
+                case 2:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.anqp_domain.anqp_domain_id, 2);
+                break;
+            }
+        }
     }
 #   endif // DOT11F_DUMP_FRAMES
     return status;
@@ -14132,6 +14261,7 @@
         {offsetof(tDot11fProbeResponse, VHTExtBssLoad), offsetof(tDot11fIEVHTExtBssLoad, present), 0, "VHTExtBssLoad" , 0, 7, 7, SigIeVHTExtBssLoad, {0, 0, 0, 0, 0}, 0, DOT11F_EID_VHTEXTBSSLOAD, 0, },
         {offsetof(tDot11fProbeResponse, ExtCap), offsetof(tDot11fIEExtCap, present), 0, "ExtCap" , 0, 3, 11, SigIeExtCap, {0, 0, 0, 0, 0}, 0, DOT11F_EID_EXTCAP, 0, },
         {offsetof(tDot11fProbeResponse, OBSSScanParameters), offsetof(tDot11fIEOBSSScanParameters, present), 0, "OBSSScanParameters" , 0, 16, 16, SigIeOBSSScanParameters, {0, 0, 0, 0, 0}, 0, DOT11F_EID_OBSSSCANPARAMETERS, 0, },
+        {offsetof(tDot11fProbeResponse, hs20vendor_ie), offsetof(tDot11fIEhs20vendor_ie, present), 0, "hs20vendor_ie" , 0, 7, 9, SigIehs20vendor_ie, {80, 111, 154, 16, 0}, 4, DOT11F_EID_HS20VENDOR_IE, 0, },
     {0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },    };
 
 tANI_U32 dot11fUnpackProbeResponse(tpAniSirGlobal pCtx, tANI_U8 *pBuf, tANI_U32 nBuf, tDot11fProbeResponse *pFrm)
@@ -15236,6 +15366,27 @@
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), ( tANI_U8* )&pFrm->OBSSScanParameters.bssWidthChannelTransitionDelayFactor, 2);
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), ( tANI_U8* )&pFrm->OBSSScanParameters.obssScanActivityThreshold, 2);
         }
+        FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), FRFL("hs20vendor_ie:\n"));
+        if (!pFrm->hs20vendor_ie.present)
+        {
+            FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), FRFL("Not present.\n"));
+        }
+        else
+        {
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), FRFL("dgaf_dis (1): %d\n"), pFrm->hs20vendor_ie.dgaf_dis);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), FRFL("hs_id_present (2): %d\n"), pFrm->hs20vendor_ie.hs_id_present);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), FRFL("reserved (1): %d\n"), pFrm->hs20vendor_ie.reserved);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), FRFL("release_num (4): %d\n"), pFrm->hs20vendor_ie.release_num);
+            switch (pFrm->hs20vendor_ie.hs_id_present)
+            {
+                case 1:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.pps_mo.pps_mo_id, 2);
+                break;
+                case 2:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.anqp_domain.anqp_domain_id, 2);
+                break;
+            }
+        }
     }
 #   endif // DOT11F_DUMP_FRAMES
     return status;
@@ -15703,6 +15854,7 @@
         {offsetof(tDot11fReAssocRequest, ExtCap), offsetof(tDot11fIEExtCap, present), 0, "ExtCap" , 0, 3, 11, SigIeExtCap, {0, 0, 0, 0, 0}, 0, DOT11F_EID_EXTCAP, 0, },
         {offsetof(tDot11fReAssocRequest, OperatingMode), offsetof(tDot11fIEOperatingMode, present), 0, "OperatingMode" , 0, 3, 3, SigIeOperatingMode, {0, 0, 0, 0, 0}, 0, DOT11F_EID_OPERATINGMODE, 0, },
         {offsetof(tDot11fReAssocRequest, QosMapSet), offsetof(tDot11fIEQosMapSet, present), 0, "QosMapSet" , 0, 2, 62, SigIeQosMapSet, {0, 0, 0, 0, 0}, 0, DOT11F_EID_QOSMAPSET, 0, },
+        {offsetof(tDot11fReAssocRequest, hs20vendor_ie), offsetof(tDot11fIEhs20vendor_ie, present), 0, "hs20vendor_ie" , 0, 7, 9, SigIehs20vendor_ie, {80, 111, 154, 16, 0}, 4, DOT11F_EID_HS20VENDOR_IE, 0, },
     {0, 0, 0, NULL, 0, 0, 0, 0, {0, 0, 0, 0, 0}, 0, 0xff, 0, },    };
 
 tANI_U32 dot11fUnpackReAssocRequest(tpAniSirGlobal pCtx, tANI_U8 *pBuf, tANI_U32 nBuf, tDot11fReAssocRequest *pFrm)
@@ -16682,6 +16834,27 @@
             FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), FRFL("num_dscp_exceptions: %d.\n"), pFrm->QosMapSet.num_dscp_exceptions);
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), ( tANI_U8* ) pFrm->QosMapSet.dscp_exceptions, pFrm->QosMapSet.num_dscp_exceptions);
         }
+        FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), FRFL("hs20vendor_ie:\n"));
+        if (!pFrm->hs20vendor_ie.present)
+        {
+            FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), FRFL("Not present.\n"));
+        }
+        else
+        {
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), FRFL("dgaf_dis (1): %d\n"), pFrm->hs20vendor_ie.dgaf_dis);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), FRFL("hs_id_present (2): %d\n"), pFrm->hs20vendor_ie.hs_id_present);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), FRFL("reserved (1): %d\n"), pFrm->hs20vendor_ie.reserved);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), FRFL("release_num (4): %d\n"), pFrm->hs20vendor_ie.release_num);
+            switch (pFrm->hs20vendor_ie.hs_id_present)
+            {
+                case 1:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.pps_mo.pps_mo_id, 2);
+                break;
+                case 2:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.anqp_domain.anqp_domain_id, 2);
+                break;
+            }
+        }
     }
 #   endif // DOT11F_DUMP_FRAMES
     return status;
@@ -20714,6 +20887,9 @@
                 case SigIeWscReassocRes:
                         status |= dot11fUnpackIeWscReassocRes(pCtx, pBufRemaining, len, ( tDot11fIEWscReassocRes* )(pFrm + pIe->offset + sizeof(tDot11fIEWscReassocRes)*countOffset) );
                             break;
+                case SigIehs20vendor_ie:
+                        status |= dot11fUnpackIehs20vendor_ie(pCtx, pBufRemaining, len, ( tDot11fIEhs20vendor_ie* )(pFrm + pIe->offset + sizeof(tDot11fIEhs20vendor_ie)*countOffset) );
+                            break;
                 default:
                     FRAMES_LOG1(pCtx, FRLOGE, FRFL("INTERNAL ERROR"
                         ": I don't know about the IE signature %d"
@@ -21840,6 +22016,31 @@
     return status;
 } /* End dot11fGetPackedIEWscReassocRes. */
 
+tANI_U32 dot11fGetPackedIEhs20vendor_ie(tpAniSirGlobal pCtx, tDot11fIEhs20vendor_ie *pIe, tANI_U32 *pnNeeded)
+{
+    tANI_U32 status = DOT11F_PARSE_SUCCESS;
+    (void)pCtx;
+    while ( pIe->present )
+    {
+        *pnNeeded += 1;
+        if ( pIe->hs_id_present )
+        {
+            switch (pIe->hs_id_present)
+            {
+                case 1:
+                    *pnNeeded += 2;
+                break;
+                case 2:
+                    *pnNeeded += 2;
+                break;
+            }
+        }
+        else break;
+        break;
+    }
+    return status;
+} /* End dot11fGetPackedIEhs20vendor_ie. */
+
 tANI_U32 dot11fGetPackedAddBAReqSize(tpAniSirGlobal pCtx, tDot11fAddBAReq *pFrm, tANI_U32 *pnNeeded)
 {
     tANI_U32 status = 0;
@@ -23044,6 +23245,10 @@
                             offset = sizeof(tDot11fIEWscReassocRes);
                             status |= dot11fGetPackedIEWscReassocRes(pCtx, ( tDot11fIEWscReassocRes* )(pFrm + pIe->offset + offset * i ), pnNeeded);
                             break;
+                case SigIehs20vendor_ie:
+                            offset = sizeof(tDot11fIEhs20vendor_ie);
+                            status |= dot11fGetPackedIEhs20vendor_ie(pCtx, ( tDot11fIEhs20vendor_ie* )(pFrm + pIe->offset + offset * i ), pnNeeded);
+                            break;
                default:
                    FRAMES_LOG1(pCtx, FRLOGE, FRFL("INTERNAL ERROR-- I don"
                        "'t know about the IE signature %d; this is most l"
@@ -23296,13 +23501,13 @@
                                    tDot11fFfAddBAParameterSet *pSrc,
                                    tANI_U8 *pBuf)
 {
-    tANI_U16 tmp78__;
-    tmp78__ = 0U;
-    tmp78__ |= ( pSrc->amsduSupported << 0 );
-    tmp78__ |= ( pSrc->policy << 1 );
-    tmp78__ |= ( pSrc->tid << 2 );
-    tmp78__ |= ( pSrc->bufferSize << 6 );
-    frameshtons(pCtx, pBuf, tmp78__, 0);
+    tANI_U16 tmp79__;
+    tmp79__ = 0U;
+    tmp79__ |= ( pSrc->amsduSupported << 0 );
+    tmp79__ |= ( pSrc->policy << 1 );
+    tmp79__ |= ( pSrc->tid << 2 );
+    tmp79__ |= ( pSrc->bufferSize << 6 );
+    frameshtons(pCtx, pBuf, tmp79__, 0);
     (void)pCtx;
 } /* End dot11fPackFfAddBAParameterSet. */
 
@@ -23326,11 +23531,11 @@
                                            tDot11fFfBAStartingSequenceControl *pSrc,
                                            tANI_U8 *pBuf)
 {
-    tANI_U16 tmp79__;
-    tmp79__ = 0U;
-    tmp79__ |= ( pSrc->fragNumber << 0 );
-    tmp79__ |= ( pSrc->ssn << 4 );
-    frameshtons(pCtx, pBuf, tmp79__, 0);
+    tANI_U16 tmp80__;
+    tmp80__ = 0U;
+    tmp80__ |= ( pSrc->fragNumber << 0 );
+    tmp80__ |= ( pSrc->ssn << 4 );
+    frameshtons(pCtx, pBuf, tmp80__, 0);
     (void)pCtx;
 } /* End dot11fPackFfBAStartingSequenceControl. */
 
@@ -23354,25 +23559,25 @@
                               tDot11fFfCapabilities *pSrc,
                               tANI_U8 *pBuf)
 {
-    tANI_U16 tmp80__;
-    tmp80__ = 0U;
-    tmp80__ |= ( pSrc->ess << 0 );
-    tmp80__ |= ( pSrc->ibss << 1 );
-    tmp80__ |= ( pSrc->cfPollable << 2 );
-    tmp80__ |= ( pSrc->cfPollReq << 3 );
-    tmp80__ |= ( pSrc->privacy << 4 );
-    tmp80__ |= ( pSrc->shortPreamble << 5 );
-    tmp80__ |= ( pSrc->pbcc << 6 );
-    tmp80__ |= ( pSrc->channelAgility << 7 );
-    tmp80__ |= ( pSrc->spectrumMgt << 8 );
-    tmp80__ |= ( pSrc->qos << 9 );
-    tmp80__ |= ( pSrc->shortSlotTime << 10 );
-    tmp80__ |= ( pSrc->apsd << 11 );
-    tmp80__ |= ( pSrc->rrm << 12 );
-    tmp80__ |= ( pSrc->dsssOfdm << 13 );
-    tmp80__ |= ( pSrc->delayedBA << 14 );
-    tmp80__ |= ( pSrc->immediateBA << 15 );
-    frameshtons(pCtx, pBuf, tmp80__, 0);
+    tANI_U16 tmp81__;
+    tmp81__ = 0U;
+    tmp81__ |= ( pSrc->ess << 0 );
+    tmp81__ |= ( pSrc->ibss << 1 );
+    tmp81__ |= ( pSrc->cfPollable << 2 );
+    tmp81__ |= ( pSrc->cfPollReq << 3 );
+    tmp81__ |= ( pSrc->privacy << 4 );
+    tmp81__ |= ( pSrc->shortPreamble << 5 );
+    tmp81__ |= ( pSrc->pbcc << 6 );
+    tmp81__ |= ( pSrc->channelAgility << 7 );
+    tmp81__ |= ( pSrc->spectrumMgt << 8 );
+    tmp81__ |= ( pSrc->qos << 9 );
+    tmp81__ |= ( pSrc->shortSlotTime << 10 );
+    tmp81__ |= ( pSrc->apsd << 11 );
+    tmp81__ |= ( pSrc->rrm << 12 );
+    tmp81__ |= ( pSrc->dsssOfdm << 13 );
+    tmp81__ |= ( pSrc->delayedBA << 14 );
+    tmp81__ |= ( pSrc->immediateBA << 15 );
+    frameshtons(pCtx, pBuf, tmp81__, 0);
     (void)pCtx;
 } /* End dot11fPackFfCapabilities. */
 
@@ -23396,12 +23601,12 @@
                                    tDot11fFfDelBAParameterSet *pSrc,
                                    tANI_U8 *pBuf)
 {
-    tANI_U16 tmp81__;
-    tmp81__ = 0U;
-    tmp81__ |= ( pSrc->reserved << 0 );
-    tmp81__ |= ( pSrc->initiator << 11 );
-    tmp81__ |= ( pSrc->tid << 12 );
-    frameshtons(pCtx, pBuf, tmp81__, 0);
+    tANI_U16 tmp82__;
+    tmp82__ = 0U;
+    tmp82__ |= ( pSrc->reserved << 0 );
+    tmp82__ |= ( pSrc->initiator << 11 );
+    tmp82__ |= ( pSrc->tid << 12 );
+    frameshtons(pCtx, pBuf, tmp82__, 0);
     (void)pCtx;
 } /* End dot11fPackFfDelBAParameterSet. */
 
@@ -23457,13 +23662,13 @@
                                tDot11fFfOperatingMode *pSrc,
                                tANI_U8 *pBuf)
 {
-    tANI_U8 tmp82__;
-    tmp82__ = 0U;
-    tmp82__ |= ( pSrc->chanWidth << 0 );
-    tmp82__ |= ( pSrc->reserved << 2 );
-    tmp82__ |= ( pSrc->rxNSS << 4 );
-    tmp82__ |= ( pSrc->rxNSSType << 7 );
-    *pBuf = tmp82__;
+    tANI_U8 tmp83__;
+    tmp83__ = 0U;
+    tmp83__ |= ( pSrc->chanWidth << 0 );
+    tmp83__ |= ( pSrc->reserved << 2 );
+    tmp83__ |= ( pSrc->rxNSS << 4 );
+    tmp83__ |= ( pSrc->rxNSSType << 7 );
+    *pBuf = tmp83__;
     (void)pCtx;
 } /* End dot11fPackFfOperatingMode. */
 
@@ -23551,12 +23756,12 @@
                                 tDot11fFfSMPowerModeSet *pSrc,
                                 tANI_U8 *pBuf)
 {
-    tANI_U8 tmp83__;
-    tmp83__ = 0U;
-    tmp83__ |= ( pSrc->PowerSave_En << 0 );
-    tmp83__ |= ( pSrc->Mode << 1 );
-    tmp83__ |= ( pSrc->reserved << 2 );
-    *pBuf = tmp83__;
+    tANI_U8 tmp84__;
+    tmp84__ = 0U;
+    tmp84__ |= ( pSrc->PowerSave_En << 0 );
+    tmp84__ |= ( pSrc->Mode << 1 );
+    tmp84__ |= ( pSrc->reserved << 2 );
+    *pBuf = tmp84__;
     (void)pCtx;
 } /* End dot11fPackFfSMPowerModeSet. */
 
@@ -23596,19 +23801,19 @@
                         tDot11fFfTSInfo *pSrc,
                         tANI_U8 *pBuf)
 {
-    tANI_U32 tmp84__;
-    tmp84__ = 0U;
-    tmp84__ |= ( pSrc->traffic_type << 0 );
-    tmp84__ |= ( pSrc->tsid << 1 );
-    tmp84__ |= ( pSrc->direction << 5 );
-    tmp84__ |= ( pSrc->access_policy << 7 );
-    tmp84__ |= ( pSrc->aggregation << 9 );
-    tmp84__ |= ( pSrc->psb << 10 );
-    tmp84__ |= ( pSrc->user_priority << 11 );
-    tmp84__ |= ( pSrc->tsinfo_ack_pol << 14 );
-    tmp84__ |= ( pSrc->schedule << 16 );
-    tmp84__ |= ( pSrc->unused << 17 );
-    frameshtonl(pCtx, pBuf, tmp84__, 0);
+    tANI_U32 tmp85__;
+    tmp85__ = 0U;
+    tmp85__ |= ( pSrc->traffic_type << 0 );
+    tmp85__ |= ( pSrc->tsid << 1 );
+    tmp85__ |= ( pSrc->direction << 5 );
+    tmp85__ |= ( pSrc->access_policy << 7 );
+    tmp85__ |= ( pSrc->aggregation << 9 );
+    tmp85__ |= ( pSrc->psb << 10 );
+    tmp85__ |= ( pSrc->user_priority << 11 );
+    tmp85__ |= ( pSrc->tsinfo_ack_pol << 14 );
+    tmp85__ |= ( pSrc->schedule << 16 );
+    tmp85__ |= ( pSrc->unused << 17 );
+    frameshtonl(pCtx, pBuf, tmp85__, 0);
     (void)pCtx;
 } /* End dot11fPackFfTSInfo. */
 
@@ -23729,7 +23934,7 @@
     tANI_U8* pTlvLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp85__;
+    tANI_U8 tmp86__;
     nNeeded += 3;
     if ( nNeeded > nBuf ) return DOT11F_BUFFER_OVERFLOW;
     while ( pSrc->present )
@@ -23738,10 +23943,10 @@
         pBuf += 1; *pnConsumed += 1;
         pTlvLen = pBuf;
         pBuf += 1; *pnConsumed += 1;
-        tmp85__ = 0U;
-        tmp85__ |= ( pSrc->minor << 0 );
-        tmp85__ |= ( pSrc->major << 4 );
-        *pBuf = tmp85__;
+        tmp86__ = 0U;
+        tmp86__ |= ( pSrc->minor << 0 );
+        tmp86__ |= ( pSrc->major << 4 );
+        *pBuf = tmp86__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
@@ -24950,7 +25155,7 @@
     tANI_U8* pTlvLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp86__;
+    tANI_U8 tmp87__;
     nNeeded += 5;
     if ( nNeeded > nBuf ) return DOT11F_BUFFER_OVERFLOW;
     while ( pSrc->present )
@@ -24959,10 +25164,10 @@
         pBuf += 2; *pnConsumed += 2;
         pTlvLen = pBuf;
         pBuf += 2; *pnConsumed += 2;
-        tmp86__ = 0U;
-        tmp86__ |= ( pSrc->minor << 0 );
-        tmp86__ |= ( pSrc->major << 4 );
-        *pBuf = tmp86__;
+        tmp87__ = 0U;
+        tmp87__ |= ( pSrc->minor << 0 );
+        tmp87__ |= ( pSrc->major << 4 );
+        *pBuf = tmp87__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
@@ -25168,7 +25373,7 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U16 tmp87__;
+    tANI_U16 tmp88__;
     nNeeded  +=  (pSrc->num_key + 11);
     while ( pSrc->present )
     {
@@ -25177,10 +25382,10 @@
         ++pBuf; ++(*pnConsumed);
         pIeLen = pBuf;
         ++pBuf; ++(*pnConsumed);
-        tmp87__ = 0U;
-        tmp87__ |= ( pSrc->keyId << 0 );
-        tmp87__ |= ( pSrc->reserved << 2 );
-        frameshtons(pCtx, pBuf, tmp87__, 0);
+        tmp88__ = 0U;
+        tmp88__ |= ( pSrc->keyId << 0 );
+        tmp88__ |= ( pSrc->reserved << 2 );
+        frameshtons(pCtx, pBuf, tmp88__, 0);
         *pnConsumed += 2;
         pBuf += 2;
         nBuf -=  2 ;
@@ -25476,7 +25681,6 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp88__;
     tANI_U8 tmp89__;
     tANI_U8 tmp90__;
     tANI_U8 tmp91__;
@@ -25484,6 +25688,7 @@
     tANI_U8 tmp93__;
     tANI_U8 tmp94__;
     tANI_U8 tmp95__;
+    tANI_U8 tmp96__;
     nNeeded  += 18;
     while ( pSrc->present )
     {
@@ -25498,76 +25703,76 @@
         *pBuf = pSrc->reserved;
         *pnConsumed += 1;
         pBuf += 1;
-        tmp88__ = 0U;
-        tmp88__ |= ( pSrc->acbe_aifsn << 0 );
-        tmp88__ |= ( pSrc->acbe_acm << 4 );
-        tmp88__ |= ( pSrc->acbe_aci << 5 );
-        tmp88__ |= ( pSrc->unused1 << 7 );
-        *pBuf = tmp88__;
+        tmp89__ = 0U;
+        tmp89__ |= ( pSrc->acbe_aifsn << 0 );
+        tmp89__ |= ( pSrc->acbe_acm << 4 );
+        tmp89__ |= ( pSrc->acbe_aci << 5 );
+        tmp89__ |= ( pSrc->unused1 << 7 );
+        *pBuf = tmp89__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
-        tmp89__ = 0U;
-        tmp89__ |= ( pSrc->acbe_min << 0 );
-        tmp89__ |= ( pSrc->acbe_max << 4 );
-        *pBuf = tmp89__;
+        tmp90__ = 0U;
+        tmp90__ |= ( pSrc->acbe_min << 0 );
+        tmp90__ |= ( pSrc->acbe_max << 4 );
+        *pBuf = tmp90__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
         frameshtons(pCtx, pBuf, pSrc->acbe_txoplimit, 0);
         *pnConsumed += 2;
         pBuf += 2;
-        tmp90__ = 0U;
-        tmp90__ |= ( pSrc->acbk_aifsn << 0 );
-        tmp90__ |= ( pSrc->acbk_acm << 4 );
-        tmp90__ |= ( pSrc->acbk_aci << 5 );
-        tmp90__ |= ( pSrc->unused2 << 7 );
-        *pBuf = tmp90__;
+        tmp91__ = 0U;
+        tmp91__ |= ( pSrc->acbk_aifsn << 0 );
+        tmp91__ |= ( pSrc->acbk_acm << 4 );
+        tmp91__ |= ( pSrc->acbk_aci << 5 );
+        tmp91__ |= ( pSrc->unused2 << 7 );
+        *pBuf = tmp91__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
-        tmp91__ = 0U;
-        tmp91__ |= ( pSrc->acbk_min << 0 );
-        tmp91__ |= ( pSrc->acbk_max << 4 );
-        *pBuf = tmp91__;
+        tmp92__ = 0U;
+        tmp92__ |= ( pSrc->acbk_min << 0 );
+        tmp92__ |= ( pSrc->acbk_max << 4 );
+        *pBuf = tmp92__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
         frameshtons(pCtx, pBuf, pSrc->acbk_txoplimit, 0);
         *pnConsumed += 2;
         pBuf += 2;
-        tmp92__ = 0U;
-        tmp92__ |= ( pSrc->acvi_aifsn << 0 );
-        tmp92__ |= ( pSrc->acvi_acm << 4 );
-        tmp92__ |= ( pSrc->acvi_aci << 5 );
-        tmp92__ |= ( pSrc->unused3 << 7 );
-        *pBuf = tmp92__;
+        tmp93__ = 0U;
+        tmp93__ |= ( pSrc->acvi_aifsn << 0 );
+        tmp93__ |= ( pSrc->acvi_acm << 4 );
+        tmp93__ |= ( pSrc->acvi_aci << 5 );
+        tmp93__ |= ( pSrc->unused3 << 7 );
+        *pBuf = tmp93__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
-        tmp93__ = 0U;
-        tmp93__ |= ( pSrc->acvi_min << 0 );
-        tmp93__ |= ( pSrc->acvi_max << 4 );
-        *pBuf = tmp93__;
+        tmp94__ = 0U;
+        tmp94__ |= ( pSrc->acvi_min << 0 );
+        tmp94__ |= ( pSrc->acvi_max << 4 );
+        *pBuf = tmp94__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
         frameshtons(pCtx, pBuf, pSrc->acvi_txoplimit, 0);
         *pnConsumed += 2;
         pBuf += 2;
-        tmp94__ = 0U;
-        tmp94__ |= ( pSrc->acvo_aifsn << 0 );
-        tmp94__ |= ( pSrc->acvo_acm << 4 );
-        tmp94__ |= ( pSrc->acvo_aci << 5 );
-        tmp94__ |= ( pSrc->unused4 << 7 );
-        *pBuf = tmp94__;
+        tmp95__ = 0U;
+        tmp95__ |= ( pSrc->acvo_aifsn << 0 );
+        tmp95__ |= ( pSrc->acvo_acm << 4 );
+        tmp95__ |= ( pSrc->acvo_aci << 5 );
+        tmp95__ |= ( pSrc->unused4 << 7 );
+        *pBuf = tmp95__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
-        tmp95__ = 0U;
-        tmp95__ |= ( pSrc->acvo_min << 0 );
-        tmp95__ |= ( pSrc->acvo_max << 4 );
-        *pBuf = tmp95__;
+        tmp96__ = 0U;
+        tmp96__ |= ( pSrc->acvo_min << 0 );
+        tmp96__ |= ( pSrc->acvo_max << 4 );
+        *pBuf = tmp96__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
@@ -25755,7 +25960,7 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U16 tmp96__;
+    tANI_U16 tmp97__;
     nNeeded  += 6;
     while ( pSrc->present )
     {
@@ -25770,10 +25975,10 @@
         frameshtons(pCtx, pBuf, pSrc->baPolicy, 0);
         *pnConsumed += 2;
         pBuf += 2;
-        tmp96__ = 0U;
-        tmp96__ |= ( pSrc->baBufferSize << 0 );
-        tmp96__ |= ( pSrc->rsvd << 12 );
-        frameshtons(pCtx, pBuf, tmp96__, 0);
+        tmp97__ = 0U;
+        tmp97__ |= ( pSrc->baBufferSize << 0 );
+        tmp97__ |= ( pSrc->rsvd << 12 );
+        frameshtons(pCtx, pBuf, tmp97__, 0);
         *pnConsumed += 2;
         // fieldsEndFlag  = 1
         nBuf -=  2 ;
@@ -26192,11 +26397,11 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp97__;
     tANI_U8 tmp98__;
     tANI_U8 tmp99__;
     tANI_U8 tmp100__;
     tANI_U8 tmp101__;
+    tANI_U8 tmp102__;
     nNeeded  += 5;
     while ( pSrc->present )
     {
@@ -26205,58 +26410,58 @@
         ++pBuf; ++(*pnConsumed);
         pIeLen = pBuf;
         ++pBuf; ++(*pnConsumed);
-        tmp97__ = 0U;
-        tmp97__ |= ( pSrc->LinkMeasurement << 0 );
-        tmp97__ |= ( pSrc->NeighborRpt << 1 );
-        tmp97__ |= ( pSrc->parallel << 2 );
-        tmp97__ |= ( pSrc->repeated << 3 );
-        tmp97__ |= ( pSrc->BeaconPassive << 4 );
-        tmp97__ |= ( pSrc->BeaconActive << 5 );
-        tmp97__ |= ( pSrc->BeaconTable << 6 );
-        tmp97__ |= ( pSrc->BeaconRepCond << 7 );
-        *pBuf = tmp97__;
-        *pnConsumed += 1;
-        pBuf += 1;
-        nBuf -=  1 ;
         tmp98__ = 0U;
-        tmp98__ |= ( pSrc->FrameMeasurement << 0 );
-        tmp98__ |= ( pSrc->ChannelLoad << 1 );
-        tmp98__ |= ( pSrc->NoiseHistogram << 2 );
-        tmp98__ |= ( pSrc->statistics << 3 );
-        tmp98__ |= ( pSrc->LCIMeasurement << 4 );
-        tmp98__ |= ( pSrc->LCIAzimuth << 5 );
-        tmp98__ |= ( pSrc->TCMCapability << 6 );
-        tmp98__ |= ( pSrc->triggeredTCM << 7 );
+        tmp98__ |= ( pSrc->LinkMeasurement << 0 );
+        tmp98__ |= ( pSrc->NeighborRpt << 1 );
+        tmp98__ |= ( pSrc->parallel << 2 );
+        tmp98__ |= ( pSrc->repeated << 3 );
+        tmp98__ |= ( pSrc->BeaconPassive << 4 );
+        tmp98__ |= ( pSrc->BeaconActive << 5 );
+        tmp98__ |= ( pSrc->BeaconTable << 6 );
+        tmp98__ |= ( pSrc->BeaconRepCond << 7 );
         *pBuf = tmp98__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
         tmp99__ = 0U;
-        tmp99__ |= ( pSrc->APChanReport << 0 );
-        tmp99__ |= ( pSrc->RRMMIBEnabled << 1 );
-        tmp99__ |= ( pSrc->operatingChanMax << 2 );
-        tmp99__ |= ( pSrc->nonOperatinChanMax << 5 );
+        tmp99__ |= ( pSrc->FrameMeasurement << 0 );
+        tmp99__ |= ( pSrc->ChannelLoad << 1 );
+        tmp99__ |= ( pSrc->NoiseHistogram << 2 );
+        tmp99__ |= ( pSrc->statistics << 3 );
+        tmp99__ |= ( pSrc->LCIMeasurement << 4 );
+        tmp99__ |= ( pSrc->LCIAzimuth << 5 );
+        tmp99__ |= ( pSrc->TCMCapability << 6 );
+        tmp99__ |= ( pSrc->triggeredTCM << 7 );
         *pBuf = tmp99__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
         tmp100__ = 0U;
-        tmp100__ |= ( pSrc->MeasurementPilot << 0 );
-        tmp100__ |= ( pSrc->MeasurementPilotEnabled << 3 );
-        tmp100__ |= ( pSrc->NeighborTSFOffset << 4 );
-        tmp100__ |= ( pSrc->RCPIMeasurement << 5 );
-        tmp100__ |= ( pSrc->RSNIMeasurement << 6 );
-        tmp100__ |= ( pSrc->BssAvgAccessDelay << 7 );
+        tmp100__ |= ( pSrc->APChanReport << 0 );
+        tmp100__ |= ( pSrc->RRMMIBEnabled << 1 );
+        tmp100__ |= ( pSrc->operatingChanMax << 2 );
+        tmp100__ |= ( pSrc->nonOperatinChanMax << 5 );
         *pBuf = tmp100__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
         tmp101__ = 0U;
-        tmp101__ |= ( pSrc->BSSAvailAdmission << 0 );
-        tmp101__ |= ( pSrc->AntennaInformation << 1 );
-        tmp101__ |= ( pSrc->reserved << 2 );
+        tmp101__ |= ( pSrc->MeasurementPilot << 0 );
+        tmp101__ |= ( pSrc->MeasurementPilotEnabled << 3 );
+        tmp101__ |= ( pSrc->NeighborTSFOffset << 4 );
+        tmp101__ |= ( pSrc->RCPIMeasurement << 5 );
+        tmp101__ |= ( pSrc->RSNIMeasurement << 6 );
+        tmp101__ |= ( pSrc->BssAvgAccessDelay << 7 );
         *pBuf = tmp101__;
         *pnConsumed += 1;
+        pBuf += 1;
+        nBuf -=  1 ;
+        tmp102__ = 0U;
+        tmp102__ |= ( pSrc->BSSAvailAdmission << 0 );
+        tmp102__ |= ( pSrc->AntennaInformation << 1 );
+        tmp102__ |= ( pSrc->reserved << 2 );
+        *pBuf = tmp102__;
+        *pnConsumed += 1;
         // fieldsEndFlag  = 1
         nBuf -=  1 ;
         break;
@@ -26338,7 +26543,7 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U16 tmp102__;
+    tANI_U16 tmp103__;
     nNeeded  += 14;
     while ( pSrc->present )
     {
@@ -26347,12 +26552,12 @@
         ++pBuf; ++(*pnConsumed);
         pIeLen = pBuf;
         ++pBuf; ++(*pnConsumed);
-        tmp102__ = 0U;
-        tmp102__ |= ( pSrc->aggregation << 0 );
-        tmp102__ |= ( pSrc->tsid << 1 );
-        tmp102__ |= ( pSrc->direction << 5 );
-        tmp102__ |= ( pSrc->reserved << 7 );
-        frameshtons(pCtx, pBuf, tmp102__, 0);
+        tmp103__ = 0U;
+        tmp103__ |= ( pSrc->aggregation << 0 );
+        tmp103__ |= ( pSrc->tsid << 1 );
+        tmp103__ |= ( pSrc->direction << 5 );
+        tmp103__ |= ( pSrc->reserved << 7 );
+        frameshtons(pCtx, pBuf, tmp103__, 0);
         *pnConsumed += 2;
         pBuf += 2;
         nBuf -=  2 ;
@@ -26552,9 +26757,9 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U16 tmp103__;
-    tANI_U8 tmp104__;
-    tANI_U16 tmp105__;
+    tANI_U16 tmp104__;
+    tANI_U8 tmp105__;
+    tANI_U16 tmp106__;
     nNeeded  += 55;
     while ( pSrc->present )
     {
@@ -26563,30 +26768,30 @@
         ++pBuf; ++(*pnConsumed);
         pIeLen = pBuf;
         ++pBuf; ++(*pnConsumed);
-        tmp103__ = 0U;
-        tmp103__ |= ( pSrc->traffic_type << 0 );
-        tmp103__ |= ( pSrc->tsid << 1 );
-        tmp103__ |= ( pSrc->direction << 5 );
-        tmp103__ |= ( pSrc->access_policy << 7 );
-        tmp103__ |= ( pSrc->aggregation << 9 );
-        tmp103__ |= ( pSrc->psb << 10 );
-        tmp103__ |= ( pSrc->user_priority << 11 );
-        tmp103__ |= ( pSrc->tsinfo_ack_pol << 14 );
-        frameshtons(pCtx, pBuf, tmp103__, 0);
+        tmp104__ = 0U;
+        tmp104__ |= ( pSrc->traffic_type << 0 );
+        tmp104__ |= ( pSrc->tsid << 1 );
+        tmp104__ |= ( pSrc->direction << 5 );
+        tmp104__ |= ( pSrc->access_policy << 7 );
+        tmp104__ |= ( pSrc->aggregation << 9 );
+        tmp104__ |= ( pSrc->psb << 10 );
+        tmp104__ |= ( pSrc->user_priority << 11 );
+        tmp104__ |= ( pSrc->tsinfo_ack_pol << 14 );
+        frameshtons(pCtx, pBuf, tmp104__, 0);
         *pnConsumed += 2;
         pBuf += 2;
         nBuf -=  2 ;
-        tmp104__ = 0U;
-        tmp104__ |= ( pSrc->schedule << 0 );
-        tmp104__ |= ( pSrc->unused << 1 );
-        *pBuf = tmp104__;
+        tmp105__ = 0U;
+        tmp105__ |= ( pSrc->schedule << 0 );
+        tmp105__ |= ( pSrc->unused << 1 );
+        *pBuf = tmp105__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
-        tmp105__ = 0U;
-        tmp105__ |= ( pSrc->size << 0 );
-        tmp105__ |= ( pSrc->fixed << 15 );
-        frameshtons(pCtx, pBuf, tmp105__, 0);
+        tmp106__ = 0U;
+        tmp106__ |= ( pSrc->size << 0 );
+        tmp106__ |= ( pSrc->fixed << 15 );
+        frameshtons(pCtx, pBuf, tmp106__, 0);
         *pnConsumed += 2;
         pBuf += 2;
         nBuf -=  2 ;
@@ -26651,7 +26856,7 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U16 tmp106__;
+    tANI_U16 tmp107__;
     nNeeded  += 15;
     while ( pSrc->present )
     {
@@ -26673,12 +26878,12 @@
         *pBuf = pSrc->version;
         *pnConsumed += 1;
         pBuf += 1;
-        tmp106__ = 0U;
-        tmp106__ |= ( pSrc->aggregation << 0 );
-        tmp106__ |= ( pSrc->tsid << 1 );
-        tmp106__ |= ( pSrc->direction << 5 );
-        tmp106__ |= ( pSrc->reserved << 7 );
-        frameshtons(pCtx, pBuf, tmp106__, 0);
+        tmp107__ = 0U;
+        tmp107__ |= ( pSrc->aggregation << 0 );
+        tmp107__ |= ( pSrc->tsid << 1 );
+        tmp107__ |= ( pSrc->direction << 5 );
+        tmp107__ |= ( pSrc->reserved << 7 );
+        frameshtons(pCtx, pBuf, tmp107__, 0);
         *pnConsumed += 2;
         pBuf += 2;
         nBuf -=  2 ;
@@ -26917,9 +27122,9 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U16 tmp107__;
-    tANI_U8 tmp108__;
-    tANI_U16 tmp109__;
+    tANI_U16 tmp108__;
+    tANI_U8 tmp109__;
+    tANI_U16 tmp110__;
     nNeeded  += 38;
     while ( pSrc->present )
     {
@@ -26941,30 +27146,30 @@
         *pBuf = pSrc->version;
         *pnConsumed += 1;
         pBuf += 1;
-        tmp107__ = 0U;
-        tmp107__ |= ( pSrc->traffic_type << 0 );
-        tmp107__ |= ( pSrc->tsid << 1 );
-        tmp107__ |= ( pSrc->direction << 5 );
-        tmp107__ |= ( pSrc->access_policy << 7 );
-        tmp107__ |= ( pSrc->aggregation << 9 );
-        tmp107__ |= ( pSrc->psb << 10 );
-        tmp107__ |= ( pSrc->user_priority << 11 );
-        tmp107__ |= ( pSrc->tsinfo_ack_pol << 14 );
-        frameshtons(pCtx, pBuf, tmp107__, 0);
+        tmp108__ = 0U;
+        tmp108__ |= ( pSrc->traffic_type << 0 );
+        tmp108__ |= ( pSrc->tsid << 1 );
+        tmp108__ |= ( pSrc->direction << 5 );
+        tmp108__ |= ( pSrc->access_policy << 7 );
+        tmp108__ |= ( pSrc->aggregation << 9 );
+        tmp108__ |= ( pSrc->psb << 10 );
+        tmp108__ |= ( pSrc->user_priority << 11 );
+        tmp108__ |= ( pSrc->tsinfo_ack_pol << 14 );
+        frameshtons(pCtx, pBuf, tmp108__, 0);
         *pnConsumed += 2;
         pBuf += 2;
         nBuf -=  2 ;
-        tmp108__ = 0U;
-        tmp108__ |= ( pSrc->tsinfo_rsvd << 0 );
-        tmp108__ |= ( pSrc->burst_size_defn << 7 );
-        *pBuf = tmp108__;
+        tmp109__ = 0U;
+        tmp109__ |= ( pSrc->tsinfo_rsvd << 0 );
+        tmp109__ |= ( pSrc->burst_size_defn << 7 );
+        *pBuf = tmp109__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
-        tmp109__ = 0U;
-        tmp109__ |= ( pSrc->size << 0 );
-        tmp109__ |= ( pSrc->fixed << 15 );
-        frameshtons(pCtx, pBuf, tmp109__, 0);
+        tmp110__ = 0U;
+        tmp110__ |= ( pSrc->size << 0 );
+        tmp110__ |= ( pSrc->fixed << 15 );
+        frameshtons(pCtx, pBuf, tmp110__, 0);
         *pnConsumed += 2;
         pBuf += 2;
         nBuf -=  2 ;
@@ -27274,7 +27479,6 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp110__;
     tANI_U8 tmp111__;
     tANI_U8 tmp112__;
     tANI_U8 tmp113__;
@@ -27282,6 +27486,7 @@
     tANI_U8 tmp115__;
     tANI_U8 tmp116__;
     tANI_U8 tmp117__;
+    tANI_U8 tmp118__;
     nNeeded  += 18;
     while ( pSrc->present )
     {
@@ -27296,76 +27501,76 @@
         *pBuf = pSrc->reserved;
         *pnConsumed += 1;
         pBuf += 1;
-        tmp110__ = 0U;
-        tmp110__ |= ( pSrc->acbe_aifsn << 0 );
-        tmp110__ |= ( pSrc->acbe_acm << 4 );
-        tmp110__ |= ( pSrc->acbe_aci << 5 );
-        tmp110__ |= ( pSrc->unused1 << 7 );
-        *pBuf = tmp110__;
+        tmp111__ = 0U;
+        tmp111__ |= ( pSrc->acbe_aifsn << 0 );
+        tmp111__ |= ( pSrc->acbe_acm << 4 );
+        tmp111__ |= ( pSrc->acbe_aci << 5 );
+        tmp111__ |= ( pSrc->unused1 << 7 );
+        *pBuf = tmp111__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
-        tmp111__ = 0U;
-        tmp111__ |= ( pSrc->acbe_acwmin << 0 );
-        tmp111__ |= ( pSrc->acbe_acwmax << 4 );
-        *pBuf = tmp111__;
+        tmp112__ = 0U;
+        tmp112__ |= ( pSrc->acbe_acwmin << 0 );
+        tmp112__ |= ( pSrc->acbe_acwmax << 4 );
+        *pBuf = tmp112__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
         frameshtons(pCtx, pBuf, pSrc->acbe_txoplimit, 0);
         *pnConsumed += 2;
         pBuf += 2;
-        tmp112__ = 0U;
-        tmp112__ |= ( pSrc->acbk_aifsn << 0 );
-        tmp112__ |= ( pSrc->acbk_acm << 4 );
-        tmp112__ |= ( pSrc->acbk_aci << 5 );
-        tmp112__ |= ( pSrc->unused2 << 7 );
-        *pBuf = tmp112__;
+        tmp113__ = 0U;
+        tmp113__ |= ( pSrc->acbk_aifsn << 0 );
+        tmp113__ |= ( pSrc->acbk_acm << 4 );
+        tmp113__ |= ( pSrc->acbk_aci << 5 );
+        tmp113__ |= ( pSrc->unused2 << 7 );
+        *pBuf = tmp113__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
-        tmp113__ = 0U;
-        tmp113__ |= ( pSrc->acbk_acwmin << 0 );
-        tmp113__ |= ( pSrc->acbk_acwmax << 4 );
-        *pBuf = tmp113__;
+        tmp114__ = 0U;
+        tmp114__ |= ( pSrc->acbk_acwmin << 0 );
+        tmp114__ |= ( pSrc->acbk_acwmax << 4 );
+        *pBuf = tmp114__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
         frameshtons(pCtx, pBuf, pSrc->acbk_txoplimit, 0);
         *pnConsumed += 2;
         pBuf += 2;
-        tmp114__ = 0U;
-        tmp114__ |= ( pSrc->acvi_aifsn << 0 );
-        tmp114__ |= ( pSrc->acvi_acm << 4 );
-        tmp114__ |= ( pSrc->acvi_aci << 5 );
-        tmp114__ |= ( pSrc->unused3 << 7 );
-        *pBuf = tmp114__;
+        tmp115__ = 0U;
+        tmp115__ |= ( pSrc->acvi_aifsn << 0 );
+        tmp115__ |= ( pSrc->acvi_acm << 4 );
+        tmp115__ |= ( pSrc->acvi_aci << 5 );
+        tmp115__ |= ( pSrc->unused3 << 7 );
+        *pBuf = tmp115__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
-        tmp115__ = 0U;
-        tmp115__ |= ( pSrc->acvi_acwmin << 0 );
-        tmp115__ |= ( pSrc->acvi_acwmax << 4 );
-        *pBuf = tmp115__;
+        tmp116__ = 0U;
+        tmp116__ |= ( pSrc->acvi_acwmin << 0 );
+        tmp116__ |= ( pSrc->acvi_acwmax << 4 );
+        *pBuf = tmp116__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
         frameshtons(pCtx, pBuf, pSrc->acvi_txoplimit, 0);
         *pnConsumed += 2;
         pBuf += 2;
-        tmp116__ = 0U;
-        tmp116__ |= ( pSrc->acvo_aifsn << 0 );
-        tmp116__ |= ( pSrc->acvo_acm << 4 );
-        tmp116__ |= ( pSrc->acvo_aci << 5 );
-        tmp116__ |= ( pSrc->unused4 << 7 );
-        *pBuf = tmp116__;
+        tmp117__ = 0U;
+        tmp117__ |= ( pSrc->acvo_aifsn << 0 );
+        tmp117__ |= ( pSrc->acvo_acm << 4 );
+        tmp117__ |= ( pSrc->acvo_aci << 5 );
+        tmp117__ |= ( pSrc->unused4 << 7 );
+        *pBuf = tmp117__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
-        tmp117__ = 0U;
-        tmp117__ |= ( pSrc->acvo_acwmin << 0 );
-        tmp117__ |= ( pSrc->acvo_acwmax << 4 );
-        *pBuf = tmp117__;
+        tmp118__ = 0U;
+        tmp118__ |= ( pSrc->acvo_acwmin << 0 );
+        tmp118__ |= ( pSrc->acvo_acwmax << 4 );
+        *pBuf = tmp118__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
@@ -27391,7 +27596,7 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp118__;
+    tANI_U8 tmp119__;
     nNeeded  += 1;
     while ( pSrc->present )
     {
@@ -27400,12 +27605,12 @@
         ++pBuf; ++(*pnConsumed);
         pIeLen = pBuf;
         ++pBuf; ++(*pnConsumed);
-        tmp118__ = 0U;
-        tmp118__ |= ( pSrc->non_erp_present << 0 );
-        tmp118__ |= ( pSrc->use_prot << 1 );
-        tmp118__ |= ( pSrc->barker_preamble << 2 );
-        tmp118__ |= ( pSrc->unused << 3 );
-        *pBuf = tmp118__;
+        tmp119__ = 0U;
+        tmp119__ |= ( pSrc->non_erp_present << 0 );
+        tmp119__ |= ( pSrc->use_prot << 1 );
+        tmp119__ |= ( pSrc->barker_preamble << 2 );
+        tmp119__ |= ( pSrc->unused << 3 );
+        *pBuf = tmp119__;
         *pnConsumed += 1;
         // fieldsEndFlag  = 1
         nBuf -=  1 ;
@@ -27466,7 +27671,7 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp119__;
+    tANI_U8 tmp120__;
     nNeeded  += 2;
     while ( pSrc->present )
     {
@@ -27486,10 +27691,10 @@
         *pBuf = pSrc->mgmt_state;
         *pnConsumed += 1;
         pBuf += 1;
-        tmp119__ = 0U;
-        tmp119__ |= ( pSrc->mbssid_mask << 0 );
-        tmp119__ |= ( pSrc->reserved << 3 );
-        *pBuf = tmp119__;
+        tmp120__ = 0U;
+        tmp120__ |= ( pSrc->mbssid_mask << 0 );
+        tmp120__ |= ( pSrc->reserved << 3 );
+        *pBuf = tmp120__;
         *pnConsumed += 1;
         // fieldsEndFlag  = 1
         nBuf -=  1 ;
@@ -27880,7 +28085,7 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U16 tmp120__;
+    tANI_U16 tmp121__;
     tANI_U32 status = DOT11F_PARSE_SUCCESS;
     status = dot11fGetPackedIEFTInfo(pCtx, pSrc, &nNeeded);
     if ( ! DOT11F_SUCCEEDED( status ) ) return status;
@@ -27891,10 +28096,10 @@
         ++pBuf; --nBuf; ++(*pnConsumed);
         pIeLen = pBuf;
         ++pBuf; --nBuf; ++(*pnConsumed);
-        tmp120__ = 0U;
-        tmp120__ |= ( pSrc->reserved << 0 );
-        tmp120__ |= ( pSrc->IECount << 8 );
-        frameshtons(pCtx, pBuf, tmp120__, 0);
+        tmp121__ = 0U;
+        tmp121__ |= ( pSrc->reserved << 0 );
+        tmp121__ |= ( pSrc->IECount << 8 );
+        frameshtons(pCtx, pBuf, tmp121__, 0);
         *pnConsumed += 2;
         pBuf += 2;
         nBuf -=  2 ;
@@ -27933,7 +28138,7 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp121__;
+    tANI_U8 tmp122__;
     nNeeded  += 1;
     while ( pSrc->present )
     {
@@ -27942,14 +28147,14 @@
         ++pBuf; ++(*pnConsumed);
         pIeLen = pBuf;
         ++pBuf; ++(*pnConsumed);
-        tmp121__ = 0U;
-        tmp121__ |= ( pSrc->infoRequest << 0 );
-        tmp121__ |= ( pSrc->fortyMHzIntolerant << 1 );
-        tmp121__ |= ( pSrc->twentyMHzBssWidthReq << 2 );
-        tmp121__ |= ( pSrc->obssScanExemptionReq << 3 );
-        tmp121__ |= ( pSrc->obssScanExemptionGrant << 4 );
-        tmp121__ |= ( pSrc->unused << 5 );
-        *pBuf = tmp121__;
+        tmp122__ = 0U;
+        tmp122__ |= ( pSrc->infoRequest << 0 );
+        tmp122__ |= ( pSrc->fortyMHzIntolerant << 1 );
+        tmp122__ |= ( pSrc->twentyMHzBssWidthReq << 2 );
+        tmp122__ |= ( pSrc->obssScanExemptionReq << 3 );
+        tmp122__ |= ( pSrc->obssScanExemptionGrant << 4 );
+        tmp122__ |= ( pSrc->unused << 5 );
+        *pBuf = tmp122__;
         *pnConsumed += 1;
         // fieldsEndFlag  = 1
         nBuf -=  1 ;
@@ -28005,11 +28210,11 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U16 tmp122__;
-    tANI_U8 tmp123__;
-    tANI_U16 tmp124__;
-    tANI_U32 tmp125__;
-    tANI_U8 tmp126__;
+    tANI_U16 tmp123__;
+    tANI_U8 tmp124__;
+    tANI_U16 tmp125__;
+    tANI_U32 tmp126__;
+    tANI_U8 tmp127__;
     nNeeded  +=  (pSrc->num_rsvd + 26);
     while ( pSrc->present )
     {
@@ -28018,77 +28223,77 @@
         ++pBuf; ++(*pnConsumed);
         pIeLen = pBuf;
         ++pBuf; ++(*pnConsumed);
-        tmp122__ = 0U;
-        tmp122__ |= ( pSrc->advCodingCap << 0 );
-        tmp122__ |= ( pSrc->supportedChannelWidthSet << 1 );
-        tmp122__ |= ( pSrc->mimoPowerSave << 2 );
-        tmp122__ |= ( pSrc->greenField << 4 );
-        tmp122__ |= ( pSrc->shortGI20MHz << 5 );
-        tmp122__ |= ( pSrc->shortGI40MHz << 6 );
-        tmp122__ |= ( pSrc->txSTBC << 7 );
-        tmp122__ |= ( pSrc->rxSTBC << 8 );
-        tmp122__ |= ( pSrc->delayedBA << 10 );
-        tmp122__ |= ( pSrc->maximalAMSDUsize << 11 );
-        tmp122__ |= ( pSrc->dsssCckMode40MHz << 12 );
-        tmp122__ |= ( pSrc->psmp << 13 );
-        tmp122__ |= ( pSrc->stbcControlFrame << 14 );
-        tmp122__ |= ( pSrc->lsigTXOPProtection << 15 );
-        frameshtons(pCtx, pBuf, tmp122__, 0);
+        tmp123__ = 0U;
+        tmp123__ |= ( pSrc->advCodingCap << 0 );
+        tmp123__ |= ( pSrc->supportedChannelWidthSet << 1 );
+        tmp123__ |= ( pSrc->mimoPowerSave << 2 );
+        tmp123__ |= ( pSrc->greenField << 4 );
+        tmp123__ |= ( pSrc->shortGI20MHz << 5 );
+        tmp123__ |= ( pSrc->shortGI40MHz << 6 );
+        tmp123__ |= ( pSrc->txSTBC << 7 );
+        tmp123__ |= ( pSrc->rxSTBC << 8 );
+        tmp123__ |= ( pSrc->delayedBA << 10 );
+        tmp123__ |= ( pSrc->maximalAMSDUsize << 11 );
+        tmp123__ |= ( pSrc->dsssCckMode40MHz << 12 );
+        tmp123__ |= ( pSrc->psmp << 13 );
+        tmp123__ |= ( pSrc->stbcControlFrame << 14 );
+        tmp123__ |= ( pSrc->lsigTXOPProtection << 15 );
+        frameshtons(pCtx, pBuf, tmp123__, 0);
         *pnConsumed += 2;
         pBuf += 2;
         nBuf -=  2 ;
-        tmp123__ = 0U;
-        tmp123__ |= ( pSrc->maxRxAMPDUFactor << 0 );
-        tmp123__ |= ( pSrc->mpduDensity << 2 );
-        tmp123__ |= ( pSrc->reserved1 << 5 );
-        *pBuf = tmp123__;
+        tmp124__ = 0U;
+        tmp124__ |= ( pSrc->maxRxAMPDUFactor << 0 );
+        tmp124__ |= ( pSrc->mpduDensity << 2 );
+        tmp124__ |= ( pSrc->reserved1 << 5 );
+        *pBuf = tmp124__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
         DOT11F_MEMCPY(pCtx, pBuf, pSrc->supportedMCSSet, 16);
         *pnConsumed += 16;
         pBuf += 16;
-        tmp124__ = 0U;
-        tmp124__ |= ( pSrc->pco << 0 );
-        tmp124__ |= ( pSrc->transitionTime << 1 );
-        tmp124__ |= ( pSrc->reserved2 << 3 );
-        tmp124__ |= ( pSrc->mcsFeedback << 8 );
-        tmp124__ |= ( pSrc->reserved3 << 10 );
-        frameshtons(pCtx, pBuf, tmp124__, 0);
+        tmp125__ = 0U;
+        tmp125__ |= ( pSrc->pco << 0 );
+        tmp125__ |= ( pSrc->transitionTime << 1 );
+        tmp125__ |= ( pSrc->reserved2 << 3 );
+        tmp125__ |= ( pSrc->mcsFeedback << 8 );
+        tmp125__ |= ( pSrc->reserved3 << 10 );
+        frameshtons(pCtx, pBuf, tmp125__, 0);
         *pnConsumed += 2;
         pBuf += 2;
         nBuf -=  2 ;
-        tmp125__ = 0U;
-        tmp125__ |= ( pSrc->txBF << 0 );
-        tmp125__ |= ( pSrc->rxStaggeredSounding << 1 );
-        tmp125__ |= ( pSrc->txStaggeredSounding << 2 );
-        tmp125__ |= ( pSrc->rxZLF << 3 );
-        tmp125__ |= ( pSrc->txZLF << 4 );
-        tmp125__ |= ( pSrc->implicitTxBF << 5 );
-        tmp125__ |= ( pSrc->calibration << 6 );
-        tmp125__ |= ( pSrc->explicitCSITxBF << 8 );
-        tmp125__ |= ( pSrc->explicitUncompressedSteeringMatrix << 9 );
-        tmp125__ |= ( pSrc->explicitBFCSIFeedback << 10 );
-        tmp125__ |= ( pSrc->explicitUncompressedSteeringMatrixFeedback << 13 );
-        tmp125__ |= ( pSrc->explicitCompressedSteeringMatrixFeedback << 16 );
-        tmp125__ |= ( pSrc->csiNumBFAntennae << 19 );
-        tmp125__ |= ( pSrc->uncompressedSteeringMatrixBFAntennae << 21 );
-        tmp125__ |= ( pSrc->compressedSteeringMatrixBFAntennae << 23 );
-        tmp125__ |= ( pSrc->reserved4 << 25 );
-        frameshtonl(pCtx, pBuf, tmp125__, 0);
+        tmp126__ = 0U;
+        tmp126__ |= ( pSrc->txBF << 0 );
+        tmp126__ |= ( pSrc->rxStaggeredSounding << 1 );
+        tmp126__ |= ( pSrc->txStaggeredSounding << 2 );
+        tmp126__ |= ( pSrc->rxZLF << 3 );
+        tmp126__ |= ( pSrc->txZLF << 4 );
+        tmp126__ |= ( pSrc->implicitTxBF << 5 );
+        tmp126__ |= ( pSrc->calibration << 6 );
+        tmp126__ |= ( pSrc->explicitCSITxBF << 8 );
+        tmp126__ |= ( pSrc->explicitUncompressedSteeringMatrix << 9 );
+        tmp126__ |= ( pSrc->explicitBFCSIFeedback << 10 );
+        tmp126__ |= ( pSrc->explicitUncompressedSteeringMatrixFeedback << 13 );
+        tmp126__ |= ( pSrc->explicitCompressedSteeringMatrixFeedback << 16 );
+        tmp126__ |= ( pSrc->csiNumBFAntennae << 19 );
+        tmp126__ |= ( pSrc->uncompressedSteeringMatrixBFAntennae << 21 );
+        tmp126__ |= ( pSrc->compressedSteeringMatrixBFAntennae << 23 );
+        tmp126__ |= ( pSrc->reserved4 << 25 );
+        frameshtonl(pCtx, pBuf, tmp126__, 0);
         *pnConsumed += 4;
         pBuf += 4;
         nBuf -=  4 ;
-        tmp126__ = 0U;
-        tmp126__ |= ( pSrc->antennaSelection << 0 );
-        tmp126__ |= ( pSrc->explicitCSIFeedbackTx << 1 );
-        tmp126__ |= ( pSrc->antennaIndicesFeedbackTx << 2 );
-        tmp126__ |= ( pSrc->explicitCSIFeedback << 3 );
-        tmp126__ |= ( pSrc->antennaIndicesFeedback << 4 );
-        tmp126__ |= ( pSrc->rxAS << 5 );
-        tmp126__ |= ( pSrc->txSoundingPPDUs << 6 );
-        tmp126__ |= ( pSrc->reserved5 << 7 );
-        *pBuf = tmp126__;
+        tmp127__ = 0U;
+        tmp127__ |= ( pSrc->antennaSelection << 0 );
+        tmp127__ |= ( pSrc->explicitCSIFeedbackTx << 1 );
+        tmp127__ |= ( pSrc->antennaIndicesFeedbackTx << 2 );
+        tmp127__ |= ( pSrc->explicitCSIFeedback << 3 );
+        tmp127__ |= ( pSrc->antennaIndicesFeedback << 4 );
+        tmp127__ |= ( pSrc->rxAS << 5 );
+        tmp127__ |= ( pSrc->txSoundingPPDUs << 6 );
+        tmp127__ |= ( pSrc->reserved5 << 7 );
+        *pBuf = tmp127__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
@@ -28114,9 +28319,9 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp127__;
-    tANI_U16 tmp128__;
+    tANI_U8 tmp128__;
     tANI_U16 tmp129__;
+    tANI_U16 tmp130__;
     nNeeded  +=  (pSrc->num_rsvd + 22);
     while ( pSrc->present )
     {
@@ -28128,35 +28333,35 @@
         *pBuf = pSrc->primaryChannel;
         *pnConsumed += 1;
         pBuf += 1;
-        tmp127__ = 0U;
-        tmp127__ |= ( pSrc->secondaryChannelOffset << 0 );
-        tmp127__ |= ( pSrc->recommendedTxWidthSet << 2 );
-        tmp127__ |= ( pSrc->rifsMode << 3 );
-        tmp127__ |= ( pSrc->controlledAccessOnly << 4 );
-        tmp127__ |= ( pSrc->serviceIntervalGranularity << 5 );
-        *pBuf = tmp127__;
+        tmp128__ = 0U;
+        tmp128__ |= ( pSrc->secondaryChannelOffset << 0 );
+        tmp128__ |= ( pSrc->recommendedTxWidthSet << 2 );
+        tmp128__ |= ( pSrc->rifsMode << 3 );
+        tmp128__ |= ( pSrc->controlledAccessOnly << 4 );
+        tmp128__ |= ( pSrc->serviceIntervalGranularity << 5 );
+        *pBuf = tmp128__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
-        tmp128__ = 0U;
-        tmp128__ |= ( pSrc->opMode << 0 );
-        tmp128__ |= ( pSrc->nonGFDevicesPresent << 2 );
-        tmp128__ |= ( pSrc->transmitBurstLimit << 3 );
-        tmp128__ |= ( pSrc->obssNonHTStaPresent << 4 );
-        tmp128__ |= ( pSrc->reserved << 5 );
-        frameshtons(pCtx, pBuf, tmp128__, 0);
+        tmp129__ = 0U;
+        tmp129__ |= ( pSrc->opMode << 0 );
+        tmp129__ |= ( pSrc->nonGFDevicesPresent << 2 );
+        tmp129__ |= ( pSrc->transmitBurstLimit << 3 );
+        tmp129__ |= ( pSrc->obssNonHTStaPresent << 4 );
+        tmp129__ |= ( pSrc->reserved << 5 );
+        frameshtons(pCtx, pBuf, tmp129__, 0);
         *pnConsumed += 2;
         pBuf += 2;
         nBuf -=  2 ;
-        tmp129__ = 0U;
-        tmp129__ |= ( pSrc->basicSTBCMCS << 0 );
-        tmp129__ |= ( pSrc->dualCTSProtection << 7 );
-        tmp129__ |= ( pSrc->secondaryBeacon << 8 );
-        tmp129__ |= ( pSrc->lsigTXOPProtectionFullSupport << 9 );
-        tmp129__ |= ( pSrc->pcoActive << 10 );
-        tmp129__ |= ( pSrc->pcoPhase << 11 );
-        tmp129__ |= ( pSrc->reserved2 << 12 );
-        frameshtons(pCtx, pBuf, tmp129__, 0);
+        tmp130__ = 0U;
+        tmp130__ |= ( pSrc->basicSTBCMCS << 0 );
+        tmp130__ |= ( pSrc->dualCTSProtection << 7 );
+        tmp130__ |= ( pSrc->secondaryBeacon << 8 );
+        tmp130__ |= ( pSrc->lsigTXOPProtectionFullSupport << 9 );
+        tmp130__ |= ( pSrc->pcoActive << 10 );
+        tmp130__ |= ( pSrc->pcoPhase << 11 );
+        tmp130__ |= ( pSrc->reserved2 << 12 );
+        frameshtons(pCtx, pBuf, tmp130__, 0);
         *pnConsumed += 2;
         pBuf += 2;
         nBuf -=  2 ;
@@ -28251,9 +28456,9 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp130__;
     tANI_U8 tmp131__;
     tANI_U8 tmp132__;
+    tANI_U8 tmp133__;
     tANI_U32 status = DOT11F_PARSE_SUCCESS;
     status = dot11fGetPackedIEMeasurementReport(pCtx, pSrc, &nNeeded);
     if ( ! DOT11F_SUCCEEDED( status ) ) return status;
@@ -28267,12 +28472,12 @@
         *pBuf = pSrc->token;
         *pnConsumed += 1;
         pBuf += 1;
-        tmp130__ = 0U;
-        tmp130__ |= ( pSrc->late << 0 );
-        tmp130__ |= ( pSrc->incapable << 1 );
-        tmp130__ |= ( pSrc->refused << 2 );
-        tmp130__ |= ( pSrc->unused << 3 );
-        *pBuf = tmp130__;
+        tmp131__ = 0U;
+        tmp131__ |= ( pSrc->late << 0 );
+        tmp131__ |= ( pSrc->incapable << 1 );
+        tmp131__ |= ( pSrc->refused << 2 );
+        tmp131__ |= ( pSrc->unused << 3 );
+        *pBuf = tmp131__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
@@ -28292,14 +28497,14 @@
                     frameshtons(pCtx, pBuf, pSrc->report.Basic.meas_duration, 0);
                     *pnConsumed += 2;
                     pBuf += 2;
-                    tmp131__ = 0U;
-                    tmp131__ |= ( pSrc->report.Basic.bss << 0 );
-                    tmp131__ |= ( pSrc->report.Basic.ofdm_preamble << 1 );
-                    tmp131__ |= ( pSrc->report.Basic.unid_signal << 2 );
-                    tmp131__ |= ( pSrc->report.Basic.rader << 3 );
-                    tmp131__ |= ( pSrc->report.Basic.unmeasured << 4 );
-                    tmp131__ |= ( pSrc->report.Basic.unused << 5 );
-                    *pBuf = tmp131__;
+                    tmp132__ = 0U;
+                    tmp132__ |= ( pSrc->report.Basic.bss << 0 );
+                    tmp132__ |= ( pSrc->report.Basic.ofdm_preamble << 1 );
+                    tmp132__ |= ( pSrc->report.Basic.unid_signal << 2 );
+                    tmp132__ |= ( pSrc->report.Basic.rader << 3 );
+                    tmp132__ |= ( pSrc->report.Basic.unmeasured << 4 );
+                    tmp132__ |= ( pSrc->report.Basic.unused << 5 );
+                    *pBuf = tmp132__;
                     *pnConsumed += 1;
                     // fieldsEndFlag  = 1
                     nBuf -=  1 ;
@@ -28366,10 +28571,10 @@
                     frameshtons(pCtx, pBuf, pSrc->report.Beacon.meas_duration, 0);
                     *pnConsumed += 2;
                     pBuf += 2;
-                    tmp132__ = 0U;
-                    tmp132__ |= ( pSrc->report.Beacon.condensed_PHY << 0 );
-                    tmp132__ |= ( pSrc->report.Beacon.reported_frame_type << 7 );
-                    *pBuf = tmp132__;
+                    tmp133__ = 0U;
+                    tmp133__ |= ( pSrc->report.Beacon.condensed_PHY << 0 );
+                    tmp133__ |= ( pSrc->report.Beacon.reported_frame_type << 7 );
+                    *pBuf = tmp133__;
                     *pnConsumed += 1;
                     pBuf += 1;
                     nBuf -=  1 ;
@@ -28418,7 +28623,7 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp133__;
+    tANI_U8 tmp134__;
     tANI_U32 status = DOT11F_PARSE_SUCCESS;
     status = dot11fGetPackedIEMeasurementRequest(pCtx, pSrc, &nNeeded);
     if ( ! DOT11F_SUCCEEDED( status ) ) return status;
@@ -28432,14 +28637,14 @@
         *pBuf = pSrc->measurement_token;
         *pnConsumed += 1;
         pBuf += 1;
-        tmp133__ = 0U;
-        tmp133__ |= ( pSrc->parallel << 0 );
-        tmp133__ |= ( pSrc->enable << 1 );
-        tmp133__ |= ( pSrc->request << 2 );
-        tmp133__ |= ( pSrc->report << 3 );
-        tmp133__ |= ( pSrc->durationMandatory << 4 );
-        tmp133__ |= ( pSrc->unused << 5 );
-        *pBuf = tmp133__;
+        tmp134__ = 0U;
+        tmp134__ |= ( pSrc->parallel << 0 );
+        tmp134__ |= ( pSrc->enable << 1 );
+        tmp134__ |= ( pSrc->request << 2 );
+        tmp134__ |= ( pSrc->report << 3 );
+        tmp134__ |= ( pSrc->durationMandatory << 4 );
+        tmp134__ |= ( pSrc->unused << 5 );
+        *pBuf = tmp134__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
@@ -28528,7 +28733,7 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp134__;
+    tANI_U8 tmp135__;
     nNeeded  += 3;
     while ( pSrc->present )
     {
@@ -28540,11 +28745,11 @@
         frameshtons(pCtx, pBuf, pSrc->MDID, 0);
         *pnConsumed += 2;
         pBuf += 2;
-        tmp134__ = 0U;
-        tmp134__ |= ( pSrc->overDSCap << 0 );
-        tmp134__ |= ( pSrc->resourceReqCap << 1 );
-        tmp134__ |= ( pSrc->reserved << 2 );
-        *pBuf = tmp134__;
+        tmp135__ = 0U;
+        tmp135__ |= ( pSrc->overDSCap << 0 );
+        tmp135__ |= ( pSrc->resourceReqCap << 1 );
+        tmp135__ |= ( pSrc->reserved << 2 );
+        *pBuf = tmp135__;
         *pnConsumed += 1;
         // fieldsEndFlag  = 1
         nBuf -=  1 ;
@@ -28567,8 +28772,8 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp135__;
     tANI_U8 tmp136__;
+    tANI_U8 tmp137__;
     tANI_U32 status = DOT11F_PARSE_SUCCESS;
     status = dot11fGetPackedIENeighborReport(pCtx, pSrc, &nNeeded);
     if ( ! DOT11F_SUCCEEDED( status ) ) return status;
@@ -28582,24 +28787,24 @@
         DOT11F_MEMCPY(pCtx, pBuf, pSrc->bssid, 6);
         *pnConsumed += 6;
         pBuf += 6;
-        tmp135__ = 0U;
-        tmp135__ |= ( pSrc->APReachability << 0 );
-        tmp135__ |= ( pSrc->Security << 2 );
-        tmp135__ |= ( pSrc->KeyScope << 3 );
-        tmp135__ |= ( pSrc->SpecMgmtCap << 4 );
-        tmp135__ |= ( pSrc->QosCap << 5 );
-        tmp135__ |= ( pSrc->apsd << 6 );
-        tmp135__ |= ( pSrc->rrm << 7 );
-        *pBuf = tmp135__;
+        tmp136__ = 0U;
+        tmp136__ |= ( pSrc->APReachability << 0 );
+        tmp136__ |= ( pSrc->Security << 2 );
+        tmp136__ |= ( pSrc->KeyScope << 3 );
+        tmp136__ |= ( pSrc->SpecMgmtCap << 4 );
+        tmp136__ |= ( pSrc->QosCap << 5 );
+        tmp136__ |= ( pSrc->apsd << 6 );
+        tmp136__ |= ( pSrc->rrm << 7 );
+        *pBuf = tmp136__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
-        tmp136__ = 0U;
-        tmp136__ |= ( pSrc->DelayedBA << 0 );
-        tmp136__ |= ( pSrc->ImmBA << 1 );
-        tmp136__ |= ( pSrc->MobilityDomain << 2 );
-        tmp136__ |= ( pSrc->reserved << 3 );
-        *pBuf = tmp136__;
+        tmp137__ = 0U;
+        tmp137__ |= ( pSrc->DelayedBA << 0 );
+        tmp137__ |= ( pSrc->ImmBA << 1 );
+        tmp137__ |= ( pSrc->MobilityDomain << 2 );
+        tmp137__ |= ( pSrc->reserved << 3 );
+        *pBuf = tmp137__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
@@ -28689,7 +28894,7 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp137__;
+    tANI_U8 tmp138__;
     nNeeded  += 1;
     while ( pSrc->present )
     {
@@ -28698,12 +28903,12 @@
         ++pBuf; ++(*pnConsumed);
         pIeLen = pBuf;
         ++pBuf; ++(*pnConsumed);
-        tmp137__ = 0U;
-        tmp137__ |= ( pSrc->chanWidth << 0 );
-        tmp137__ |= ( pSrc->reserved << 2 );
-        tmp137__ |= ( pSrc->rxNSS << 4 );
-        tmp137__ |= ( pSrc->rxNSSType << 7 );
-        *pBuf = tmp137__;
+        tmp138__ = 0U;
+        tmp138__ |= ( pSrc->chanWidth << 0 );
+        tmp138__ |= ( pSrc->reserved << 2 );
+        tmp138__ |= ( pSrc->rxNSS << 4 );
+        tmp138__ |= ( pSrc->rxNSSType << 7 );
+        *pBuf = tmp138__;
         *pnConsumed += 1;
         // fieldsEndFlag  = 1
         nBuf -=  1 ;
@@ -29657,7 +29862,7 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp138__;
+    tANI_U8 tmp139__;
     nNeeded  += 1;
     while ( pSrc->present )
     {
@@ -29666,13 +29871,13 @@
         ++pBuf; ++(*pnConsumed);
         pIeLen = pBuf;
         ++pBuf; ++(*pnConsumed);
-        tmp138__ = 0U;
-        tmp138__ |= ( pSrc->ac_bk_traffic_aval << 0 );
-        tmp138__ |= ( pSrc->ac_be_traffic_aval << 1 );
-        tmp138__ |= ( pSrc->ac_vi_traffic_aval << 2 );
-        tmp138__ |= ( pSrc->ac_vo_traffic_aval << 3 );
-        tmp138__ |= ( pSrc->reserved << 4 );
-        *pBuf = tmp138__;
+        tmp139__ = 0U;
+        tmp139__ |= ( pSrc->ac_bk_traffic_aval << 0 );
+        tmp139__ |= ( pSrc->ac_be_traffic_aval << 1 );
+        tmp139__ |= ( pSrc->ac_vi_traffic_aval << 2 );
+        tmp139__ |= ( pSrc->ac_vo_traffic_aval << 3 );
+        tmp139__ |= ( pSrc->reserved << 4 );
+        *pBuf = tmp139__;
         *pnConsumed += 1;
         // fieldsEndFlag  = 1
         nBuf -=  1 ;
@@ -29794,7 +29999,7 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp139__;
+    tANI_U8 tmp140__;
     nNeeded  += 1;
     while ( pSrc->present )
     {
@@ -29803,13 +30008,13 @@
         ++pBuf; ++(*pnConsumed);
         pIeLen = pBuf;
         ++pBuf; ++(*pnConsumed);
-        tmp139__ = 0U;
-        tmp139__ |= ( pSrc->count << 0 );
-        tmp139__ |= ( pSrc->qack << 4 );
-        tmp139__ |= ( pSrc->qreq << 5 );
-        tmp139__ |= ( pSrc->txopreq << 6 );
-        tmp139__ |= ( pSrc->reserved << 7 );
-        *pBuf = tmp139__;
+        tmp140__ = 0U;
+        tmp140__ |= ( pSrc->count << 0 );
+        tmp140__ |= ( pSrc->qack << 4 );
+        tmp140__ |= ( pSrc->qreq << 5 );
+        tmp140__ |= ( pSrc->txopreq << 6 );
+        tmp140__ |= ( pSrc->reserved << 7 );
+        *pBuf = tmp140__;
         *pnConsumed += 1;
         // fieldsEndFlag  = 1
         nBuf -=  1 ;
@@ -29832,7 +30037,7 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp140__;
+    tANI_U8 tmp141__;
     nNeeded  += 1;
     while ( pSrc->present )
     {
@@ -29841,15 +30046,15 @@
         ++pBuf; ++(*pnConsumed);
         pIeLen = pBuf;
         ++pBuf; ++(*pnConsumed);
-        tmp140__ = 0U;
-        tmp140__ |= ( pSrc->acvo_uapsd << 0 );
-        tmp140__ |= ( pSrc->acvi_uapsd << 1 );
-        tmp140__ |= ( pSrc->acbk_uapsd << 2 );
-        tmp140__ |= ( pSrc->acbe_uapsd << 3 );
-        tmp140__ |= ( pSrc->qack << 4 );
-        tmp140__ |= ( pSrc->max_sp_length << 5 );
-        tmp140__ |= ( pSrc->more_data_ack << 7 );
-        *pBuf = tmp140__;
+        tmp141__ = 0U;
+        tmp141__ |= ( pSrc->acvo_uapsd << 0 );
+        tmp141__ |= ( pSrc->acvi_uapsd << 1 );
+        tmp141__ |= ( pSrc->acbk_uapsd << 2 );
+        tmp141__ |= ( pSrc->acbe_uapsd << 3 );
+        tmp141__ |= ( pSrc->qack << 4 );
+        tmp141__ |= ( pSrc->max_sp_length << 5 );
+        tmp141__ |= ( pSrc->more_data_ack << 7 );
+        *pBuf = tmp141__;
         *pnConsumed += 1;
         // fieldsEndFlag  = 1
         nBuf -=  1 ;
@@ -30353,9 +30558,9 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U32 tmp141__;
-    tANI_U16 tmp142__;
+    tANI_U32 tmp142__;
     tANI_U16 tmp143__;
+    tANI_U16 tmp144__;
     nNeeded  += 12;
     while ( pSrc->present )
     {
@@ -30364,48 +30569,48 @@
         ++pBuf; ++(*pnConsumed);
         pIeLen = pBuf;
         ++pBuf; ++(*pnConsumed);
-        tmp141__ = 0U;
-        tmp141__ |= ( pSrc->maxMPDULen << 0 );
-        tmp141__ |= ( pSrc->supportedChannelWidthSet << 2 );
-        tmp141__ |= ( pSrc->ldpcCodingCap << 4 );
-        tmp141__ |= ( pSrc->shortGI80MHz << 5 );
-        tmp141__ |= ( pSrc->shortGI160and80plus80MHz << 6 );
-        tmp141__ |= ( pSrc->txSTBC << 7 );
-        tmp141__ |= ( pSrc->rxSTBC << 8 );
-        tmp141__ |= ( pSrc->suBeamFormerCap << 11 );
-        tmp141__ |= ( pSrc->suBeamformeeCap << 12 );
-        tmp141__ |= ( pSrc->csnofBeamformerAntSup << 13 );
-        tmp141__ |= ( pSrc->numSoundingDim << 16 );
-        tmp141__ |= ( pSrc->muBeamformerCap << 19 );
-        tmp141__ |= ( pSrc->muBeamformeeCap << 20 );
-        tmp141__ |= ( pSrc->vhtTXOPPS << 21 );
-        tmp141__ |= ( pSrc->htcVHTCap << 22 );
-        tmp141__ |= ( pSrc->maxAMPDULenExp << 23 );
-        tmp141__ |= ( pSrc->vhtLinkAdaptCap << 26 );
-        tmp141__ |= ( pSrc->rxAntPattern << 28 );
-        tmp141__ |= ( pSrc->txAntPattern << 29 );
-        tmp141__ |= ( pSrc->reserved1 << 30 );
-        frameshtonl(pCtx, pBuf, tmp141__, 0);
+        tmp142__ = 0U;
+        tmp142__ |= ( pSrc->maxMPDULen << 0 );
+        tmp142__ |= ( pSrc->supportedChannelWidthSet << 2 );
+        tmp142__ |= ( pSrc->ldpcCodingCap << 4 );
+        tmp142__ |= ( pSrc->shortGI80MHz << 5 );
+        tmp142__ |= ( pSrc->shortGI160and80plus80MHz << 6 );
+        tmp142__ |= ( pSrc->txSTBC << 7 );
+        tmp142__ |= ( pSrc->rxSTBC << 8 );
+        tmp142__ |= ( pSrc->suBeamFormerCap << 11 );
+        tmp142__ |= ( pSrc->suBeamformeeCap << 12 );
+        tmp142__ |= ( pSrc->csnofBeamformerAntSup << 13 );
+        tmp142__ |= ( pSrc->numSoundingDim << 16 );
+        tmp142__ |= ( pSrc->muBeamformerCap << 19 );
+        tmp142__ |= ( pSrc->muBeamformeeCap << 20 );
+        tmp142__ |= ( pSrc->vhtTXOPPS << 21 );
+        tmp142__ |= ( pSrc->htcVHTCap << 22 );
+        tmp142__ |= ( pSrc->maxAMPDULenExp << 23 );
+        tmp142__ |= ( pSrc->vhtLinkAdaptCap << 26 );
+        tmp142__ |= ( pSrc->rxAntPattern << 28 );
+        tmp142__ |= ( pSrc->txAntPattern << 29 );
+        tmp142__ |= ( pSrc->reserved1 << 30 );
+        frameshtonl(pCtx, pBuf, tmp142__, 0);
         *pnConsumed += 4;
         pBuf += 4;
         nBuf -=  4 ;
         frameshtons(pCtx, pBuf, pSrc->rxMCSMap, 0);
         *pnConsumed += 2;
         pBuf += 2;
-        tmp142__ = 0U;
-        tmp142__ |= ( pSrc->rxHighSupDataRate << 0 );
-        tmp142__ |= ( pSrc->reserved2 << 13 );
-        frameshtons(pCtx, pBuf, tmp142__, 0);
+        tmp143__ = 0U;
+        tmp143__ |= ( pSrc->rxHighSupDataRate << 0 );
+        tmp143__ |= ( pSrc->reserved2 << 13 );
+        frameshtons(pCtx, pBuf, tmp143__, 0);
         *pnConsumed += 2;
         pBuf += 2;
         nBuf -=  2 ;
         frameshtons(pCtx, pBuf, pSrc->txMCSMap, 0);
         *pnConsumed += 2;
         pBuf += 2;
-        tmp143__ = 0U;
-        tmp143__ |= ( pSrc->txSupDataRate << 0 );
-        tmp143__ |= ( pSrc->reserved3 << 13 );
-        frameshtons(pCtx, pBuf, tmp143__, 0);
+        tmp144__ = 0U;
+        tmp144__ |= ( pSrc->txSupDataRate << 0 );
+        tmp144__ |= ( pSrc->reserved3 << 13 );
+        frameshtons(pCtx, pBuf, tmp144__, 0);
         *pnConsumed += 2;
         // fieldsEndFlag  = 1
         nBuf -=  2 ;
@@ -30509,7 +30714,7 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U16 tmp144__;
+    tANI_U16 tmp145__;
     tANI_U32 status = DOT11F_PARSE_SUCCESS;
     status = dot11fGetPackedIEWAPI(pCtx, pSrc, &nNeeded);
     if ( ! DOT11F_SUCCEEDED( status ) ) return status;
@@ -30538,10 +30743,10 @@
         DOT11F_MEMCPY(pCtx, pBuf, pSrc->multicast_cipher_suite, 4);
         *pnConsumed += 4;
         pBuf += 4;
-        tmp144__ = 0U;
-        tmp144__ |= ( pSrc->preauth << 0 );
-        tmp144__ |= ( pSrc->reserved << 1 );
-        frameshtons(pCtx, pBuf, tmp144__, 0);
+        tmp145__ = 0U;
+        tmp145__ |= ( pSrc->preauth << 0 );
+        tmp145__ |= ( pSrc->reserved << 1 );
+        frameshtons(pCtx, pBuf, tmp145__, 0);
         *pnConsumed += 2;
         pBuf += 2;
         nBuf -=  2 ;
@@ -30684,7 +30889,7 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp145__;
+    tANI_U8 tmp146__;
     nNeeded  += 2;
     while ( pSrc->present )
     {
@@ -30706,13 +30911,13 @@
         *pBuf = pSrc->version;
         *pnConsumed += 1;
         pBuf += 1;
-        tmp145__ = 0U;
-        tmp145__ |= ( pSrc->reserved << 0 );
-        tmp145__ |= ( pSrc->qack << 4 );
-        tmp145__ |= ( pSrc->queue_request << 5 );
-        tmp145__ |= ( pSrc->txop_request << 6 );
-        tmp145__ |= ( pSrc->more_ack << 7 );
-        *pBuf = tmp145__;
+        tmp146__ = 0U;
+        tmp146__ |= ( pSrc->reserved << 0 );
+        tmp146__ |= ( pSrc->qack << 4 );
+        tmp146__ |= ( pSrc->queue_request << 5 );
+        tmp146__ |= ( pSrc->txop_request << 6 );
+        tmp146__ |= ( pSrc->more_ack << 7 );
+        *pBuf = tmp146__;
         *pnConsumed += 1;
         // fieldsEndFlag  = 1
         nBuf -=  1 ;
@@ -30735,55 +30940,6 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp146__;
-    nNeeded  += 2;
-    while ( pSrc->present )
-    {
-        if ( nNeeded > nBuf ) return DOT11F_BUFFER_OVERFLOW;
-        *pBuf = 221;
-        ++pBuf; ++(*pnConsumed);
-        pIeLen = pBuf;
-        ++pBuf; ++(*pnConsumed);
-        *pBuf = 0x0;
-        ++pBuf; ++(*pnConsumed);
-        *pBuf = 0x50;
-        ++pBuf; ++(*pnConsumed);
-        *pBuf = 0xf2;
-        ++pBuf; ++(*pnConsumed);
-        *pBuf = 0x2;
-        ++pBuf; ++(*pnConsumed);
-        *pBuf = 0x0;
-        ++pBuf; ++(*pnConsumed);
-        *pBuf = pSrc->version;
-        *pnConsumed += 1;
-        pBuf += 1;
-        tmp146__ = 0U;
-        tmp146__ |= ( pSrc->param_set_count << 0 );
-        tmp146__ |= ( pSrc->reserved << 4 );
-        tmp146__ |= ( pSrc->uapsd << 7 );
-        *pBuf = tmp146__;
-        *pnConsumed += 1;
-        // fieldsEndFlag  = 1
-        nBuf -=  1 ;
-        break;
-    }
-    (void)pCtx;
-    if (pIeLen)
-    {
-        *pIeLen = *pnConsumed - nConsumedOnEntry - 2;
-    }
-    return DOT11F_PARSE_SUCCESS;
-} /* End dot11fPackIeWMMInfoAp. */
-
-tANI_U32 dot11fPackIeWMMInfoStation(tpAniSirGlobal pCtx,
-                                    tDot11fIEWMMInfoStation *pSrc,
-                                    tANI_U8 *pBuf,
-                                    tANI_U32 nBuf,
-                                    tANI_U32 *pnConsumed)
-{
-    tANI_U8* pIeLen = 0;
-    tANI_U32 nConsumedOnEntry = *pnConsumed;
-    tANI_U32 nNeeded = 0U;
     tANI_U8 tmp147__;
     nNeeded  += 2;
     while ( pSrc->present )
@@ -30807,13 +30963,9 @@
         *pnConsumed += 1;
         pBuf += 1;
         tmp147__ = 0U;
-        tmp147__ |= ( pSrc->acvo_uapsd << 0 );
-        tmp147__ |= ( pSrc->acvi_uapsd << 1 );
-        tmp147__ |= ( pSrc->acbk_uapsd << 2 );
-        tmp147__ |= ( pSrc->acbe_uapsd << 3 );
-        tmp147__ |= ( pSrc->reserved1 << 4 );
-        tmp147__ |= ( pSrc->max_sp_length << 5 );
-        tmp147__ |= ( pSrc->reserved2 << 7 );
+        tmp147__ |= ( pSrc->param_set_count << 0 );
+        tmp147__ |= ( pSrc->reserved << 4 );
+        tmp147__ |= ( pSrc->uapsd << 7 );
         *pBuf = tmp147__;
         *pnConsumed += 1;
         // fieldsEndFlag  = 1
@@ -30826,6 +30978,59 @@
         *pIeLen = *pnConsumed - nConsumedOnEntry - 2;
     }
     return DOT11F_PARSE_SUCCESS;
+} /* End dot11fPackIeWMMInfoAp. */
+
+tANI_U32 dot11fPackIeWMMInfoStation(tpAniSirGlobal pCtx,
+                                    tDot11fIEWMMInfoStation *pSrc,
+                                    tANI_U8 *pBuf,
+                                    tANI_U32 nBuf,
+                                    tANI_U32 *pnConsumed)
+{
+    tANI_U8* pIeLen = 0;
+    tANI_U32 nConsumedOnEntry = *pnConsumed;
+    tANI_U32 nNeeded = 0U;
+    tANI_U8 tmp148__;
+    nNeeded  += 2;
+    while ( pSrc->present )
+    {
+        if ( nNeeded > nBuf ) return DOT11F_BUFFER_OVERFLOW;
+        *pBuf = 221;
+        ++pBuf; ++(*pnConsumed);
+        pIeLen = pBuf;
+        ++pBuf; ++(*pnConsumed);
+        *pBuf = 0x0;
+        ++pBuf; ++(*pnConsumed);
+        *pBuf = 0x50;
+        ++pBuf; ++(*pnConsumed);
+        *pBuf = 0xf2;
+        ++pBuf; ++(*pnConsumed);
+        *pBuf = 0x2;
+        ++pBuf; ++(*pnConsumed);
+        *pBuf = 0x0;
+        ++pBuf; ++(*pnConsumed);
+        *pBuf = pSrc->version;
+        *pnConsumed += 1;
+        pBuf += 1;
+        tmp148__ = 0U;
+        tmp148__ |= ( pSrc->acvo_uapsd << 0 );
+        tmp148__ |= ( pSrc->acvi_uapsd << 1 );
+        tmp148__ |= ( pSrc->acbk_uapsd << 2 );
+        tmp148__ |= ( pSrc->acbe_uapsd << 3 );
+        tmp148__ |= ( pSrc->reserved1 << 4 );
+        tmp148__ |= ( pSrc->max_sp_length << 5 );
+        tmp148__ |= ( pSrc->reserved2 << 7 );
+        *pBuf = tmp148__;
+        *pnConsumed += 1;
+        // fieldsEndFlag  = 1
+        nBuf -=  1 ;
+        break;
+    }
+    (void)pCtx;
+    if (pIeLen)
+    {
+        *pIeLen = *pnConsumed - nConsumedOnEntry - 2;
+    }
+    return DOT11F_PARSE_SUCCESS;
 } /* End dot11fPackIeWMMInfoStation. */
 
 tANI_U32 dot11fPackIeWMMParams(tpAniSirGlobal pCtx,
@@ -30837,7 +31042,6 @@
     tANI_U8* pIeLen = 0;
     tANI_U32 nConsumedOnEntry = *pnConsumed;
     tANI_U32 nNeeded = 0U;
-    tANI_U8 tmp148__;
     tANI_U8 tmp149__;
     tANI_U8 tmp150__;
     tANI_U8 tmp151__;
@@ -30845,6 +31049,7 @@
     tANI_U8 tmp153__;
     tANI_U8 tmp154__;
     tANI_U8 tmp155__;
+    tANI_U8 tmp156__;
     nNeeded  += 19;
     while ( pSrc->present )
     {
@@ -30872,76 +31077,76 @@
         *pBuf = pSrc->reserved2;
         *pnConsumed += 1;
         pBuf += 1;
-        tmp148__ = 0U;
-        tmp148__ |= ( pSrc->acbe_aifsn << 0 );
-        tmp148__ |= ( pSrc->acbe_acm << 4 );
-        tmp148__ |= ( pSrc->acbe_aci << 5 );
-        tmp148__ |= ( pSrc->unused1 << 7 );
-        *pBuf = tmp148__;
+        tmp149__ = 0U;
+        tmp149__ |= ( pSrc->acbe_aifsn << 0 );
+        tmp149__ |= ( pSrc->acbe_acm << 4 );
+        tmp149__ |= ( pSrc->acbe_aci << 5 );
+        tmp149__ |= ( pSrc->unused1 << 7 );
+        *pBuf = tmp149__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
-        tmp149__ = 0U;
-        tmp149__ |= ( pSrc->acbe_acwmin << 0 );
-        tmp149__ |= ( pSrc->acbe_acwmax << 4 );
-        *pBuf = tmp149__;
+        tmp150__ = 0U;
+        tmp150__ |= ( pSrc->acbe_acwmin << 0 );
+        tmp150__ |= ( pSrc->acbe_acwmax << 4 );
+        *pBuf = tmp150__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
         frameshtons(pCtx, pBuf, pSrc->acbe_txoplimit, 0);
         *pnConsumed += 2;
         pBuf += 2;
-        tmp150__ = 0U;
-        tmp150__ |= ( pSrc->acbk_aifsn << 0 );
-        tmp150__ |= ( pSrc->acbk_acm << 4 );
-        tmp150__ |= ( pSrc->acbk_aci << 5 );
-        tmp150__ |= ( pSrc->unused2 << 7 );
-        *pBuf = tmp150__;
+        tmp151__ = 0U;
+        tmp151__ |= ( pSrc->acbk_aifsn << 0 );
+        tmp151__ |= ( pSrc->acbk_acm << 4 );
+        tmp151__ |= ( pSrc->acbk_aci << 5 );
+        tmp151__ |= ( pSrc->unused2 << 7 );
+        *pBuf = tmp151__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
-        tmp151__ = 0U;
-        tmp151__ |= ( pSrc->acbk_acwmin << 0 );
-        tmp151__ |= ( pSrc->acbk_acwmax << 4 );
-        *pBuf = tmp151__;
+        tmp152__ = 0U;
+        tmp152__ |= ( pSrc->acbk_acwmin << 0 );
+        tmp152__ |= ( pSrc->acbk_acwmax << 4 );
+        *pBuf = tmp152__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
         frameshtons(pCtx, pBuf, pSrc->acbk_txoplimit, 0);
         *pnConsumed += 2;
         pBuf += 2;
-        tmp152__ = 0U;
-        tmp152__ |= ( pSrc->acvi_aifsn << 0 );
-        tmp152__ |= ( pSrc->acvi_acm << 4 );
-        tmp152__ |= ( pSrc->acvi_aci << 5 );
-        tmp152__ |= ( pSrc->unused3 << 7 );
-        *pBuf = tmp152__;
+        tmp153__ = 0U;
+        tmp153__ |= ( pSrc->acvi_aifsn << 0 );
+        tmp153__ |= ( pSrc->acvi_acm << 4 );
+        tmp153__ |= ( pSrc->acvi_aci << 5 );
+        tmp153__ |= ( pSrc->unused3 << 7 );
+        *pBuf = tmp153__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
-        tmp153__ = 0U;
-        tmp153__ |= ( pSrc->acvi_acwmin << 0 );
-        tmp153__ |= ( pSrc->acvi_acwmax << 4 );
-        *pBuf = tmp153__;
+        tmp154__ = 0U;
+        tmp154__ |= ( pSrc->acvi_acwmin << 0 );
+        tmp154__ |= ( pSrc->acvi_acwmax << 4 );
+        *pBuf = tmp154__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
         frameshtons(pCtx, pBuf, pSrc->acvi_txoplimit, 0);
         *pnConsumed += 2;
         pBuf += 2;
-        tmp154__ = 0U;
-        tmp154__ |= ( pSrc->acvo_aifsn << 0 );
-        tmp154__ |= ( pSrc->acvo_acm << 4 );
-        tmp154__ |= ( pSrc->acvo_aci << 5 );
-        tmp154__ |= ( pSrc->unused4 << 7 );
-        *pBuf = tmp154__;
+        tmp155__ = 0U;
+        tmp155__ |= ( pSrc->acvo_aifsn << 0 );
+        tmp155__ |= ( pSrc->acvo_acm << 4 );
+        tmp155__ |= ( pSrc->acvo_aci << 5 );
+        tmp155__ |= ( pSrc->unused4 << 7 );
+        *pBuf = tmp155__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
-        tmp155__ = 0U;
-        tmp155__ |= ( pSrc->acvo_acwmin << 0 );
-        tmp155__ |= ( pSrc->acvo_acwmax << 4 );
-        *pBuf = tmp155__;
+        tmp156__ = 0U;
+        tmp156__ |= ( pSrc->acvo_acwmin << 0 );
+        tmp156__ |= ( pSrc->acvo_acwmax << 4 );
+        *pBuf = tmp156__;
         *pnConsumed += 1;
         pBuf += 1;
         nBuf -=  1 ;
@@ -31484,6 +31689,69 @@
     return status;
 } /* End dot11fPackIeWscReassocRes. */
 
+tANI_U32 dot11fPackIehs20vendor_ie(tpAniSirGlobal pCtx,
+                                   tDot11fIEhs20vendor_ie *pSrc,
+                                   tANI_U8 *pBuf,
+                                   tANI_U32 nBuf,
+                                   tANI_U32 *pnConsumed)
+{
+    tANI_U8* pIeLen = 0;
+    tANI_U32 nConsumedOnEntry = *pnConsumed;
+    tANI_U32 nNeeded = 0U;
+    tANI_U8 tmp157__;
+    tANI_U32 status = DOT11F_PARSE_SUCCESS;
+    status = dot11fGetPackedIEhs20vendor_ie(pCtx, pSrc, &nNeeded);
+    if ( ! DOT11F_SUCCEEDED( status ) ) return status;
+    while ( pSrc->present )
+    {
+        if ( nNeeded > nBuf ) return DOT11F_BUFFER_OVERFLOW;
+        *pBuf = 221;
+        ++pBuf; ++(*pnConsumed);
+        pIeLen = pBuf;
+        ++pBuf; ++(*pnConsumed);
+        *pBuf = 0x50;
+        ++pBuf; ++(*pnConsumed);
+        *pBuf = 0x6f;
+        ++pBuf; ++(*pnConsumed);
+        *pBuf = 0x9a;
+        ++pBuf; ++(*pnConsumed);
+        *pBuf = 0x10;
+        ++pBuf; ++(*pnConsumed);
+        tmp157__ = 0U;
+        tmp157__ |= ( pSrc->dgaf_dis << 0 );
+        tmp157__ |= ( pSrc->hs_id_present << 1 );
+        tmp157__ |= ( pSrc->reserved << 3 );
+        tmp157__ |= ( pSrc->release_num << 4 );
+        *pBuf = tmp157__;
+        *pnConsumed += 1;
+        pBuf += 1;
+        nBuf -=  1 ;
+        if ( pSrc->hs_id_present )        {
+            switch (pSrc->hs_id_present)
+            {
+                case 1:
+                    frameshtons(pCtx, pBuf, pSrc->hs_id.pps_mo.pps_mo_id, 0);
+                    *pnConsumed += 2;
+                    // fieldsEndFlag = 1
+                break;
+                case 2:
+                    frameshtons(pCtx, pBuf, pSrc->hs_id.anqp_domain.anqp_domain_id, 0);
+                    *pnConsumed += 2;
+                    // fieldsEndFlag = 1
+                break;
+            }
+        }
+        else break;
+        break;
+    }
+    (void)pCtx;
+    if (pIeLen)
+    {
+        *pIeLen = *pnConsumed - nConsumedOnEntry - 2;
+    }
+    return status;
+} /* End dot11fPackIehs20vendor_ie. */
+
 tANI_U32 dot11fPackAddBAReq(tpAniSirGlobal pCtx, tDot11fAddBAReq *pFrm, tANI_U8 *pBuf, tANI_U32 nBuf, tANI_U32 *pnConsumed)
 {
     tANI_U32 i = 0;
@@ -32638,6 +32906,27 @@
             FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), FRFL("num_dscp_exceptions: %d.\n"), pFrm->QosMapSet.num_dscp_exceptions);
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), ( tANI_U8* ) pFrm->QosMapSet.dscp_exceptions, pFrm->QosMapSet.num_dscp_exceptions);
         }
+        FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), FRFL("hs20vendor_ie:\n"));
+        if (!pFrm->hs20vendor_ie.present)
+        {
+            FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), FRFL("Not present.\n"));
+        }
+        else
+        {
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), FRFL("dgaf_dis (1): %d\n"), pFrm->hs20vendor_ie.dgaf_dis);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), FRFL("hs_id_present (2): %d\n"), pFrm->hs20vendor_ie.hs_id_present);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), FRFL("reserved (1): %d\n"), pFrm->hs20vendor_ie.reserved);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), FRFL("release_num (4): %d\n"), pFrm->hs20vendor_ie.release_num);
+            switch (pFrm->hs20vendor_ie.hs_id_present)
+            {
+                case 1:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.pps_mo.pps_mo_id, 2);
+                break;
+                case 2:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.anqp_domain.anqp_domain_id, 2);
+                break;
+            }
+        }
         FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), FRFL("to:\n"));
         FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_ASSOCREQUEST), pBuf, nBuf);
     }
@@ -35196,6 +35485,27 @@
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), ( tANI_U8* )&pFrm->OBSSScanParameters.bssWidthChannelTransitionDelayFactor, 2);
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), ( tANI_U8* )&pFrm->OBSSScanParameters.obssScanActivityThreshold, 2);
         }
+        FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), FRFL("hs20vendor_ie:\n"));
+        if (!pFrm->hs20vendor_ie.present)
+        {
+            FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), FRFL("Not present.\n"));
+        }
+        else
+        {
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), FRFL("dgaf_dis (1): %d\n"), pFrm->hs20vendor_ie.dgaf_dis);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), FRFL("hs_id_present (2): %d\n"), pFrm->hs20vendor_ie.hs_id_present);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), FRFL("reserved (1): %d\n"), pFrm->hs20vendor_ie.reserved);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), FRFL("release_num (4): %d\n"), pFrm->hs20vendor_ie.release_num);
+            switch (pFrm->hs20vendor_ie.hs_id_present)
+            {
+                case 1:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.pps_mo.pps_mo_id, 2);
+                break;
+                case 2:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.anqp_domain.anqp_domain_id, 2);
+                break;
+            }
+        }
         FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), FRFL("to:\n"));
         FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON), pBuf, nBuf);
     }
@@ -36178,6 +36488,27 @@
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), ( tANI_U8* )&pFrm->OBSSScanParameters.bssWidthChannelTransitionDelayFactor, 2);
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), ( tANI_U8* )&pFrm->OBSSScanParameters.obssScanActivityThreshold, 2);
         }
+        FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), FRFL("hs20vendor_ie:\n"));
+        if (!pFrm->hs20vendor_ie.present)
+        {
+            FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), FRFL("Not present.\n"));
+        }
+        else
+        {
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), FRFL("dgaf_dis (1): %d\n"), pFrm->hs20vendor_ie.dgaf_dis);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), FRFL("hs_id_present (2): %d\n"), pFrm->hs20vendor_ie.hs_id_present);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), FRFL("reserved (1): %d\n"), pFrm->hs20vendor_ie.reserved);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), FRFL("release_num (4): %d\n"), pFrm->hs20vendor_ie.release_num);
+            switch (pFrm->hs20vendor_ie.hs_id_present)
+            {
+                case 1:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.pps_mo.pps_mo_id, 2);
+                break;
+                case 2:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.anqp_domain.anqp_domain_id, 2);
+                break;
+            }
+        }
         FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), FRFL("to:\n"));
         FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACON2), pBuf, nBuf);
     }
@@ -37341,6 +37672,27 @@
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), ( tANI_U8* )&pFrm->OBSSScanParameters.bssWidthChannelTransitionDelayFactor, 2);
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), ( tANI_U8* )&pFrm->OBSSScanParameters.obssScanActivityThreshold, 2);
         }
+        FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), FRFL("hs20vendor_ie:\n"));
+        if (!pFrm->hs20vendor_ie.present)
+        {
+            FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), FRFL("Not present.\n"));
+        }
+        else
+        {
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), FRFL("dgaf_dis (1): %d\n"), pFrm->hs20vendor_ie.dgaf_dis);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), FRFL("hs_id_present (2): %d\n"), pFrm->hs20vendor_ie.hs_id_present);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), FRFL("reserved (1): %d\n"), pFrm->hs20vendor_ie.reserved);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), FRFL("release_num (4): %d\n"), pFrm->hs20vendor_ie.release_num);
+            switch (pFrm->hs20vendor_ie.hs_id_present)
+            {
+                case 1:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.pps_mo.pps_mo_id, 2);
+                break;
+                case 2:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.anqp_domain.anqp_domain_id, 2);
+                break;
+            }
+        }
         FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), FRFL("to:\n"));
         FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_BEACONIES), pBuf, nBuf);
     }
@@ -40450,6 +40802,27 @@
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), ( tANI_U8* )&pFrm->OBSSScanParameters.bssWidthChannelTransitionDelayFactor, 2);
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), ( tANI_U8* )&pFrm->OBSSScanParameters.obssScanActivityThreshold, 2);
         }
+        FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), FRFL("hs20vendor_ie:\n"));
+        if (!pFrm->hs20vendor_ie.present)
+        {
+            FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), FRFL("Not present.\n"));
+        }
+        else
+        {
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), FRFL("dgaf_dis (1): %d\n"), pFrm->hs20vendor_ie.dgaf_dis);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), FRFL("hs_id_present (2): %d\n"), pFrm->hs20vendor_ie.hs_id_present);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), FRFL("reserved (1): %d\n"), pFrm->hs20vendor_ie.reserved);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), FRFL("release_num (4): %d\n"), pFrm->hs20vendor_ie.release_num);
+            switch (pFrm->hs20vendor_ie.hs_id_present)
+            {
+                case 1:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.pps_mo.pps_mo_id, 2);
+                break;
+                case 2:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.anqp_domain.anqp_domain_id, 2);
+                break;
+            }
+        }
         FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), FRFL("to:\n"));
         FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_PROBERESPONSE), pBuf, nBuf);
     }
@@ -41791,6 +42164,27 @@
             FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), FRFL("num_dscp_exceptions: %d.\n"), pFrm->QosMapSet.num_dscp_exceptions);
             FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), ( tANI_U8* ) pFrm->QosMapSet.dscp_exceptions, pFrm->QosMapSet.num_dscp_exceptions);
         }
+        FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), FRFL("hs20vendor_ie:\n"));
+        if (!pFrm->hs20vendor_ie.present)
+        {
+            FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), FRFL("Not present.\n"));
+        }
+        else
+        {
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), FRFL("dgaf_dis (1): %d\n"), pFrm->hs20vendor_ie.dgaf_dis);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), FRFL("hs_id_present (2): %d\n"), pFrm->hs20vendor_ie.hs_id_present);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), FRFL("reserved (1): %d\n"), pFrm->hs20vendor_ie.reserved);
+            FRAMES_LOG1(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), FRFL("release_num (4): %d\n"), pFrm->hs20vendor_ie.release_num);
+            switch (pFrm->hs20vendor_ie.hs_id_present)
+            {
+                case 1:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.pps_mo.pps_mo_id, 2);
+                break;
+                case 2:
+                    FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), ( tANI_U8* )&pFrm->hs20vendor_ie.hs_id.anqp_domain.anqp_domain_id, 2);
+                break;
+            }
+        }
         FRAMES_LOG0(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), FRFL("to:\n"));
         FRAMES_DUMP(pCtx, FRAMES_SEV_FOR_FRAME(pCtx, DOT11F_REASSOCREQUEST), pBuf, nBuf);
     }
@@ -45460,6 +45854,9 @@
                     case SigIeWscReassocRes:
                         status |= dot11fPackIeWscReassocRes(pCtx, ( tDot11fIEWscReassocRes* )(pSrc + pIe->offset + sizeof(tDot11fIEWscReassocRes) * i ),  pBufRemaining, nBufRemaining, &len);
                         break;
+                    case SigIehs20vendor_ie:
+                        status |= dot11fPackIehs20vendor_ie(pCtx, ( tDot11fIEhs20vendor_ie* )(pSrc + pIe->offset + sizeof(tDot11fIEhs20vendor_ie) * i ),  pBufRemaining, nBufRemaining, &len);
+                        break;
                default:
                    FRAMES_LOG1(pCtx, FRLOGE, FRFL("INTERNAL ERROR-- I don"
                    "'t know about the IE %d; this is most likely a b"
diff --git a/CORE/SYS/legacy/src/utils/src/parserApi.c b/CORE/SYS/legacy/src/utils/src/parserApi.c
index 65831b5..28d8575 100644
--- a/CORE/SYS/legacy/src/utils/src/parserApi.c
+++ b/CORE/SYS/legacy/src/utils/src/parserApi.c
@@ -2412,6 +2412,7 @@
         vos_mem_copy( &pProbeResp->VHTExtBssLoad, &pr->VHTExtBssLoad, sizeof( tDot11fIEVHTExtBssLoad) );
     }
 #endif
+    sir_copy_hs20_ie(&pProbeResp->hs20vendor_ie, &pr->hs20vendor_ie);
 
     vos_mem_vfree(pr);
     return eSIR_SUCCESS;
@@ -3525,6 +3526,8 @@
         vos_mem_copy( &pBeaconStruct->ExtCap, &pBies->ExtCap,
                         sizeof(tDot11fIEExtCap));
     }
+    sir_copy_hs20_ie(&pBeaconStruct->hs20vendor_ie, &pBies->hs20vendor_ie);
+
     vos_mem_free(pBies);
 
 
@@ -3830,6 +3833,7 @@
                      &pBeacon->OBSSScanParameters,
                      sizeof( tDot11fIEOBSSScanParameters));
     }
+    sir_copy_hs20_ie(&pBeaconStruct->hs20vendor_ie, &pBeacon->hs20vendor_ie);
 
     vos_mem_vfree(pBeacon);
     return eSIR_SUCCESS;
@@ -5599,4 +5603,26 @@
 }
 #endif /* SAP_AUTH_OFFLOAD */
 
+/**
+ * sir_copy_hs20_ie() - Update HS 2.0 Information Element.
+ * @dest: dest HS IE buffer to be updated
+ * @src: src HS IE buffer
+ *
+ * Update HS2.0 IE info from src to dest
+ *
+ * Return: void
+ */
+void sir_copy_hs20_ie(tDot11fIEhs20vendor_ie *dest, tDot11fIEhs20vendor_ie *src)
+{
+   if (src->present) {
+       vos_mem_copy(dest, src,
+            sizeof(tDot11fIEhs20vendor_ie) -
+            sizeof(src->hs_id));
+       if (src->hs_id_present)
+           vos_mem_copy(&dest->hs_id,
+                   &src->hs_id,
+                   sizeof(src->hs_id));
+   }
+}
+
 // parserApi.c ends here.