wlan: Update the interface files for prima/pronto.
The wlan driver fails to load due to the recent changes in the
firmware api folder. Update the interface files for both
prima and pronto.
Change-Id: I39c13313c3594c43719d2208a94f7aeb833c09bf
CRs-Fixed: 503052
diff --git a/CORE/HDD/src/wlan_hdd_ftm.c b/CORE/HDD/src/wlan_hdd_ftm.c
index 35401d0..5ba3e52 100644
--- a/CORE/HDD/src/wlan_hdd_ftm.c
+++ b/CORE/HDD/src/wlan_hdd_ftm.c
@@ -2085,22 +2085,22 @@
/* If Last byte is larger than 252 (0xFC), return Error,
* Since 3MACs should be derived from first MAC */
if(QWLAN_MAX_MAC_LAST_BYTE_VALUE <
- nvField->fieldData.macAddr[VOS_MAC_ADDRESS_LEN - 1])
+ nvField->fieldData.macAddr.macAddr1[VOS_MAC_ADDRESS_LEN - 1])
{
VOS_TRACE( VOS_MODULE_ID_VOSS, VOS_TRACE_LEVEL_ERROR,
"Last Byte of the seed MAC is too large 0x%x",
- nvField->fieldData.macAddr[VOS_MAC_ADDRESS_LEN - 1]);
+ nvField->fieldData.macAddr.macAddr1[VOS_MAC_ADDRESS_LEN - 1]);
return -EILSEQ;
}
pNVMac = (v_U8_t *)nvContents->fields.macAddr;
- lastByteMAC = nvField->fieldData.macAddr[VOS_MAC_ADDRESS_LEN - 1];
+ lastByteMAC = nvField->fieldData.macAddr.macAddr1[VOS_MAC_ADDRESS_LEN - 1];
for(macLoop = 0; macLoop < VOS_MAX_CONCURRENCY_PERSONA; macLoop++)
{
- nvField->fieldData.macAddr[VOS_MAC_ADDRESS_LEN - 1] =
+ nvField->fieldData.macAddr.macAddr1[VOS_MAC_ADDRESS_LEN - 1] =
lastByteMAC + macLoop;
vos_mem_copy(pNVMac + (macLoop * NV_FIELD_MAC_ADDR_SIZE),
- &nvField->fieldData.macAddr[0],
+ &nvField->fieldData.macAddr.macAddr1[0],
NV_FIELD_MAC_ADDR_SIZE);
}
break;
@@ -3719,7 +3719,7 @@
VOS_TRACE(VOS_MODULE_ID_HDD, VOS_TRACE_LEVEL_INFO_HIGH, "MacAddress = %02x:%02x:%02x:%02x:%02x:%02x",MAC_ADDR_ARRAY(macAddr));
- pMacAddress = &pMsgBody->SetNvField.fieldData.macAddr[0];
+ pMacAddress = &pMsgBody->SetNvField.fieldData.macAddr.macAddr1[0];
for(ii = 0; ii < VOS_MAC_ADDRESS_LEN; ii++)
pMacAddress[ii] = (v_U8_t)macAddr[ii];
diff --git a/riva/inc/pttModule.h b/riva/inc/pttModule.h
index bfc60a5..9056b7c 100644
--- a/riva/inc/pttModule.h
+++ b/riva/inc/pttModule.h
@@ -138,6 +138,20 @@
tTxChainPower txChains[PHY_MAX_TX_CHAINS]; //output power for Tx chains
} tTxPowerReport;
+#define RXP_MAX_FILTER_IDX 64
+
+typedef PACKED_PRE struct PACKED_POST
+{
+ uint32 rxpFilterForFTMPER[RXP_MAX_FILTER_IDX];
+ uint32 max_pktlen;
+ uint32 flt_disable0;
+ uint32 flt_disable1;
+ uint32 config2;
+ uint32 push_wq_ctrl;
+ uint32 push_wq_ctrl2;
+ uint32 extra_frame_flt;
+} sMACConfig;
+
typedef PACKED_PRE struct PACKED_POST {
/*
@@ -165,7 +179,7 @@
// for FTM PER feature
tANI_U8 tx_mode;
- tANI_U8 reserved[1];
+ tANI_BOOLEAN ftm_per_settings_saved;
//Rx Gain Service
sRxChainsAgcEnable agcEnables;
@@ -177,4 +191,8 @@
sRxChainsRssi rssi;
} tPttModuleVariables;
+#ifdef WCN_PRONTO
+extern sMACConfig macConfig;
+#endif
+
#endif /* PTTMODULE_H */
diff --git a/riva/inc/wlan_hal_cfg.h b/riva/inc/wlan_hal_cfg.h
index 4b45abb..f100a27 100644
--- a/riva/inc/wlan_hal_cfg.h
+++ b/riva/inc/wlan_hal_cfg.h
@@ -99,28 +99,28 @@
#define QWLAN_HAL_CFG_RPE_AGING_THRESHOLD_FOR_AC3_REG 46
#define QWLAN_HAL_CFG_NO_OF_ONCHIP_REORDER_SESSIONS 47
#define QWLAN_HAL_CFG_PS_LISTEN_INTERVAL 48
-#define QWLAN_HAL_CFG_PS_HEART_BEAT_THRESHOLD 49
-#define QWLAN_HAL_CFG_PS_NTH_BEACON_FILTER 50
-#define QWLAN_HAL_CFG_PS_MAX_PS_POLL 51
+#define QWLAN_HAL_CFG_PS_HEART_BEAT_THRESHOLD 49
+#define QWLAN_HAL_CFG_PS_NTH_BEACON_FILTER 50
+#define QWLAN_HAL_CFG_PS_MAX_PS_POLL 51
#define QWLAN_HAL_CFG_PS_MIN_RSSI_THRESHOLD 52
-#define QWLAN_HAL_CFG_PS_RSSI_FILTER_PERIOD 53
+#define QWLAN_HAL_CFG_PS_RSSI_FILTER_PERIOD 53
#define QWLAN_HAL_CFG_PS_BROADCAST_FRAME_FILTER_ENABLE 54
#define QWLAN_HAL_CFG_PS_IGNORE_DTIM 55
#define QWLAN_HAL_CFG_PS_ENABLE_BCN_EARLY_TERM 56
#define QWLAN_HAL_CFG_DYNAMIC_PS_POLL_VALUE 57
-#define QWLAN_HAL_CFG_PS_NULLDATA_AP_RESP_TIMEOUT 58
+#define QWLAN_HAL_CFG_PS_NULLDATA_AP_RESP_TIMEOUT 58
#define QWLAN_HAL_CFG_TELE_BCN_WAKEUP_EN 59
#define QWLAN_HAL_CFG_TELE_BCN_TRANS_LI 60
#define QWLAN_HAL_CFG_TELE_BCN_TRANS_LI_IDLE_BCNS 61
#define QWLAN_HAL_CFG_TELE_BCN_MAX_LI 62
#define QWLAN_HAL_CFG_TELE_BCN_MAX_LI_IDLE_BCNS 63
#define QWLAN_HAL_CFG_TX_PWR_CTRL_ENABLE 64
-#define QWLAN_HAL_CFG_VALID_RADAR_CHANNEL_LIST 65
-#define QWLAN_HAL_CFG_TX_POWER_24_20 66
+#define QWLAN_HAL_CFG_VALID_RADAR_CHANNEL_LIST 65
+#define QWLAN_HAL_CFG_TX_POWER_24_20 66
#define QWLAN_HAL_CFG_TX_POWER_24_40 67
#define QWLAN_HAL_CFG_TX_POWER_50_20 68
#define QWLAN_HAL_CFG_TX_POWER_50_40 69
-#define QWLAN_HAL_CFG_MCAST_BCAST_FILTER_SETTING 70
+#define QWLAN_HAL_CFG_MCAST_BCAST_FILTER_SETTING 70
#define QWLAN_HAL_CFG_BCN_EARLY_TERM_WAKEUP_INTERVAL 71
#define QCOM_WLAN_CFG_MAX_TX_POWER_2_4 72
#define QCOM_WLAN_CFG_MAX_TX_POWER_5 73
@@ -155,16 +155,22 @@
#define QWLAN_HAL_CFG_AP_LINK_MONITOR_TIMEOUT 102
#define QWLAN_HAL_CFG_BTC_DWELL_TIME_MULTIPLIER 103
#define QWLAN_HAL_CFG_ENABLE_TDLS_OXYGEN_MODE 104
+#define QWLAN_HAL_CFG_ENABLE_NAT_KEEP_ALIVE_FILTER 105
+#define QWLAN_HAL_CFG_ENABLE_SAP_OBSS_PROT 106
+#define QWLAN_HAL_CFG_PSPOLL_DATA_RECEP_TIMEOUT 107
#define QWLAN_HAL_CFG_TDLS_PUAPSD_BUFFER_STA_CAPABLE 108
#define QWLAN_HAL_CFG_TDLS_PUAPSD_MASK 109
#define QWLAN_HAL_CFG_TDLS_PUAPSD_INACTIVITY_TIME 110
#define QWLAN_HAL_CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_IN_SP 111
-#define QWLAN_HAL_CFG_MAX_PARAMS 112
+#define QWLAN_HAL_CFG_ANTENNA_DIVERSITY 112
+#define QWLAN_HAL_CFG_ATH_DISABLE 113
+#define QWLAN_HAL_CFG_MAX_PARAMS 114
+
/* Total number of Integer CFGs. This is used while allocating the memory for TLV */
-#define QWLAN_HAL_CFG_INTEGER_PARAM 100
+#define QWLAN_HAL_CFG_INTEGER_PARAM 114
/*-------------------------------------------------------------------------
@@ -443,7 +449,7 @@
-/* ACM, AIFSN, [CWmin, CWmax, TxOp]-11A/11B/11G
+/* ACM, AIFSN, [CWmin, CWmax, TxOp]-11A/11B/11G
* Cwmin and Cwmax are two bytes each, MSB first. So Cwmax of [03 FF] is
* equivalent to 0x03ff = 1023*/
#define QWLAN_HAL_CFG_EDCA_PROFILE_ACM_IDX 0 /* byte[0] */
@@ -453,7 +459,7 @@
#define QWLAN_HAL_CFG_EDCA_PROFILE_TXOPA_IDX 6 /* byte[6] */
#define QWLAN_HAL_CFG_EDCA_PROFILE_CWMINB_IDX 7 /* byte[7] & byte [8] */
#define QWLAN_HAL_CFG_EDCA_PROFILE_CWMAXB_IDX 9 /* byte[9] & byte [10] */
-#define QWLAN_HAL_CFG_EDCA_PROFILE_TXOPB_IDX 11 /* byte[11]*/
+#define QWLAN_HAL_CFG_EDCA_PROFILE_TXOPB_IDX 11 /* byte[11]*/
#define QWLAN_HAL_CFG_EDCA_PROFILE_CWMING_IDX 12 /* byte[12] & byte [13] */
#define QWLAN_HAL_CFG_EDCA_PROFILE_CWMAXG_IDX 14 /* byte[14] & byte [15] */
#define QWLAN_HAL_CFG_EDCA_PROFILE_TXOPG_IDX 16 /* byte[16]*/
@@ -585,24 +591,24 @@
#define QWLAN_HAL_CFG_RADAR_CHANNEL_LIST_LEN 20
/* QWLAN_HAL_CFG_TX_POWER_24_20 */
-#define QWLAN_WLAN_TX_POWER_24_20_DEFAULT 299
-#define QWLAN_WLAN_TX_POWER_24_20_MIN 299
-#define QWLAN_WLAN_TX_POWER_24_20_MAX 299
+#define QWLAN_WLAN_TX_POWER_24_20_DEFAULT 299
+#define QWLAN_WLAN_TX_POWER_24_20_MIN 299
+#define QWLAN_WLAN_TX_POWER_24_20_MAX 299
/* QWLAN_HAL_CFG_TX_POWER_24_40 */
#define QWLAN_WLAN_TX_POWER_24_40_DEFAULT 300
-#define QWLAN_WLAN_TX_POWER_24_40_MIN 299
-#define QWLAN_WLAN_TX_POWER_24_40_MAX 299
+#define QWLAN_WLAN_TX_POWER_24_40_MIN 299
+#define QWLAN_WLAN_TX_POWER_24_40_MAX 299
/* QWLAN_HAL_CFG_TX_POWER_50_20 */
#define QWLAN_WLAN_TX_POWER_50_20_DEFAULT 301
-#define QWLAN_WLAN_TX_POWER_50_20_MIN 299
-#define QWLAN_WLAN_TX_POWER_50_20_MAX 299
+#define QWLAN_WLAN_TX_POWER_50_20_MIN 299
+#define QWLAN_WLAN_TX_POWER_50_20_MAX 299
/* QWLAN_HAL_CFG_TX_POWER_50_40 */
#define QWLAN_WLAN_TX_POWER_50_40_DEFAULT 302
-#define QWLAN_WLAN_TX_POWER_50_40_MIN 299
-#define QWLAN_WLAN_TX_POWER_50_40_MAX 299
+#define QWLAN_WLAN_TX_POWER_50_40_MIN 299
+#define QWLAN_WLAN_TX_POWER_50_40_MAX 299
/* QCOM_WLAN_CFG_MAX_TX_POWER_2_4 */
#define QCOM_WLAN_CFG_MAX_TX_POWER_2_4_LEN 128
@@ -760,6 +766,26 @@
#define QWLAN_HAL_CFG_BTC_DWELL_TIME_MULTIPLIER_MAX 300
#define QWLAN_HAL_CFG_BTC_DWELL_TIME_MULTIPLIER_DEF 300
+/* QWLAN_HAL_CFG_ENABLE_TDLS_OXYGEN_MODE */
+#define QWLAN_HAL_CFG_ENABLE_TDLS_OXYGEN_MODE_MIN 0
+#define QWLAN_HAL_CFG_ENABLE_TDLS_OXYGEN_MODE_MAX 1
+#define QWLAN_HAL_CFG_ENABLE_TDLS_OXYGEN_MODE_DEF 0
+
+/* QWLAN_HAL_CFG_ENABLE_NAT_KEEP_ALIVE_FILTER */
+#define QWLAN_HAL_CFG_ENABLE_NAT_KEEP_ALIVE_FILTER_MIN 0
+#define QWLAN_HAL_CFG_ENABLE_NAT_KEEP_ALIVE_FILTER_MAX 1
+#define QWLAN_HAL_CFG_ENABLE_NAT_KEEP_ALIVE_FILTER_DEF 0
+
+/* QWLAN_HAL_CFG_ENABLE_SAP_OBSS_PROT */
+#define QWLAN_HAL_CFG_ENABLE_SAP_OBSS_PROT_MIN 0
+#define QWLAN_HAL_CFG_ENABLE_SAP_OBSS_PROT_MAX 1
+#define QWLAN_HAL_CFG_ENABLE_SAP_OBSS_PROT_DEF 0
+
+/* QWLAN_HAL_CFG_PSPOLL_DATA_RECEP_TIMEOUT */
+#define QWLAN_HAL_CFG_PSPOLL_DATA_RECEP_TIMEOUT_STAMIN 1
+#define QWLAN_HAL_CFG_PSPOLL_DATA_RECEP_TIMEOUT_STAMAX 255
+#define QWLAN_HAL_CFG_PSPOLL_DATA_RECEP_TIMEOUT_STADEF 20
+
/* QWLAN_HAL_CFG_TDLS_PUAPSD_BUFFER_STA_CAPABLE */
#define QWLAN_HAL_CFG_TDLS_PUAPSD_BUFFER_STA_CAPABLE_MIN 0
#define QWLAN_HAL_CFG_TDLS_PUAPSD_BUFFER_STA_CAPABLE_MAX 1
@@ -780,7 +806,14 @@
#define QWLAN_HAL_CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_IN_SP_MAX 20
#define QWLAN_HAL_CFG_TDLS_PUAPSD_RX_FRAME_THRESHOLD_IN_SP_DEF 10
+/* QWLAN_HAL_CFG_ANTENNA_DIVERSITY */
+#define QWLAN_HAL_CFG_ANTENNA_DIVERSITY_DEF 0
+#define QWLAN_HAL_CFG_ANTENNA_DIVERSITY_MIN 0
+#define QWLAN_HAL_CFG_ANTENNA_DIVERSITY_MAX 3
+#define QWLAN_HAL_CFG_ATH_DEF 0
+#define QWLAN_HAL_CFG_ATH_MIN 0
+#define QWLAN_HAL_CFG_ATH_MAX 1
#endif //__WLAN_HAL_CFG_H__
diff --git a/riva/inc/wlan_hal_msg.h b/riva/inc/wlan_hal_msg.h
index 08503e5..4e360b3 100644
--- a/riva/inc/wlan_hal_msg.h
+++ b/riva/inc/wlan_hal_msg.h
@@ -376,6 +376,11 @@
WLAN_ROAM_SCAN_OFFLOAD_RSP = 192,
WLAN_HAL_WIFI_PROXIMITY_REQ = 193,
WLAN_HAL_WIFI_PROXIMITY_RSP = 194,
+
+ WLAN_HAL_START_SPECULATIVE_PS_POLLS_REQ = 195,
+ WLAN_HAL_START_SPECULATIVE_PS_POLLS_RSP = 196,
+ WLAN_HAL_STOP_SPECULATIVE_PS_POLLS_IND = 197,
+
WLAN_HAL_TDLS_LINK_ESTABLISHED_REQ = 198,
WLAN_HAL_TDLS_LINK_ESTABLISHED_RSP = 199,
WLAN_HAL_TDLS_LINK_TEARDOWN_REQ = 200,
@@ -4761,6 +4766,8 @@
#define WLAN_COEX_IND_TYPE_ENABLE_HB_MONITOR (1)
#define WLAN_COEX_IND_TYPE_SCANS_ARE_COMPROMISED_BY_COEX (2)
#define WLAN_COEX_IND_TYPE_SCANS_ARE_NOT_COMPROMISED_BY_COEX (3)
+#define WLAN_COEX_IND_TYPE_DISABLE_AGGREGATION_IN_2p4 (4)
+#define WLAN_COEX_IND_TYPE_ENABLE_AGGREGATION_IN_2p4 (5)
typedef PACKED_PRE struct PACKED_POST
{
@@ -4928,7 +4935,10 @@
/*---------------------------------------------------------------------------
*PNO Messages
*-------------------------------------------------------------------------*/
-/*Max number of channels that a network can be found on*/
+/* Max number of channels that a network can be found on*/
+/* WLAN_HAL_PNO_MAX_NETW_CHANNELS and WLAN_HAL_PNO_MAX_NETW_CHANNELS_EX should
+ * be changed at same time
+ */
#define WLAN_HAL_PNO_MAX_NETW_CHANNELS 60
/*Max number of channels that a network can be found on*/
@@ -4947,7 +4957,9 @@
Immediate - scanning will start immediately and PNO procedure will
be repeated based on timer
Suspend - scanning will start at suspend
- Resume - scanning will start on system resume*/
+ Resume - scanning will start on system resume
+ Delay - start the scan timer to trigger PNO scan
+ */
typedef enum
{
ePNO_MODE_IMMEDIATE,
@@ -5183,6 +5195,7 @@
/*Indicates the RSSI */
tANI_U8 rssi;
+ //The MPDU frame length of a beacon or probe rsp. data is the start of the frame
tANI_U16 frameLength;
} tPrefNetwFoundParams, * tpPrefNetwFoundParams;
@@ -5587,6 +5600,38 @@
*******************Packet Filtering Definitions End*******************
*--------------------------------------------------------------------------*/
+/*
+ * There are two versions of this message
+ * Version 1 : Base version
+ * Current version : Base version + Max LI modulated DTIM
+ */
+typedef PACKED_PRE struct PACKED_POST
+{
+ /* Ignore DTIM */
+ tANI_U32 uIgnoreDTIM;
+
+ /*DTIM Period*/
+ tANI_U32 uDTIMPeriod;
+
+ /* Listen Interval */
+ tANI_U32 uListenInterval;
+
+ /* Broadcast Multicast Filter */
+ tANI_U32 uBcastMcastFilter;
+
+ /* Beacon Early Termination */
+ tANI_U32 uEnableBET;
+
+ /* Beacon Early Termination Interval */
+ tANI_U32 uBETInterval;
+}tSetPowerParamsVer1Type, *tpSetPowerParamsVer1Type;
+
+typedef PACKED_PRE struct PACKED_POST
+{
+ tHalMsgHeader header;
+ tSetPowerParamsVer1Type powerParams;
+} tSetPowerParamsVer1ReqMsg, *tpSetPowerParamsVer1ReqMsg;
+
typedef PACKED_PRE struct PACKED_POST
{
/* Ignore DTIM */
@@ -5655,7 +5700,9 @@
RATECTRL = 21,
WOW = 22,
WLAN_ROAM_SCAN_OFFLOAD = 23,
- //MAX_FEATURE_SUPPORTED = 128
+ SPECULATIVE_PS_POLL = 24,
+ SCAN_SCH = 25,
+ MAX_FEATURE_SUPPORTED = 128,
} placeHolderInCapBitmap;
typedef PACKED_PRE struct PACKED_POST{
@@ -5684,6 +5731,7 @@
if ((b)<=127) { \
arr_index = (b)/32; \
bit_index = (b)%32; \
+ if(arr_index < 4) \
(a)->featCaps[arr_index] |= (1<<bit_index); \
} \
}
@@ -6000,6 +6048,51 @@
} tSetWifiProximityRspMsg, *tpSetWifiProxmityRspMsg;
#endif
+
+#ifdef FEATURE_SPECULATIVE_PS_POLL
+/*---------------------------------------------------------------------------
+ * WLAN_HAL_START_SPECULATIVE_PS_POLLS_REQ
+ *--------------------------------------------------------------------------*/
+typedef PACKED_PRE struct PACKED_POST
+{
+ tANI_U8 bssIdx;
+ tANI_U16 serviceInterval;
+ tANI_U16 suspendInterval;
+ tANI_U8 acMask;
+} tHalStartSpecPsPollReqParams, *tpHalStartSpecPsPollReqParams;
+
+typedef PACKED_PRE struct PACKED_POST
+{
+ tHalMsgHeader header;
+ tHalStartSpecPsPollReqParams specPsPollReq;
+} tHalStartSpecPsPollReqMsg, *tpHalStartSpecPsPollReqMsg;
+
+/*---------------------------------------------------------------------------
+ * WLAN_HAL_START_SPECULATIVE_PS_POLLS_RSP
+ *--------------------------------------------------------------------------*/
+typedef PACKED_PRE struct PACKED_POST
+{
+ /* success or failure */
+ tANI_U32 status;
+ tANI_U8 bssIdx;
+} tHalStartSpecPsPollRspParams, *tpHalStartSpecPsPollRspParams;
+
+typedef PACKED_PRE struct PACKED_POST
+{
+ tHalMsgHeader header;
+ tHalStartSpecPsPollRspParams startSpecPsPollRspParams;
+} tHalStartSpecPsPollRspMsg, *tpHalStartSpecPsPollRspMsg;
+
+/*---------------------------------------------------------------------------
+ * WLAN_HAL_STOP_SPECULATIVE_PS_POLLS_IND
+ *--------------------------------------------------------------------------*/
+typedef PACKED_PRE struct PACKED_POST
+{
+ tHalMsgHeader header;
+ tANI_U8 bssIdx;
+} tHalStopSpecPsPollsIndMsg, *tpHalStopSpecPsPollsIndMsg;
+#endif
+
#ifdef FEATURE_WLAN_TDLS
/*---------------------------------------------------------------------------
* WLAN_HAL_TDLS_LINK_ESTABLISHED_REQ
diff --git a/riva/inc/wlan_nv.h b/riva/inc/wlan_nv.h
index dc765ef..3e71c63 100755
--- a/riva/inc/wlan_nv.h
+++ b/riva/inc/wlan_nv.h
@@ -1,4 +1,24 @@
/*
+ * 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.
+*/
+/*
* Copyright (c) 2012 Qualcomm Atheros, Inc.
* All Rights Reserved.
* Qualcomm Atheros Confidential and Proprietary.
@@ -98,6 +118,14 @@
#define WLAN_NV_VERSION NV_VERSION_11N_11AC_FW_CONFIG
#endif //WCN_PRONTO
+typedef PACKED_PRE struct PACKED_POST
+{
+ uint8 macAddr1[NV_FIELD_MAC_ADDR_SIZE]; /* Default, not change name for compatibility */
+ uint8 macAddr2[NV_FIELD_MAC_ADDR_SIZE];
+ uint8 macAddr3[NV_FIELD_MAC_ADDR_SIZE];
+ uint8 macAddr4[NV_FIELD_MAC_ADDR_SIZE];
+} sMacAddr;
+
typedef PACKED_PRE union PACKED_POST
{
//common NV fields
@@ -106,10 +134,7 @@
uint8 wlanNvRevId;
uint8 numOfTxChains;
uint8 numOfRxChains;
- uint8 macAddr[NV_FIELD_MAC_ADDR_SIZE]; /* Default, not change name for compatibility */
- uint8 macAddr2[NV_FIELD_MAC_ADDR_SIZE];
- uint8 macAddr3[NV_FIELD_MAC_ADDR_SIZE];
- uint8 macAddr4[NV_FIELD_MAC_ADDR_SIZE];
+ sMacAddr macAddr;
uint8 mfgSN[NV_FIELD_MFG_SN_SIZE];
uint8 couplerType;
uint8 nvVersion;
@@ -627,17 +652,40 @@
uint8 countryCode[NV_FIELD_COUNTRY_CODE_SIZE]; // string identifier
}sDefaultCountry;
+
+#define GF_PA_BIAS_SELECT_MASK 0X7 //(3 bits)
+#define TSMC_PA_BIAS_SELECT_MASK 0x7 //(3 bits)
+
+#define GF_PA_BIAS_SELECT_1 0X0
+#define GF_PA_BIAS_SELECT_2 0X1
+
+#define TSMC_PA_BIAS_SELECT_1 0X0
+#define TSMC_PA_BIAS_SELECT_2 0X1
+#define TSMC_PA_BIAS_SELECT_3 0x2
+
+
+#define EXT_PA_CTRL_POLARITY_DEFAULT 0X0
+#define EXT_PA_CTRL_POLARITY_VALID 0X80
+
+#define EXT_PA_CTRL0_POLARITY_MASK 0X3
+#define EXT_PA_CTRL0_POLARITY_OFFSET 0X0
+#define EXT_PA_CTRL1_POLARITY_MASK 0XC
+#define EXT_PA_CTRL1_POLARITY_OFFSET 0X2
+
+#define EXT_PA_CTRL_POLARITY_ZERO 0X1
+#define EXT_PA_CTRL_POLARITY_ONE 0X2
+
typedef PACKED_PRE struct PACKED_POST
{
uint8 skuID;
uint8 tpcMode2G;
uint8 tpcMode5G;
- uint8 reserved1;
+ uint8 configItem1;
uint8 xPA2G;
uint8 xPA5G;
- uint8 paPolarityTx;
- uint8 paPolarityRx;
+ uint8 extPaCtrl0Polarity;
+ uint8 extPaCtrl1Polarity;
uint8 xLNA2G;
uint8 xLNA5G;
@@ -654,9 +702,9 @@
uint8 pdadcSelect5GMid;
uint8 pdadcSelect5GHigh;
- uint32 reserved2;
- uint32 resreved3;
- uint32 resreved4;
+ uint32 configItem2;
+ uint32 configItem3;
+ uint32 configItem4;
}sFwConfig;
diff --git a/riva/inc/wlan_phy.h b/riva/inc/wlan_phy.h
index c01708e..9fbfea6 100644
--- a/riva/inc/wlan_phy.h
+++ b/riva/inc/wlan_phy.h
@@ -237,11 +237,16 @@
typedef PACKED_PRE struct PACKED_POST {
tANI_U8 dpdCalFailCnt; //Count for number of times DPD cal failed.
tANI_U8 dpdCalSuccessCnt; //Count for number of times DPD cal passed.
+ tANI_U8 dpdColdBootRepeatCalStatus;
+ tANI_U8 dpdLastIteration;
tANI_S16 dpd_threshold[DPD_RESPONSE_SIZE];
tANI_S16 dpd_aoffset[DPD_RESPONSE_SIZE];
tANI_S16 dpd_again[DPD_RESPONSE_SIZE];
tANI_S16 dpd_poffset[DPD_RESPONSE_SIZE];
tANI_S16 dpd_pgain[DPD_RESPONSE_SIZE];
+ tANI_S32 dpd_sample[20];
+ tANI_U8 dpd_try;
+ tANI_U8 band;
}sDPDcorrectionCalValues;
typedef PACKED_PRE struct PACKED_POST {
diff --git a/riva/inc/wlan_qct_dev_defs.h b/riva/inc/wlan_qct_dev_defs.h
index 918972f..da304a5 100644
--- a/riva/inc/wlan_qct_dev_defs.h
+++ b/riva/inc/wlan_qct_dev_defs.h
@@ -1,43 +1,28 @@
/*
- * 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.
- */
+ * 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.
+*/
/*
- * Copyright (c) 2012, 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.
- */
+* Copyright (c) 2012-2013 Qualcomm Atheros, Inc.
+* All Rights Reserved.
+* Qualcomm Atheros Confidential and Proprietary.
+*/
/**
*
@@ -45,7 +30,7 @@
*
* @brief: This file contains the hardware related definitions.
*
- * Copyright (C) 2008, Qualcomm, Inc. All rights reserved.
+ * Copyright (C) 2008, Qualcomm Technologies, Inc. All rights reserved.
*/
#ifndef __WLAN_QCT_DEV_DEFS_H
@@ -80,7 +65,7 @@
// For Pronto
#define HAL_NUM_STA_WITHOUT_VSTA_PRONTO_V1 9
-#define HAL_NUM_STA_WITHOUT_VSTA_PRONTO_V2 (HAL_NUM_STA_WITHOUT_VSTA
+#define HAL_NUM_STA_WITHOUT_VSTA_PRONTO_V2 (HAL_NUM_STA_WITHOUT_VSTA)
#define IS_VSTA_VALID_IDX(__x) \
((__x) != QWLANFW_VSTA_INVALID_IDX)
@@ -154,7 +139,6 @@
* 1 for reserving an infra peer STA index (hard) for the other interface.
* 1 for P2P device role.
*/
-
#ifdef WLAN_SOFTAP_VSTA_FEATURE
#define HAL_NUM_ASSOC_STA 32
#define HAL_NUM_STA 41
@@ -199,6 +183,10 @@
#endif /* WCN_PRONTO */
+#ifdef FEATURE_WLAN_TDLS
+#define CXM_TDLS_MAX_NUM_STA 32
+#endif
+
#define HAL_INVALID_BSSIDX HAL_NUM_BSSID
#define MAX_NUM_OF_BACKOFFS 8
diff --git a/riva/inc/wlan_status_code.h b/riva/inc/wlan_status_code.h
index accf960..b32e3d0 100644
--- a/riva/inc/wlan_status_code.h
+++ b/riva/inc/wlan_status_code.h
@@ -1,43 +1,28 @@
/*
- * 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.
- */
+ * 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.
+*/
/*
- * Copyright (c) 2012, 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.
- */
+* Copyright (c) 2012 Qualcomm Atheros, Inc.
+* All Rights Reserved.
+* Qualcomm Atheros Confidential and Proprietary.
+*/
/*===========================================================================
*
@@ -47,7 +32,7 @@
* All status codes have been consolidated into one enum
*
* @author: Kumar Anand
- * Copyright (C) 2010, Qualcomm, Inc.
+ * Copyright (C) 2010, Qualcomm Technologies, Inc.
* All rights reserved.
*
*=========================================================================*/
@@ -174,6 +159,15 @@
/* BSS disconnect status : disassoc */
eHAL_STATUS_BSS_DISCONN_DISASSOC,
+ /* Data abort happened in PHY sw */
+ eHAL_STATUS_PHY_DATA_ABORT,
+
+ /* Invalid NV field */
+ eHAL_STATUS_PHY_INVALID_NV_FIELD,
+
+ /* WLAN boot test failed */
+ eHAL_STATUS_WLAN_BOOT_TEST_FAILURE,
+
/* Max status value */
eHAL_STATUS_MAX_VALUE = WLAN_STATUS_MAX_ENUM_SIZE