wlan: Add qwlanfw_defs.h to resolve the compiler error

Compilation Error. Change 664372 (Promote request by stng) removes the
"qwlanfw_defs.h" in rel/2.0 API branch. This is causing compilation
error as no qwlanfw_defs.h is present on the host side

Change-Id: I35f0a91424ec11785bb8d6a7e93a747c9db44efa
CR-Fixed: 434878
diff --git a/riva/inc/halCompiler.h b/riva/inc/halCompiler.h
index 5665123..7969184 100644
--- a/riva/inc/halCompiler.h
+++ b/riva/inc/halCompiler.h
@@ -162,6 +162,8 @@
 #define PACKED                                  __packed
 #define PACKED_POST
 #define ALIGN(__value)                          __align(__value)
+#define PREPACK                                 __packed
+#define POSTPACK
 #else
 #define __ani_attr_packed
 #define __ani_attr_pre_packed                   __packed
diff --git a/riva/inc/halLegacyPalTypes.h b/riva/inc/halLegacyPalTypes.h
index 09c9892..f4c6281 100644
--- a/riva/inc/halLegacyPalTypes.h
+++ b/riva/inc/halLegacyPalTypes.h
@@ -55,7 +55,7 @@
  *
  *=========================================================================*/
 
-#include "wlan_defs.h"
+#include "qwlanfw_defs.h"
 
 /* Common type definitions */
 typedef uint8     tANI_U8;
diff --git a/riva/inc/wlan_hal_cfg.h b/riva/inc/wlan_hal_cfg.h
index f7e15aa..e262976 100644
--- a/riva/inc/wlan_hal_cfg.h
+++ b/riva/inc/wlan_hal_cfg.h
@@ -58,7 +58,7 @@
 /*-------------------------------------------------------------------------
   Include Files
 -------------------------------------------------------------------------*/
-#include <wlan_defs.h>
+#include "qwlanfw_defs.h"
 
 /*-------------------------------------------------------------------------
   Preprocessor definitions and constants
@@ -740,6 +740,10 @@
 #define QWLAN_HAL_CFG_ENABLE_UNICAST_FILTER_MAX  1
 #define QWLAN_HAL_CFG_ENABLE_UNICAST_FILTER_DEF  0
 
+/* QWLAN_HAL_CFG_MAX_ASSOC_LIMIT */
+#define QWLAN_HAL_CFG_MAX_ASSOC_LIMIT_MIN  10
+#define QWLAN_HAL_CFG_MAX_ASSOC_LIMIT_MAX  32
+#define QWLAN_HAL_CFG_MAX_ASSOC_LIMIT_DEF  10
 
 /* QWLAN_HAL_CFG_ENABLE_LPWR_IMG_TRANSITION */
 #define QWLAN_HAL_CFG_ENABLE_LPWR_IMG_TRANSITION_MIN    0
@@ -751,110 +755,6 @@
 #define QWLAN_HAL_CFG_ENABLE_MCC_ADAPTIVE_SCHEDULER_MAX    1
 #define QWLAN_HAL_CFG_ENABLE_MCC_ADAPTIVE_SCHEDULER_DEF    0
 
-typedef struct 
-{
-   uint8    cfgStaId[QCOM_WLAN_CFG_STA_ID_LEN]; //QWLAN_HAL_CFG_STA_ID
-   uint8    reserved[2];               //Reserved field to align the next field on dword boundary
-   uint32   cfgCurrentTxAntenna;       //QWLAN_HAL_CFG_CURRENT_TX_ANTENNA
-   uint32   cfgCurrentRxAntenna;       //QWLAN_HAL_CFG_CURRENT_RX_ANTENNA
-   uint32   cfgLowGainOverride;        //QWLAN_HAL_CFG_LOW_GAIN_OVERRIDE
-   uint32   cfgPowerStatePerChain;     //QWLAN_HAL_CFG_POWER_STATE_PER_CHAIN
-   uint32   cfgCalPeriod;              //QWLAN_HAL_CFG_CAL_PERIOD
-   uint32   cfgCalControl;             //QWLAN_HAL_CFG_CAL_CONTROL
-   uint32   cfgProximity;              //QWLAN_HAL_CFG_PROXIMITY
-   uint32   cfgNetworkDensity;         //QWLAN_HAL_CFG_NETWORK_DENSITY
-   uint32   cfgMaxMediumTime;          //QWLAN_HAL_CFG_MAX_MEDIUM_TIME
-   uint32   cfgMaxMpdusInAmpu;         //QWLAN_HAL_CFG_MAX_MPDUS_IN_AMPDU
-   uint32   cfgRtsThreshold;           //QWLAN_HAL_CFG_RTS_THRESHOLD
-   uint32   cfgShortRetryLimit;        //QWLAN_HAL_CFG_SHORT_RETRY_LIMIT
-   uint32   cfgLongRetryLimit;         //QWLAN_HAL_CFG_LONG_RETRY_LIMIT
-   uint32   cfgFragmentationThreshold; //QWLAN_HAL_CFG_FRAGMENTATION_THRESHOLD
-   uint32   cfgDynamicThresholdZero;   //QWLAN_HAL_CFG_DYNAMIC_THRESHOLD_ZERO
-   uint32   cfgDynamicThresholdOne;    //QWLAN_HAL_CFG_DYNAMIC_THRESHOLD_ONE
-   uint32   cfgDynamicThresholdTwo;    //QWLAN_HAL_CFG_DYNAMIC_THRESHOLD_TWO
-   uint32   cfgFixedRate;              //QWLAN_HAL_CFG_FIXED_RATE
-   uint32   cfgRetryRatePolicy;        //QWLAN_HAL_CFG_RETRYRATE_POLICY
-   uint32   cfgRetryRateSecondary;     //QWLAN_HAL_CFG_RETRYRATE_SECONDARY
-   uint32   cfgRetryRateTertiary;      //QWLAN_HAL_CFG_RETRYRATE_TERTIARY
-   uint32   cfgForcePolicyProtection;  //QWLAN_HAL_CFG_FORCE_POLICY_PROTECTION
-   uint32   cfgFixedRateMcast24GHz;    //QWLAN_HAL_CFG_FIXED_RATE_MULTICAST_24GHZ
-   uint32   cfgFixedRateMcast5GHz;     //QWLAN_HAL_CFG_FIXED_RATE_MULTICAST_5GHZ
-   uint32   cfgDefaultRateIndex24GHz;  //QWLAN_HAL_CFG_DEFAULT_RATE_INDEX_24GHZ
-   uint32   cfgDefaultRateIndex5GHz;   //QWLAN_HAL_CFG_DEFAULT_RATE_INDEX_5GHZ
-   uint32   cfgMaxBaSessions;          //QWLAN_HAL_CFG_MAX_BA_SESSIONS
-   uint32   cfgPsDataInactivityTimeout;//QWLAN_HAL_CFG_PS_DATA_INACTIVITY_TIMEOUT
-   uint32   cfgPsTxInactivityTimeout;  //QWLAN_HAL_CFG_PS_TX_INACTIVITY_TIMEOUT
-   uint32   cfgPsEnableBcnFilter;      //QWLAN_HAL_CFG_PS_ENABLE_BCN_FILTER
-   uint32   cfgPsEnableRssiMonitor;    //QWLAN_HAL_CFG_PS_ENABLE_RSSI_MONITOR
-   uint32   cfgNumBeaconPerRssiAverage;//QWLAN_HAL_CFG_NUM_BEACON_PER_RSSI_AVERAGE
-   uint32   cfgStatsPeriod;            //QWLAN_HAL_CFG_STATS_PERIOD
-   uint32   cfgCfpMaxDuration;         //QWLAN_HAL_CFG_CFP_MAX_DURATION
-   uint32   cfgFrameTransEnabled;      //QWLAN_HAL_CFG_FRAME_TRANS_ENABLED
-   uint32   cfgDtimPeriod;             //QWLAN_HAL_CFG_DTIM_PERIOD
-   uint8    cfgEdcaWmmAcBk[QWLAN_HAL_CFG_EDCA_PARAM_MAX_LEN]; //QWLAN_HAL_CFG_EDCA_WMM_ACBK
-   uint8    cfgEdcaWmmAcBe[QWLAN_HAL_CFG_EDCA_PARAM_MAX_LEN]; //QWLAN_HAL_CFG_EDCA_WMM_ACBE
-   uint8    cfgEdcaWmmAcVo[QWLAN_HAL_CFG_EDCA_PARAM_MAX_LEN]; //QWLAN_HAL_CFG_EDCA_WMM_ACVO
-   uint8    cfgEdcaWmmAcVi[QWLAN_HAL_CFG_EDCA_PARAM_MAX_LEN]; //QWLAN_HAL_CFG_EDCA_WMM_ACVI
-   uint32   cfgbaSetupThresholdHigh;          //QWLAN_HAL_CFG_BA_THRESHOLD_HIGH
-   uint32   cfgbaRxMaxAvailBuffers;           //QWLAN_HAL_CFG_MAX_BA_BUFFERS
-   uint32   cfgRpePollingThreshold;           //QWLAN_HAL_CFG_RPE_POLLING_THRESHOLD
-   uint32   cfgRpeAgingThresholdForAc0Reg;    //QWLAN_HAL_CFG_RPE_AGING_THRESHOLD_FOR_AC0_REG
-   uint32   cfgRpeAgingThresholdForAc1Reg;    //QWLAN_HAL_CFG_RPE_AGING_THRESHOLD_FOR_AC1_REG
-   uint32   cfgRpeAgingThresholdForAc2Reg;    //QWLAN_HAL_CFG_RPE_AGING_THRESHOLD_FOR_AC2_REG
-   uint32   cfgRpeAgingThresholdForAc3Reg;    //QWLAN_HAL_CFG_RPE_AGING_THRESHOLD_FOR_AC3_REG
-   uint32   cfgNoOfOnchipReorderSessions;     //QWLAN_HAL_CFG_NO_OF_ONCHIP_REORDER_SESSIONS
-   uint32   cfgPsListenInterval;              //QWLAN_HAL_CFG_PS_LISTEN_INTERVAL
-   uint32   cfgPsHeartBeatThreshold;          //QWLAN_HAL_CFG_PS_HEART_BEAT_THRESHOLD
-   uint32   cfgPsNthBeaconFilter;             //QWLAN_HAL_CFG_PS_NTH_BEACON_FILTER
-   uint32   cfgPsMaxPsPoll;                   //QWLAN_HAL_CFG_PS_MAX_PS_POLL
-   uint32   cfgPsMinRssiThreshold;            //QWLAN_HAL_CFG_PS_MIN_RSSI_THRESHOLD
-   uint32   cfgPsRssiFilterPeriod;            //QWLAN_HAL_CFG_PS_RSSI_FILTER_PERIOD
-   uint32   cfgPsBroadcastFrameFilterEnable;  //QWLAN_HAL_CFG_PS_BROADCAST_FRAME_FILTER_ENABLE
-   uint32   cfgPsIgnoreDtim;                  //QWLAN_HAL_CFG_PS_IGNORE_DTIM
-   uint32   cfgPsEnableBcnEarlyTerm;          //QWLAN_HAL_CFG_PS_ENABLE_BCN_EARLY_TERM
-   uint32   cfgDynamicPsPollValue;            //QWLAN_HAL_CFG_DYNAMIC_PS_POLL_VALUE
-   uint32   cfgPsNullDataApRespTimeout;       //QWLAN_HAL_CFG_PS_NULLDATA_AP_RESP_TIMEOUT
-   uint32   cfgTxPowerEnable;                 //QWLAN_HAL_CFG_TX_PWR_CTRL_ENABLE
-   uint32   cfgTeleBcnWakeupEn;               //QWLAN_HAL_CFG_TELE_BCN_WAKEUP_EN
-   uint32   cfgTeleBcnTransLi;                //QWLAN_HAL_CFG_TELE_BCN_TRANS_LI
-   uint32   cfgTeleBcnTransLiIdleBcns;        //QWLAN_HAL_CFG_TELE_BCN_TRANS_LI_IDLE_BCNS
-   uint32   cfgTeleBcnMaxLi;                  //QWLAN_HAL_CFG_TELE_BCN_MAX_LI
-   uint32   cfgTeleBcnMaxLiIdleBcns;          //QWLAN_HAL_CFG_TELE_BCN_MAX_LI_IDLE_BCNS
-   uint32   cfgMcastBcastFilterSetting;       //QWLAN_HAL_CFG_MCAST_BCAST_FILTER_SETTING
-   uint32   cfgBcnEarlyTermWakeupInterval;    //QWLAN_HAL_CFG_BCN_EARLY_TERM_WAKEUP_INTERVAL
-   uint8    cfgValidRadarChannelList[QWLAN_HAL_CFG_RADAR_CHANNEL_LIST_LEN]; //QWLAN_HAL_CFG_VALID_RADAR_LIST
-   uint32   cfgTxPower2420;                   //QWLAN_HAL_CFG_TX_POWER_24_20
-   uint32   cfgTxPower2440;                   //QWLAN_HAL_CFG_TX_POWER_24_40
-   uint32   cfgTxPower5020;                   //QWLAN_HAL_CFG_TX_POWER_50_20
-   uint32   cfgTxPower5040;                   //QWLAN_HAL_CFG_TX_POWER_50_40
-   uint8    cfgMaxTxPower24[QCOM_WLAN_CFG_MAX_TX_POWER_2_4_LEN]; //QCOM_WLAN_CFG_MAX_TX_POWER_2_4
-   uint8    cfgMaxTxPower5[QCOM_WLAN_CFG_MAX_TX_POWER_5_LEN];    //QCOM_WLAN_CFG_MAX_TX_POWER_5
-   uint32   cfgInfraStaKeepAlivePeriod;       //QWLAN_HAL_CFG_INFRA_STA_KEEP_ALIVE_PERIOD
-   uint32   cfgEnableCloseLoop;               //QWLAN_HAL_CFG_ENABLE_CLOSE_LOOP
-   uint32   cfgBtcExecutionMode;              //QWLAN_HAL_CFG_BTC_EXECUTION_MODE
-   uint32   cfgBtcDhcpBtSlotsToBlock;         //QWLAN_HAL_CFG_BTC_DHCP_BT_SLOTS_TO_BLOCK
-   uint32   cfgBtcA2dpDhcpBtSubIntervals;     //QWLAN_HAL_CFG_BTC_A2DP_DHCP_BT_SUB_INTERVALS
-   uint32   cfgWcnssApiVersion;               //QWLAN_HAL_CFG_WCNSS_API_VERSION
-   uint32   cfgApKeepAliveTimeout;            //QWLAN_HAL_CFG_AP_KEEPALIVE_TIMEOUT
-   uint32   cfgGoKeepAliveTimeout;            //QWLAN_HAL_CFG_GO_KEEPALIVE_TIMEOUT
-   uint32   cfgEnableMCAddrList;              //QWLAN_HAL_CFG_ENABLE_MC_ADDR_LIST   
-   uint32   cfgBtcStaticLenInqBt;             //QWLAN_HAL_CFG_BTC_STATIC_LEN_INQ_BT
-   uint32   cfgBtcStaticLenPageBt;            //QWLAN_HAL_CFG_BTC_STATIC_LEN_PAGE_BT
-   uint32   cfgBtcStaticLenConnBt;            //QWLAN_HAL_CFG_BTC_STATIC_LEN_CONN_BT
-   uint32   cfgBtcStaticLenLeBt;              //QWLAN_HAL_CFG_BTC_STATIC_LEN_LE_BT
-   uint32   cfgBtcStaticLenInqWlan;           //QWLAN_HAL_CFG_BTC_STATIC_LEN_INQ_WLAN
-   uint32   cfgBtcStaticLenPageWlan;          //QWLAN_HAL_CFG_BTC_STATIC_LEN_PAGE_WLAN
-   uint32   cfgBtcStaticLenConnWlan;          //QWLAN_HAL_CFG_BTC_STATIC_LEN_CONN_WLAN
-   uint32   cfgBtcStaticLenLeWlan;            //QWLAN_HAL_CFG_BTC_STATIC_LEN_LE_WLAN
-   uint32   cfgBtcDynMaxLenBt;                //QWLAN_HAL_CFG_BTC_DYN_MAX_LEN_BT
-   uint32   cfgBtcDynMaxLenWlan;              //QWLAN_HAL_CFG_BTC_DYN_MAX_LEN_WLAN
-   uint32   cfgBtcMaxScoBlockPerc;            //QWLAN_HAL_CFG_BTC_MAX_SCO_BLOCK_PERC
-   uint32   cfgBtcDhcpProtOnA2dp;             //QWLAN_HAL_CFG_BTC_DHCP_PROT_ON_A2DP
-   uint32   cfgBtcDhcpProtOnSco;              //QWLAN_HAL_CFG_BTC_DHCP_PROT_ON_SCO
-   uint32   cfgEnableUCFilter;                //QWLAN_HAL_CFG_ENABLE_UNICAST_FILTER     
-   uint32   cfgEnableLpwrImgTransition;       //QWLAN_HAL_CFG_ENABLE_LPWR_IMG_TRANSITION
-}tAniHalCfg, *tpAniHalCfg;
-
 #endif //__WLAN_HAL_CFG_H__
 
 
diff --git a/riva/inc/wlan_hal_msg.h b/riva/inc/wlan_hal_msg.h
index 5d6b37d..843b754 100755
--- a/riva/inc/wlan_hal_msg.h
+++ b/riva/inc/wlan_hal_msg.h
@@ -1,9 +1,23 @@
 /*
-* Copyright (c) 2012 Qualcomm Atheros, Inc.
-* All Rights Reserved.
-* Qualcomm Atheros Confidential and Proprietary.
-*/
-
+ * Copyright (c) 2012-2013, The Linux Foundation. All rights reserved.
+ *
+ * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
+ *
+ *
+ * Permission to use, copy, modify, and/or distribute this software for
+ * any purpose with or without fee is hereby granted, provided that the
+ * above copyright notice and this permission notice appear in all
+ * copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+ * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
+ * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
+ * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
+ * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
 /*==========================================================================
  *
  *  @file:     wlan_hal_msg.h
@@ -24,6 +38,7 @@
 #include "halCompiler.h"
 #include "wlan_qct_dev_defs.h"
 #include "wlan_nv.h"
+
 /*---------------------------------------------------------------------------
   API VERSIONING INFORMATION
 
@@ -334,12 +349,27 @@
    WLAN_HAL_SET_THERMAL_MITIGATION_REQ      = 178,
    WLAN_HAL_SET_THERMAL_MITIGATION_RSP      = 179,
 
-  WLAN_HAL_UPDATE_VHT_OP_MODE_REQ           = 182,
-  WLAN_HAL_UPDATE_VHT_OP_MODE_RSP           = 183,
+   WLAN_HAL_UPDATE_VHT_OP_MODE_REQ          = 182,
+   WLAN_HAL_UPDATE_VHT_OP_MODE_RSP          = 183,
 
-  WLAN_HAL_P2P_NOA_START_IND                = 184,
+   WLAN_HAL_P2P_NOA_START_IND               = 184,
+
+   WLAN_HAL_GET_ROAM_RSSI_REQ               = 185,
+   WLAN_HAL_GET_ROAM_RSSI_RSP               = 186,
+
+   WLAN_HAL_SCAN_TX_BD_COMPLETE_IND         = 187,
+   WLAN_HAL_CXM2SLM_OPERATING_MODE          = 188,
+   WLAN_HAL_P2P_MSG                         = 189,
+   WLAN_HAL_PS_TX_BPS_MSG                   = 190,
+   WLAN_HAL_PS_MODE_TO_MSG                  = 191,
+   WLAN_HAL_P2P_INDICATE_NOA_ATTR_TO_HOST   = 192,
+   WLAN_HAL_P2P_INDICATE_NOA_START_TO_HOST  = 193,
+   WLAN_HAL_DEL_STA_IND                     = 194,
+   /* DEL BD IND from RPE interrupt */
+   WLAN_HAL_DEL_BA_IND                      = 195,
+   WLAN_HAL_SCAN_INTERNAL_EVENTID           = 196,
    WLAN_HAL_CLASS_B_STATS_IND               = 197,
-  WLAN_HAL_MSG_MAX = WLAN_HAL_MSG_TYPE_MAX_ENUM_SIZE
+   WLAN_HAL_MSG_MAX = WLAN_HAL_MSG_TYPE_MAX_ENUM_SIZE
 }tHalHostMsgType;
 
 /* Enumeration for Version */
@@ -2221,11 +2251,11 @@
 #ifdef FEATURE_OEM_DATA_SUPPORT
 
 #ifndef OEM_DATA_REQ_SIZE
-#define OEM_DATA_REQ_SIZE 70 
+#define OEM_DATA_REQ_SIZE 134
 #endif
 
 #ifndef OEM_DATA_RSP_SIZE
-#define OEM_DATA_RSP_SIZE 968
+#define OEM_DATA_RSP_SIZE 1968
 #endif
 
 /*-------------------------------------------------------------------------
@@ -3072,6 +3102,45 @@
    tSetKeyDoneParams setKeyDoneParams;
 }  tSetKeyDoneMsg, *tpSetKeyDoneMsg;
 
+typedef PACKED_PRE struct PACKED_POST
+{
+  uint8 selfStaIdx;
+  uint8 peerStaIdx;
+  boolean frameSentForStart;
+  boolean frameSuccessfullySent;
+
+} tScanTxBdCompParams, *tpScanTxBdCompParams;
+
+
+typedef PACKED_PRE struct PACKED_POST
+{
+   tHalMsgHeader header;
+   tScanTxBdCompParams scanTxBdCompleteIndParams;
+} tScanTxBdCompleteInd, *tpScanTxBdCompleteInd;
+
+typedef PACKED_PRE struct PACKED_POST
+{
+   tHalMsgHeader header;
+   tANI_U32      mode;
+   tANI_U32      parameter;
+} tCoexOpModeType, *tpCoexOpModeType;
+
+
+typedef PACKED_PRE struct PACKED_POST
+{
+   tHalMsgHeader header;
+   tANI_U32 bssIdx:8;
+   tANI_U32 timerType:3;
+   tANI_U32 reserved:21;
+} tPwrSaveModeTOReqType, *tpPwrSaveModeTOReqType;
+
+
+typedef PACKED_PRE struct PACKED_POST
+{
+    tHalMsgHeader header;
+} tTxBpsReqType, *tpTxBpsReqType;
+
+
 /*---------------------------------------------------------------------------
  * WLAN_HAL_DOWNLOAD_NV_REQ
  *--------------------------------------------------------------------------*/
@@ -3471,6 +3540,15 @@
     tDeleteStaContextParams deleteStaContextParams;
 }tDeleteStaContextIndMsg, *tpDeleteStaContextIndMsg;
 
+typedef PACKED_PRE struct PACKED_POST
+{
+   tHalMsgHeader header;
+   tANI_U8  assocId;
+   tANI_U8  staIdx;
+   tANI_U8  bssIdx;
+   tANI_U8  uReasonCode;
+   tANI_U32  uStatus;
+} tIndicateDelSta, *tpIndicateDelSta;
 
 /*---------------------------------------------------------------------------
  *WLAN_HAL_SIGNAL_BTAMP_EVENT_REQ
@@ -3951,6 +4029,24 @@
    tHalMsgHeader header;
 }  tHalGetRssiReqMsg, *tpHalGetRssiReqMsg;
 
+typedef PACKED_PRE struct PACKED_POST
+{
+   /* Valid STA Idx for per STA stats request */
+   tANI_U32    staId;
+
+}tHalRoamRssiReqParams, *tpHalRoamRssiReqParams;
+
+
+/*---------------------------------------------------------------------------
+ * WLAN_HAL_GET_ROAM_RSSI_REQ
+ *--------------------------------------------------------------------------*/
+typedef PACKED_PRE struct PACKED_POST
+{
+   tHalMsgHeader header;
+   tHalRoamRssiReqParams roamRssiReqParams;
+}  tHalGetRoamRssiReqMsg, *tpHalGetRoamRssiReqMsg;
+
+
 /*---------------------------------------------------------------------------
  * WLAN_HAL_SET_UAPSD_AC_PARAMS_REQ
  *--------------------------------------------------------------------------*/
@@ -4115,6 +4211,24 @@
 }  tHalGetRssiRspMsg, *tpHalGetRssiRspMsg;
 
 /*---------------------------------------------------------------------------
+ * WLAN_HAL_GET_ROAM_RSSI_RSP
+ *--------------------------------------------------------------------------*/
+typedef PACKED_PRE struct PACKED_POST
+{
+    /* success or failure */
+    tANI_U32   status;
+
+    tANI_U8    staId;
+    tANI_S8    rssi;
+} tHalGetRoamRssiParams, *tpHalGetRoamRspParams;
+
+typedef PACKED_PRE struct PACKED_POST
+{
+   tHalMsgHeader header;
+   tHalGetRoamRssiParams roamRssiRspParams;
+}  tHalGetRoamRssiRspMsg, *tpHalGetRoamRssiRspMsg;
+
+/*---------------------------------------------------------------------------
  * WLAN_HAL_ENTER_WOWL_RSP
  *--------------------------------------------------------------------------*/
 typedef PACKED_PRE struct PACKED_POST
@@ -4720,7 +4834,7 @@
    tANI_U16     ctWin  ;
 
    tANI_U16      uNoa1IntervalCnt;
-   tANI_U16      rsvd1 ;
+   tANI_U16      bssIdx;
    tANI_U32      uNoa1Duration;
    tANI_U32      uNoa1Interval;
    tANI_U32      uNoa1StartTime;
@@ -4787,6 +4901,27 @@
    tHalHostResumeRspParams hostResumeRspParams;
 }  tHalHostResumeRspMsg, *tpHalHostResumeRspMsg;
 
+typedef PACKED_PRE struct PACKED_POST
+{
+	tANI_U16 staIdx;
+	// Peer MAC Address, whose BA session has timed out
+	tSirMacAddr peerMacAddr;
+	// TID for which a BA session timeout is being triggered
+	tANI_U8 baTID;
+	// DELBA direction
+	// 1 - Originator
+	// 0 - Recipient
+	tANI_U8 baDirection;
+	tANI_U32 reasonCode;
+	tSirMacAddr  bssId; // TO SUPPORT BT-AMP
+} tHalWlanDelBaIndMsg, *tpHalWlanDelBaIndMsg;
+
+typedef PACKED_PRE struct PACKED_POST
+{
+    tHalMsgHeader   header;
+	tHalWlanDelBaIndMsg hostdelBaParam;
+} tHalDelBAIndMsg, *tpHalDelBAIndMsg;
+
 /*---------------------------------------------------------------------------
  *PNO Messages
  *-------------------------------------------------------------------------*/
@@ -5423,10 +5558,36 @@
  ****************Capability bitmap exchange definitions and macros starts*************
  *--------------------------------------------------------------------------*/
 
+typedef enum {
+    MCC        = 0,
+    P2P        = 1,
+    DOT11AC    = 2,
+    SLM_SESSIONIZATION = 3,
+    DOT11AC_OPMODE     = 4,
+    SAP32STA = 5,
+    TDLS       = 6,
+    P2P_GO_NOA_DECOUPLE_INIT_SCAN = 7,
+    WLANACTIVE_OFFLOAD = 8,
+    BEACON_OFFLOAD     = 9,
+    SCAN_OFFLOAD       = 10,
+    ROAM_OFFLOAD       = 11,
+    BCN_MISS_OFFLOAD   = 12,
+    STA_POWERSAVE      = 13,
+    STA_ADVANCED_PWRSAVE = 14,
+    AP_UAPSD           = 15,
+    AP_DFS             = 16,
+    BLOCKACK           = 17,
+    PHY_ERR            = 18,
+    BCN_FILTER         = 19,
+    RTT                = 20,
+    RATECTRL           = 21,
+    WOW                = 22,
+    MAX_FEATURE_SUPPORTED = 128,
+} placeHolderInCapBitmap;
+
 typedef PACKED_PRE struct PACKED_POST{
 
    tANI_U32 featCaps[4];
-
 }  tWlanFeatCaps, *tpWlanFeatCaps;
 
 typedef PACKED_PRE struct PACKED_POST{
@@ -5437,24 +5598,9 @@
 }  tWlanFeatCapsMsg, *tpWlanFeatCapsMsg;
 
 
-typedef enum {
-    MCC        = 0,
-    P2P        = 1,
-    DOT11AC    = 2,
-    SLM_SESSIONIZATION = 3,
-    DOT11AC_OPMODE  = 4,
-    SAP32STA = 5,
-    TDLS       = 6,
-    P2P_GO_NOA_DECOUPLE_INIT_SCAN = 7,
-	WLANACTIVE_OFFLOAD = 8,
-    MAX_FEATURE_SUPPORTED = 128,
-} placeHolderInCapBitmap;
-
-
 #define IS_MCC_SUPPORTED_BY_HOST (!!(halMsg_GetHostWlanFeatCaps(MCC)))
 #define IS_SLM_SESSIONIZATION_SUPPORTED_BY_HOST (!!(halMsg_GetHostWlanFeatCaps(SLM_SESSIONIZATION)))
 #define IS_FEATURE_SUPPORTED_BY_HOST(featEnumValue) (!!halMsg_GetHostWlanFeatCaps(featEnumValue))
-
 tANI_U8 halMsg_GetHostWlanFeatCaps(tANI_U8 feat_enum_value);
 
 #define setFeatCaps(a,b)   {  tANI_U32 arr_index, bit_index; \
diff --git a/riva/inc/wlan_phy.h b/riva/inc/wlan_phy.h
index 3eb5cce..c01708e 100644
--- a/riva/inc/wlan_phy.h
+++ b/riva/inc/wlan_phy.h
@@ -46,9 +46,9 @@
 
 Contains definitions of all PHY related structures that aree needed by FTM/PTT
 
-Copyright (c) 2007 QUALCOMM Incorporated. 
-All Rights Reserved. 
-Qualcomm Confidential and Proprietary 
+Copyright (c) 2007 Qualcomm Technologies, Inc. All Rights Reserved. 
+Qualcomm Technologies Proprietary and Confidential
+
 ============================================================================*/
 #include <wlan_nv.h>
  
@@ -916,4 +916,14 @@
 #define MAX_TPC_GAIN_LUT_DBM_2DEC_PLACES    (MAX_TPC_GAIN_LUT_DBM * 100)
 #define MIN_TPC_GAIN_LUT_DBM_2DEC_PLACES    (MIN_TPC_GAIN_LUT_DBM * 100)
 
+typedef enum
+{
+    RF_BANDWIDTH_20MHZ = 20,
+    RF_BANDWIDTH_40MHZ = 40,
+    RF_BANDWIDTH_80MHZ = 80,
+    RF_MIN_BANDWIDTH = RF_BANDWIDTH_20MHZ,
+    RF_MAX_BANDWIDTH = RF_BANDWIDTH_80MHZ,
+    RF_BANDWIDTH_INVALID = 0x7FFFFFFF
+}eRfBandwidth;
+
 #endif /* WLAN_PHY_H */
diff --git a/riva/inc/wlan_qct_dev_defs.h b/riva/inc/wlan_qct_dev_defs.h
index 51a1263..7a183cd 100644
--- a/riva/inc/wlan_qct_dev_defs.h
+++ b/riva/inc/wlan_qct_dev_defs.h
@@ -369,4 +369,16 @@
 #define HWBD_TYPE_GENERIC                  0   /* generic BD format */
 #define HWBD_TYPE_FRAG                     1   /* fragmentation BD format*/
 
+/*---------------------------------------------------------------------- */
+/* HW Tx power                                                           */
+/*---------------------------------------------------------------------- */
+#ifdef WLAN_HAL_PRIMA
+   #define WLAN_SOC_PRIMA_MAX_TX_POWER 22
+   #define WLAN_SOC_PRIMA_MIN_TX_POWER 6
+#else
+   /* add more platforms here */
+   #define WLAN_SOC_PRIMA_MAX_TX_POWER 22
+   #define WLAN_SOC_PRIMA_MIN_TX_POWER 6
+#endif //#ifdef WCN_PRIMA
+
 #endif /* __WLAN_QCT_DEV_DEFS_H */