wlan: Added OBSS scan param IE and TDLS frame in Dot11f

- Added support for Supported Operating Class IEs in TDLS frames
- Added Support for OBSS scan Parameters.
- Add new GID management Action

Change-Id: Iac28100baeddd72375c80cb792b0ad4d5314ccdc
CRs-Fixed: 608188
diff --git a/CORE/MAC/src/include/dot11f.h b/CORE/MAC/src/include/dot11f.h
index cc89258..9aa1059 100644
--- a/CORE/MAC/src/include/dot11f.h
+++ b/CORE/MAC/src/include/dot11f.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2012-2013, The Linux Foundation. All rights reserved.
+ * Copyright (c) 2012-2014, The Linux Foundation. All rights reserved.
  *
  * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
  *
@@ -38,6 +38,11 @@
  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  * PERFORMANCE OF THIS SOFTWARE.
  */
+/**
+  * Copyright (c) 2012 - 2014 Qualcomm Atheros, Inc.
+  * All Rights Reserved.
+  * Qualcomm Atheros Confidential and Proprietary.
+  */
 
 #ifndef DOT11F_H
 #define DOT11F_H
@@ -52,10 +57,10 @@
   *
   *
   * This file was automatically generated by 'framesc'
-  * Thu Nov  7 16:38:38 2013 from the following file(s):
+  * Fri Feb  7 16:55:44 2014 from the following file(s):
   *
   * dot11f.frms
-  * 
+  *
   * PLEASE DON'T EDIT THIS FILE BY HAND!
   *
   * Instead, please update the input files & re-run
@@ -579,6 +584,26 @@
 
 void dot11fPackFfTxPower(tpAniSirGlobal, tDot11fFfTxPower*, tANI_U8*);
 
+typedef struct sDot11fFfVhtMembershipStatusArray {
+    tANI_U8 membershipStatusArray[8];
+} tDot11fFfVhtMembershipStatusArray;
+
+#define DOT11F_FF_VHTMEMBERSHIPSTATUSARRAY_LEN ( 8 )
+
+void dot11fUnpackFfVhtMembershipStatusArray(tpAniSirGlobal, tANI_U8*, tDot11fFfVhtMembershipStatusArray*);
+
+void dot11fPackFfVhtMembershipStatusArray(tpAniSirGlobal, tDot11fFfVhtMembershipStatusArray*, tANI_U8*);
+
+typedef struct sDot11fFfVhtUserPositionArray {
+    tANI_U8 userPositionArray[16];
+} tDot11fFfVhtUserPositionArray;
+
+#define DOT11F_FF_VHTUSERPOSITIONARRAY_LEN ( 16 )
+
+void dot11fUnpackFfVhtUserPositionArray(tpAniSirGlobal, tANI_U8*, tDot11fFfVhtUserPositionArray*);
+
+void dot11fPackFfVhtUserPositionArray(tpAniSirGlobal, tDot11fFfVhtUserPositionArray*, tANI_U8*);
+
 /*********************************************************************
  * TLVs                                                              *
  ********************************************************************/
@@ -4170,6 +4195,37 @@
 #ifdef __cplusplus
 }; /* End extern "C". */
 #endif /* C++ */
+// EID 74 (0x4a)
+typedef struct sDot11fIEOBSSScanParameters {
+    tANI_U8      present;
+    tANI_U16     obssScanPassiveDwell;
+    tANI_U16     obssScanActiveDwell;
+    tANI_U16     bssChannelWidthTriggerScanInterval;
+    tANI_U16     obssScanPassiveTotalPerChannel;
+    tANI_U16     obssScanActiveTotalPerChannel;
+    tANI_U16     bssWidthChannelTransitionDelayFactor;
+    tANI_U16     obssScanActivityThreshold;
+} tDot11fIEOBSSScanParameters;
+
+#define DOT11F_EID_OBSSSCANPARAMETERS ( 74 )
+
+// N.B. These #defines do *not* include the EID & length
+#define DOT11F_IE_OBSSSCANPARAMETERS_MIN_LEN ( 14 )
+
+#define DOT11F_IE_OBSSSCANPARAMETERS_MAX_LEN ( 14 )
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* C++ */
+tANI_U32 dot11fUnpackIeOBSSScanParameters(tpAniSirGlobal, tANI_U8*,tANI_U8, tDot11fIEOBSSScanParameters*);
+
+tANI_U32 dot11fPackIeOBSSScanParameters(tpAniSirGlobal, tDot11fIEOBSSScanParameters*, tANI_U8*, tANI_U32, tANI_U32*);
+
+tANI_U32 dot11fGetPackedIEOBSSScanParameters(tpAniSirGlobal, tDot11fIEOBSSScanParameters*, tANI_U32*);
+
+#ifdef __cplusplus
+}; /* End extern "C". */
+#endif /* C++ */
 // EID 199 (0xc7)
 typedef struct sDot11fIEOperatingMode {
     tANI_U8      present;
@@ -5172,6 +5228,32 @@
 #ifdef __cplusplus
 }; /* End extern "C". */
 #endif /* C++ */
+// EID 59 (0x3b)
+typedef struct sDot11fIESuppOperatingClasses {
+    tANI_U8      present;
+    tANI_U8      num_classes;
+    tANI_U8      classes[32];
+} tDot11fIESuppOperatingClasses;
+
+#define DOT11F_EID_SUPPOPERATINGCLASSES ( 59 )
+
+// N.B. These #defines do *not* include the EID & length
+#define DOT11F_IE_SUPPOPERATINGCLASSES_MIN_LEN ( 1 )
+
+#define DOT11F_IE_SUPPOPERATINGCLASSES_MAX_LEN ( 32 )
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* C++ */
+tANI_U32 dot11fUnpackIeSuppOperatingClasses(tpAniSirGlobal, tANI_U8*,tANI_U8, tDot11fIESuppOperatingClasses*);
+
+tANI_U32 dot11fPackIeSuppOperatingClasses(tpAniSirGlobal, tDot11fIESuppOperatingClasses*, tANI_U8*, tANI_U32, tANI_U32*);
+
+tANI_U32 dot11fGetPackedIESuppOperatingClasses(tpAniSirGlobal, tDot11fIESuppOperatingClasses*, tANI_U32*);
+
+#ifdef __cplusplus
+}; /* End extern "C". */
+#endif /* C++ */
 // EID 1 (0x01)
 typedef struct sDot11fIESuppRates {
     tANI_U8      present;
@@ -6202,35 +6284,36 @@
 #endif /* C++ */
 
 typedef struct sDot11fAssocResponse{
-    tDot11fFfCapabilities   Capabilities;
-    tDot11fFfStatus         Status;
-    tDot11fFfAID            AID;
-    tDot11fIESuppRates      SuppRates;
-    tDot11fIEExtSuppRates   ExtSuppRates;
-    tDot11fIEEDCAParamSet   EDCAParamSet;
-    tDot11fIERCPIIE         RCPIIE;
-    tDot11fIERSNIIE         RSNIIE;
-    tDot11fIERRMEnabledCap  RRMEnabledCap;
-    tDot11fIEMobilityDomain MobilityDomain;
-    tDot11fIEFTInfo         FTInfo;
-    tANI_U16                num_RICDataDesc;
-    tDot11fIERICDataDesc    RICDataDesc[2];
-    tDot11fIEWPA            WPA;
-    tDot11fIEHTCaps         HTCaps;
-    tDot11fIEHTInfo         HTInfo;
-    tDot11fIEWMMParams      WMMParams;
-    tDot11fIEWMMCaps        WMMCaps;
-    tDot11fIECCXRadMgmtCap  CCXRadMgmtCap;
-    tDot11fIECCXTrafStrmMet CCXTrafStrmMet;
-    tDot11fIECCXTxmitPower  CCXTxmitPower;
-    tANI_U16                num_WMMTSPEC;
-    tDot11fIEWMMTSPEC       WMMTSPEC[4];
-    tDot11fIEAirgo          Airgo;
-    tDot11fIEWscAssocRes    WscAssocRes;
-    tDot11fIEP2PAssocRes    P2PAssocRes;
-    tDot11fIEVHTCaps        VHTCaps;
-    tDot11fIEVHTOperation   VHTOperation;
-    tDot11fIEExtCap         ExtCap;
+    tDot11fFfCapabilities       Capabilities;
+    tDot11fFfStatus             Status;
+    tDot11fFfAID                AID;
+    tDot11fIESuppRates          SuppRates;
+    tDot11fIEExtSuppRates       ExtSuppRates;
+    tDot11fIEEDCAParamSet       EDCAParamSet;
+    tDot11fIERCPIIE             RCPIIE;
+    tDot11fIERSNIIE             RSNIIE;
+    tDot11fIERRMEnabledCap      RRMEnabledCap;
+    tDot11fIEMobilityDomain     MobilityDomain;
+    tDot11fIEFTInfo             FTInfo;
+    tANI_U16                    num_RICDataDesc;
+    tDot11fIERICDataDesc        RICDataDesc[2];
+    tDot11fIEWPA                WPA;
+    tDot11fIEHTCaps             HTCaps;
+    tDot11fIEHTInfo             HTInfo;
+    tDot11fIEWMMParams          WMMParams;
+    tDot11fIEWMMCaps            WMMCaps;
+    tDot11fIECCXRadMgmtCap      CCXRadMgmtCap;
+    tDot11fIECCXTrafStrmMet     CCXTrafStrmMet;
+    tDot11fIECCXTxmitPower      CCXTxmitPower;
+    tANI_U16                    num_WMMTSPEC;
+    tDot11fIEWMMTSPEC           WMMTSPEC[4];
+    tDot11fIEAirgo              Airgo;
+    tDot11fIEWscAssocRes        WscAssocRes;
+    tDot11fIEP2PAssocRes        P2PAssocRes;
+    tDot11fIEVHTCaps            VHTCaps;
+    tDot11fIEVHTOperation       VHTOperation;
+    tDot11fIEExtCap             ExtCap;
+    tDot11fIEOBSSScanParameters OBSSScanParameters;
 } tDot11fAssocResponse;
 
 #define DOT11F_ASSOCRESPONSE ( 6 )
@@ -6321,6 +6404,7 @@
     tDot11fIEExtCap               ExtCap;
     tDot11fIEOperatingMode        OperatingMode;
     tDot11fIEWiderBWChanSwitchAnn WiderBWChanSwitchAnn;
+    tDot11fIEOBSSScanParameters   OBSSScanParameters;
 } tDot11fBeacon;
 
 #define DOT11F_BEACON ( 8 )
@@ -6455,6 +6539,7 @@
     tDot11fIEExtCap               ExtCap;
     tDot11fIEOperatingMode        OperatingMode;
     tDot11fIEWiderBWChanSwitchAnn WiderBWChanSwitchAnn;
+    tDot11fIEOBSSScanParameters   OBSSScanParameters;
 } tDot11fBeaconIEs;
 
 #define DOT11F_BEACONIES ( 11 )
@@ -7007,48 +7092,49 @@
 #endif /* C++ */
 
 typedef struct sDot11fProbeResponse{
-    tDot11fFfTimeStamp        TimeStamp;
-    tDot11fFfBeaconInterval   BeaconInterval;
-    tDot11fFfCapabilities     Capabilities;
-    tDot11fIESSID             SSID;
-    tDot11fIESuppRates        SuppRates;
-    tDot11fIEFHParamSet       FHParamSet;
-    tDot11fIEDSParams         DSParams;
-    tDot11fIECFParams         CFParams;
-    tDot11fIEIBSSParams       IBSSParams;
-    tDot11fIECountry          Country;
-    tDot11fIEFHParams         FHParams;
-    tDot11fIEFHPattTable      FHPattTable;
-    tDot11fIEPowerConstraints PowerConstraints;
-    tDot11fIEChanSwitchAnn    ChanSwitchAnn;
-    tDot11fIEQuiet            Quiet;
-    tDot11fIETPCReport        TPCReport;
-    tDot11fIEERPInfo          ERPInfo;
-    tDot11fIEExtSuppRates     ExtSuppRates;
-    tDot11fIERSNOpaque        RSNOpaque;
-    tDot11fIEQBSSLoad         QBSSLoad;
-    tDot11fIEEDCAParamSet     EDCAParamSet;
-    tDot11fIERRMEnabledCap    RRMEnabledCap;
-    tDot11fIEAPChannelReport  APChannelReport;
-    tDot11fIEMobilityDomain   MobilityDomain;
-    tDot11fIEWPA              WPA;
-    tDot11fIEHTCaps           HTCaps;
-    tDot11fIEHTInfo           HTInfo;
-    tDot11fIEExtChanSwitchAnn ExtChanSwitchAnn;
-    tDot11fIEWMMInfoAp        WMMInfoAp;
-    tDot11fIEWMMParams        WMMParams;
-    tDot11fIEWMMCaps          WMMCaps;
-    tDot11fIEWAPI             WAPI;
-    tDot11fIECCXRadMgmtCap    CCXRadMgmtCap;
-    tDot11fIECCXTrafStrmMet   CCXTrafStrmMet;
-    tDot11fIECCXTxmitPower    CCXTxmitPower;
-    tDot11fIEAirgo            Airgo;
-    tDot11fIEWscProbeRes      WscProbeRes;
-    tDot11fIEP2PProbeRes      P2PProbeRes;
-    tDot11fIEVHTCaps          VHTCaps;
-    tDot11fIEVHTOperation     VHTOperation;
-    tDot11fIEVHTExtBssLoad    VHTExtBssLoad;
-    tDot11fIEExtCap           ExtCap;
+    tDot11fFfTimeStamp          TimeStamp;
+    tDot11fFfBeaconInterval     BeaconInterval;
+    tDot11fFfCapabilities       Capabilities;
+    tDot11fIESSID               SSID;
+    tDot11fIESuppRates          SuppRates;
+    tDot11fIEFHParamSet         FHParamSet;
+    tDot11fIEDSParams           DSParams;
+    tDot11fIECFParams           CFParams;
+    tDot11fIEIBSSParams         IBSSParams;
+    tDot11fIECountry            Country;
+    tDot11fIEFHParams           FHParams;
+    tDot11fIEFHPattTable        FHPattTable;
+    tDot11fIEPowerConstraints   PowerConstraints;
+    tDot11fIEChanSwitchAnn      ChanSwitchAnn;
+    tDot11fIEQuiet              Quiet;
+    tDot11fIETPCReport          TPCReport;
+    tDot11fIEERPInfo            ERPInfo;
+    tDot11fIEExtSuppRates       ExtSuppRates;
+    tDot11fIERSNOpaque          RSNOpaque;
+    tDot11fIEQBSSLoad           QBSSLoad;
+    tDot11fIEEDCAParamSet       EDCAParamSet;
+    tDot11fIERRMEnabledCap      RRMEnabledCap;
+    tDot11fIEAPChannelReport    APChannelReport;
+    tDot11fIEMobilityDomain     MobilityDomain;
+    tDot11fIEWPA                WPA;
+    tDot11fIEHTCaps             HTCaps;
+    tDot11fIEHTInfo             HTInfo;
+    tDot11fIEExtChanSwitchAnn   ExtChanSwitchAnn;
+    tDot11fIEWMMInfoAp          WMMInfoAp;
+    tDot11fIEWMMParams          WMMParams;
+    tDot11fIEWMMCaps            WMMCaps;
+    tDot11fIEWAPI               WAPI;
+    tDot11fIECCXRadMgmtCap      CCXRadMgmtCap;
+    tDot11fIECCXTrafStrmMet     CCXTrafStrmMet;
+    tDot11fIECCXTxmitPower      CCXTxmitPower;
+    tDot11fIEAirgo              Airgo;
+    tDot11fIEWscProbeRes        WscProbeRes;
+    tDot11fIEP2PProbeRes        P2PProbeRes;
+    tDot11fIEVHTCaps            VHTCaps;
+    tDot11fIEVHTOperation       VHTOperation;
+    tDot11fIEVHTExtBssLoad      VHTExtBssLoad;
+    tDot11fIEExtCap             ExtCap;
+    tDot11fIEOBSSScanParameters OBSSScanParameters;
 } tDot11fProbeResponse;
 
 #define DOT11F_PROBERESPONSE ( 36 )
@@ -7237,6 +7323,7 @@
     tDot11fIEVHTCaps            VHTCaps;
     tDot11fIEVHTOperation       VHTOperation;
     tDot11fIEExtCap             ExtCap;
+    tDot11fIEOBSSScanParameters OBSSScanParameters;
 } tDot11fReAssocResponse;
 
 #define DOT11F_REASSOCRESPONSE ( 42 )
@@ -7315,21 +7402,22 @@
 #endif /* C++ */
 
 typedef struct sDot11fTDLSDisRsp{
-    tDot11fFfCategory          Category;
-    tDot11fFfAction            Action;
-    tDot11fFfDialogToken       DialogToken;
-    tDot11fFfCapabilities      Capabilities;
-    tDot11fIESuppRates         SuppRates;
-    tDot11fIEExtSuppRates      ExtSuppRates;
-    tDot11fIESuppChannels      SuppChannels;
-    tDot11fIERSN               RSN;
-    tDot11fIEExtCap            ExtCap;
-    tDot11fIEFTInfo            FTInfo;
-    tDot11fIEFTTimeoutInterval FTTimeoutInterval;
-    tDot11fIERICData           RICData;
-    tDot11fIEHTCaps            HTCaps;
-    tDot11fIELinkIdentifier    LinkIdentifier;
-    tDot11fIEVHTCaps           VHTCaps;
+    tDot11fFfCategory             Category;
+    tDot11fFfAction               Action;
+    tDot11fFfDialogToken          DialogToken;
+    tDot11fFfCapabilities         Capabilities;
+    tDot11fIESuppRates            SuppRates;
+    tDot11fIEExtSuppRates         ExtSuppRates;
+    tDot11fIESuppChannels         SuppChannels;
+    tDot11fIESuppOperatingClasses SuppOperatingClasses;
+    tDot11fIERSN                  RSN;
+    tDot11fIEExtCap               ExtCap;
+    tDot11fIEFTInfo               FTInfo;
+    tDot11fIEFTTimeoutInterval    FTTimeoutInterval;
+    tDot11fIERICData              RICData;
+    tDot11fIEHTCaps               HTCaps;
+    tDot11fIELinkIdentifier       LinkIdentifier;
+    tDot11fIEVHTCaps              VHTCaps;
 } tDot11fTDLSDisRsp;
 
 #define DOT11F_TDLSDISRSP ( 46 )
@@ -7421,25 +7509,26 @@
 #endif /* C++ */
 
 typedef struct sDot11fTDLSSetupReq{
-    tDot11fFfCategory          Category;
-    tDot11fFfAction            Action;
-    tDot11fFfDialogToken       DialogToken;
-    tDot11fFfCapabilities      Capabilities;
-    tDot11fIESuppRates         SuppRates;
-    tDot11fIECountry           Country;
-    tDot11fIEExtSuppRates      ExtSuppRates;
-    tDot11fIESuppChannels      SuppChannels;
-    tDot11fIERSN               RSN;
-    tDot11fIEExtCap            ExtCap;
-    tDot11fIEQOSCapsStation    QOSCapsStation;
-    tDot11fIEFTInfo            FTInfo;
-    tDot11fIEFTTimeoutInterval FTTimeoutInterval;
-    tDot11fIERICData           RICData;
-    tDot11fIEHTCaps            HTCaps;
-    tDot11fIELinkIdentifier    LinkIdentifier;
-    tDot11fIEWMMInfoStation    WMMInfoStation;
-    tDot11fIEAID               AID;
-    tDot11fIEVHTCaps           VHTCaps;
+    tDot11fFfCategory             Category;
+    tDot11fFfAction               Action;
+    tDot11fFfDialogToken          DialogToken;
+    tDot11fFfCapabilities         Capabilities;
+    tDot11fIESuppRates            SuppRates;
+    tDot11fIECountry              Country;
+    tDot11fIEExtSuppRates         ExtSuppRates;
+    tDot11fIESuppChannels         SuppChannels;
+    tDot11fIERSN                  RSN;
+    tDot11fIEExtCap               ExtCap;
+    tDot11fIESuppOperatingClasses SuppOperatingClasses;
+    tDot11fIEQOSCapsStation       QOSCapsStation;
+    tDot11fIEFTInfo               FTInfo;
+    tDot11fIEFTTimeoutInterval    FTTimeoutInterval;
+    tDot11fIERICData              RICData;
+    tDot11fIEHTCaps               HTCaps;
+    tDot11fIELinkIdentifier       LinkIdentifier;
+    tDot11fIEWMMInfoStation       WMMInfoStation;
+    tDot11fIEAID                  AID;
+    tDot11fIEVHTCaps              VHTCaps;
 } tDot11fTDLSSetupReq;
 
 #define DOT11F_TDLSSETUPREQ ( 50 )
@@ -7457,27 +7546,28 @@
 #endif /* C++ */
 
 typedef struct sDot11fTDLSSetupRsp{
-    tDot11fFfCategory          Category;
-    tDot11fFfAction            Action;
-    tDot11fFfStatus            Status;
-    tDot11fFfDialogToken       DialogToken;
-    tDot11fFfCapabilities      Capabilities;
-    tDot11fIESuppRates         SuppRates;
-    tDot11fIECountry           Country;
-    tDot11fIEExtSuppRates      ExtSuppRates;
-    tDot11fIESuppChannels      SuppChannels;
-    tDot11fIERSN               RSN;
-    tDot11fIEExtCap            ExtCap;
-    tDot11fIEQOSCapsStation    QOSCapsStation;
-    tDot11fIEFTInfo            FTInfo;
-    tDot11fIEFTTimeoutInterval FTTimeoutInterval;
-    tDot11fIERICData           RICData;
-    tDot11fIEHTCaps            HTCaps;
-    tDot11fIELinkIdentifier    LinkIdentifier;
-    tDot11fIEWMMInfoStation    WMMInfoStation;
-    tDot11fIEAID               AID;
-    tDot11fIEVHTCaps           VHTCaps;
-    tDot11fIEOperatingMode     OperatingMode;
+    tDot11fFfCategory             Category;
+    tDot11fFfAction               Action;
+    tDot11fFfStatus               Status;
+    tDot11fFfDialogToken          DialogToken;
+    tDot11fFfCapabilities         Capabilities;
+    tDot11fIESuppRates            SuppRates;
+    tDot11fIECountry              Country;
+    tDot11fIEExtSuppRates         ExtSuppRates;
+    tDot11fIESuppChannels         SuppChannels;
+    tDot11fIERSN                  RSN;
+    tDot11fIEExtCap               ExtCap;
+    tDot11fIESuppOperatingClasses SuppOperatingClasses;
+    tDot11fIEQOSCapsStation       QOSCapsStation;
+    tDot11fIEFTInfo               FTInfo;
+    tDot11fIEFTTimeoutInterval    FTTimeoutInterval;
+    tDot11fIERICData              RICData;
+    tDot11fIEHTCaps               HTCaps;
+    tDot11fIELinkIdentifier       LinkIdentifier;
+    tDot11fIEWMMInfoStation       WMMInfoStation;
+    tDot11fIEAID                  AID;
+    tDot11fIEVHTCaps              VHTCaps;
+    tDot11fIEOperatingMode        OperatingMode;
 } tDot11fTDLSSetupRsp;
 
 #define DOT11F_TDLSSETUPRSP ( 51 )
@@ -7558,6 +7648,27 @@
 } /* End extern "C". */
 #endif /* C++ */
 
+typedef struct sDot11fVHTGidManagementActionFrame{
+    tDot11fFfCategory                 Category;
+    tDot11fFfAction                   Action;
+    tDot11fFfVhtMembershipStatusArray VhtMembershipStatusArray;
+    tDot11fFfVhtUserPositionArray     VhtUserPositionArray;
+} tDot11fVHTGidManagementActionFrame;
+
+#define DOT11F_VHTGIDMANAGEMENTACTIONFRAME ( 55 )
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* C++ */
+
+tANI_U32 dot11fUnpackVHTGidManagementActionFrame(tpAniSirGlobal pCtx, tANI_U8 *pBuf, tANI_U32 nBuf, tDot11fVHTGidManagementActionFrame *pFrm);
+tANI_U32 dot11fPackVHTGidManagementActionFrame(tpAniSirGlobal pCtx, tDot11fVHTGidManagementActionFrame *pFrm, tANI_U8 *pBuf, tANI_U32 nBuf, tANI_U32 *pnConsumed);
+tANI_U32 dot11fGetPackedVHTGidManagementActionFrameSize(tpAniSirGlobal pCtx, tDot11fVHTGidManagementActionFrame *pFrm, tANI_U32 *pnNeeded);
+
+#ifdef __cplusplus
+} /* End extern "C". */
+#endif /* C++ */
+
 typedef struct sDot11fWMMAddTSRequest{
     tDot11fFfCategory           Category;
     tDot11fFfAction             Action;
@@ -7567,7 +7678,7 @@
     tDot11fIECCXTrafStrmRateSet CCXTrafStrmRateSet;
 } tDot11fWMMAddTSRequest;
 
-#define DOT11F_WMMADDTSREQUEST ( 55 )
+#define DOT11F_WMMADDTSREQUEST ( 56 )
 
 #ifdef __cplusplus
 extern "C" {
@@ -7590,7 +7701,7 @@
     tDot11fIECCXTrafStrmMet CCXTrafStrmMet;
 } tDot11fWMMAddTSResponse;
 
-#define DOT11F_WMMADDTSRESPONSE ( 56 )
+#define DOT11F_WMMADDTSRESPONSE ( 57 )
 
 #ifdef __cplusplus
 extern "C" {
@@ -7612,7 +7723,7 @@
     tDot11fIEWMMTSPEC    WMMTSPEC;
 } tDot11fWMMDelTS;
 
-#define DOT11F_WMMDELTS ( 57 )
+#define DOT11F_WMMDELTS ( 58 )
 
 #ifdef __cplusplus
 extern "C" {