| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 1 | /* | 
| Deepak Dhamdhere | a2df6bb | 2015-10-29 15:11:06 -0700 | [diff] [blame] | 2 |  * Copyright (c) 2012-2016 The Linux Foundation. All rights reserved. | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 3 |  * | 
 | 4 |  * Previously licensed under the ISC license by Qualcomm Atheros, Inc. | 
 | 5 |  * | 
 | 6 |  * | 
 | 7 |  * Permission to use, copy, modify, and/or distribute this software for | 
 | 8 |  * any purpose with or without fee is hereby granted, provided that the | 
 | 9 |  * above copyright notice and this permission notice appear in all | 
 | 10 |  * copies. | 
 | 11 |  * | 
 | 12 |  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL | 
 | 13 |  * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED | 
 | 14 |  * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE | 
 | 15 |  * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL | 
 | 16 |  * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR | 
 | 17 |  * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER | 
 | 18 |  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR | 
 | 19 |  * PERFORMANCE OF THIS SOFTWARE. | 
 | 20 |  */ | 
 | 21 |  | 
 | 22 | /* | 
 | 23 |  * This file was originally distributed by Qualcomm Atheros, Inc. | 
 | 24 |  * under proprietary terms before Copyright ownership was assigned | 
 | 25 |  * to the Linux Foundation. | 
 | 26 |  */ | 
 | 27 |  | 
 | 28 | /** | 
 | 29 |  * DOC: wlan_hdd_cfg80211.h | 
 | 30 |  * | 
 | 31 |  * WLAN host device driver cfg80211 functions declaration | 
 | 32 |  */ | 
 | 33 |  | 
 | 34 | #if !defined(HDD_CFG80211_H__) | 
 | 35 | #define HDD_CFG80211_H__ | 
 | 36 |  | 
 | 37 | /* value for initial part of frames and number of bytes to be compared */ | 
 | 38 | #define GAS_INITIAL_REQ "\x04\x0a" | 
 | 39 | #define GAS_INITIAL_REQ_SIZE 2 | 
 | 40 |  | 
 | 41 | #define GAS_INITIAL_RSP "\x04\x0b" | 
 | 42 | #define GAS_INITIAL_RSP_SIZE 2 | 
 | 43 |  | 
 | 44 | #define GAS_COMEBACK_REQ "\x04\x0c" | 
 | 45 | #define GAS_COMEBACK_REQ_SIZE 2 | 
 | 46 |  | 
 | 47 | #define GAS_COMEBACK_RSP "\x04\x0d" | 
 | 48 | #define GAS_COMEBACK_RSP_SIZE 2 | 
 | 49 |  | 
 | 50 | #define P2P_PUBLIC_ACTION_FRAME "\x04\x09\x50\x6f\x9a\x09" | 
 | 51 | #define P2P_PUBLIC_ACTION_FRAME_SIZE 6 | 
 | 52 |  | 
 | 53 | #define P2P_ACTION_FRAME "\x7f\x50\x6f\x9a\x09" | 
 | 54 | #define P2P_ACTION_FRAME_SIZE 5 | 
 | 55 |  | 
 | 56 | #define SA_QUERY_FRAME_REQ "\x08\x00" | 
 | 57 | #define SA_QUERY_FRAME_REQ_SIZE 2 | 
 | 58 |  | 
 | 59 | #define SA_QUERY_FRAME_RSP "\x08\x01" | 
 | 60 | #define SA_QUERY_FRAME_RSP_SIZE 2 | 
 | 61 |  | 
 | 62 | #define HDD_P2P_WILDCARD_SSID "DIRECT-" | 
 | 63 | #define HDD_P2P_WILDCARD_SSID_LEN 7 | 
 | 64 |  | 
 | 65 | #define WNM_BSS_ACTION_FRAME "\x0a\x07" | 
 | 66 | #define WNM_BSS_ACTION_FRAME_SIZE 2 | 
 | 67 |  | 
 | 68 | #define WNM_NOTIFICATION_FRAME "\x0a\x1a" | 
 | 69 | #define WNM_NOTIFICATION_FRAME_SIZE 2 | 
 | 70 |  | 
 | 71 | #define WPA_OUI_TYPE   "\x00\x50\xf2\x01" | 
 | 72 | #define BLACKLIST_OUI_TYPE   "\x00\x50\x00\x00" | 
 | 73 | #define WHITELIST_OUI_TYPE   "\x00\x50\x00\x01" | 
 | 74 | #define WPA_OUI_TYPE_SIZE  4 | 
 | 75 | #define WMM_OUI_TYPE   "\x00\x50\xf2\x02\x01" | 
 | 76 | #define WMM_OUI_TYPE_SIZE  5 | 
 | 77 |  | 
 | 78 | #define WLAN_BSS_MEMBERSHIP_SELECTOR_VHT_PHY 126 | 
 | 79 | #define WLAN_BSS_MEMBERSHIP_SELECTOR_HT_PHY 127 | 
 | 80 | #define BASIC_RATE_MASK   0x80 | 
 | 81 | #define RATE_MASK         0x7f | 
 | 82 |  | 
 | 83 | #ifdef WLAN_ENABLE_AGEIE_ON_SCAN_RESULTS | 
 | 84 | /* GPS application requirement */ | 
 | 85 | #define QCOM_VENDOR_IE_ID 221 | 
 | 86 | #define QCOM_OUI1         0x00 | 
 | 87 | #define QCOM_OUI2         0xA0 | 
 | 88 | #define QCOM_OUI3         0xC6 | 
 | 89 | #define QCOM_VENDOR_IE_AGE_TYPE  0x100 | 
 | 90 | #define QCOM_VENDOR_IE_AGE_LEN   (sizeof(qcom_ie_age) - 2) | 
 | 91 |  | 
 | 92 | #ifdef FEATURE_WLAN_TDLS | 
 | 93 | #define WLAN_IS_TDLS_SETUP_ACTION(action) \ | 
 | 94 | 	((SIR_MAC_TDLS_SETUP_REQ <= action) && \ | 
 | 95 | 	(SIR_MAC_TDLS_SETUP_CNF >= action)) | 
 | 96 | #if !defined (TDLS_MGMT_VERSION2) | 
 | 97 | #define TDLS_MGMT_VERSION2 0 | 
 | 98 | #endif | 
 | 99 | #endif | 
 | 100 |  | 
 | 101 | #define MAX_CHANNEL (NUM_24GHZ_CHANNELS + NUM_5GHZ_CHANNELS) | 
 | 102 | #define MAX_SCAN_SSID 10 | 
 | 103 |  | 
| Abhishek Singh | 1bdb157 | 2015-10-16 16:24:19 +0530 | [diff] [blame] | 104 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 12, 0)) \ | 
 | 105 | 	|| defined(BACKPORTED_CHANNEL_SWITCH_PRESENT) | 
 | 106 | #define CHANNEL_SWITCH_SUPPORTED | 
 | 107 | #endif | 
 | 108 |  | 
| Ryan Hsu | 8ecb0fa | 2016-01-18 15:40:55 -0800 | [diff] [blame] | 109 | #if defined(CFG80211_DEL_STA_V2) || (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 19, 0)) || defined(WITH_BACKPORTS) | 
 | 110 | #define USE_CFG80211_DEL_STA_V2 | 
 | 111 | #endif | 
 | 112 |  | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 113 | /** | 
 | 114 |  * typedef struct qcom_ie_age - age ie | 
 | 115 |  * | 
 | 116 |  * @element_id: Element id | 
 | 117 |  * @len: Length | 
 | 118 |  * @oui_1: OUI 1 | 
 | 119 |  * @oui_2: OUI 2 | 
 | 120 |  * @oui_3: OUI 3 | 
 | 121 |  * @type: Type | 
 | 122 |  * @age: Age | 
 | 123 |  * @tsf_delta: tsf delta from FW | 
| Krishna Kumaar Natarajan | a4e1224 | 2016-04-01 18:44:39 -0700 | [diff] [blame] | 124 |  * @beacon_tsf: original beacon TSF | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 125 |  */ | 
 | 126 | typedef struct { | 
 | 127 | 	u8 element_id; | 
 | 128 | 	u8 len; | 
 | 129 | 	u8 oui_1; | 
 | 130 | 	u8 oui_2; | 
 | 131 | 	u8 oui_3; | 
 | 132 | 	u32 type; | 
 | 133 | 	u32 age; | 
 | 134 | 	u32 tsf_delta; | 
| Krishna Kumaar Natarajan | a4e1224 | 2016-04-01 18:44:39 -0700 | [diff] [blame] | 135 | 	u64 beacon_tsf; | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 136 | } __attribute__ ((packed)) qcom_ie_age; | 
 | 137 | #endif | 
 | 138 |  | 
 | 139 | /** | 
 | 140 |  * enum eDFS_CAC_STATUS: CAC status | 
 | 141 |  * | 
 | 142 |  * @DFS_CAC_NEVER_DONE: CAC never done | 
 | 143 |  * @DFS_CAC_IN_PROGRESS: CAC is in progress | 
 | 144 |  * @DFS_CAC_IN_PROGRESS: CAC already done | 
 | 145 |  */ | 
 | 146 | typedef enum { | 
 | 147 | 	DFS_CAC_NEVER_DONE, | 
 | 148 | 	DFS_CAC_IN_PROGRESS, | 
 | 149 | 	DFS_CAC_ALREADY_DONE, | 
 | 150 | } eDFS_CAC_STATUS; | 
 | 151 |  | 
 | 152 | /* Vendor id to be used in vendor specific command and events | 
 | 153 |  * to user space. | 
 | 154 |  * NOTE: The authoritative place for definition of QCA_NL80211_VENDOR_ID, | 
 | 155 |  * vendor subcmd definitions prefixed with QCA_NL80211_VENDOR_SUBCMD, and | 
 | 156 |  * qca_wlan_vendor_attr is open source file src/common/qca-vendor.h in | 
 | 157 |  * git://w1.fi/srv/git/hostap.git; the values here are just a copy of that | 
 | 158 |  */ | 
 | 159 |  | 
 | 160 | #define QCA_NL80211_VENDOR_ID           0x001374 | 
 | 161 | #define MAX_REQUEST_ID			0xFFFFFFFF | 
 | 162 |  | 
 | 163 | /** | 
 | 164 |  * enum qca_nl80211_vendor_subcmds: NL 80211 vendor sub command | 
 | 165 |  * | 
 | 166 |  * @QCA_NL80211_VENDOR_SUBCMD_UNSPEC: Unspecified | 
 | 167 |  * @QCA_NL80211_VENDOR_SUBCMD_TEST: Test | 
 | 168 |  * @QCA_NL80211_VENDOR_SUBCMD_AVOID_FREQUENCY: Avoid frequency. | 
 | 169 |  *	Sub commands 2 to 9 are not used | 
 | 170 |  * @QCA_NL80211_VENDOR_SUBCMD_DFS_CAPABILITY: DFS capability | 
 | 171 |  * @QCA_NL80211_VENDOR_SUBCMD_NAN: Nan | 
 | 172 |  * @QCA_NL80211_VENDOR_SUBCMD_STATS_EXT: Ext stats | 
 | 173 |  * @QCA_NL80211_VENDOR_SUBCMD_LL_STATS_SET: Link layer stats set | 
 | 174 |  * @QCA_NL80211_VENDOR_SUBCMD_LL_STATS_GET: Link layer stats get | 
 | 175 |  * @QCA_NL80211_VENDOR_SUBCMD_LL_STATS_CLR: Link layer stats clear | 
 | 176 |  * @QCA_NL80211_VENDOR_SUBCMD_LL_STATS_RADIO_RESULTS: Link layer stats radio | 
 | 177 |  *	results | 
 | 178 |  * @QCA_NL80211_VENDOR_SUBCMD_LL_STATS_IFACE_RESULTS: Link layer stats interface | 
 | 179 |  *	results | 
 | 180 |  * @QCA_NL80211_VENDOR_SUBCMD_LL_STATS_PEERS_RESULTS: Link layer stats peer | 
 | 181 |  *	results | 
 | 182 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_START: Ext scan start | 
 | 183 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_STOP: Ext scan stop | 
 | 184 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_GET_VALID_CHANNELS: Ext scan get valid | 
 | 185 |  *	channels | 
 | 186 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_GET_CAPABILITIES: Ext scan get capability | 
 | 187 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_GET_CACHED_RESULTS: Ext scan get cached | 
 | 188 |  *	results | 
 | 189 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SCAN_RESULTS_AVAILABLE: Ext scan results | 
 | 190 |  *	available. Used when report_threshold is reached in scan cache. | 
 | 191 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_FULL_SCAN_RESULT: Ext scan full scan | 
 | 192 |  *	result. Used to report scan results when each probe rsp. is received, | 
 | 193 |  *	if report_events enabled in wifi_scan_cmd_params. | 
 | 194 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SCAN_EVENT: Ext scan event from target. | 
 | 195 |  *	Indicates progress of scanning state-machine. | 
 | 196 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_AP_FOUND: Ext scan hotlist | 
 | 197 |  *	ap found | 
 | 198 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SET_BSSID_HOTLIST: Ext scan set hotlist | 
 | 199 |  *	bssid | 
 | 200 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_BSSID_HOTLIST: Ext scan reset | 
 | 201 |  *	hotlist bssid | 
 | 202 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SIGNIFICANT_CHANGE: Ext scan significant | 
 | 203 |  *	change | 
 | 204 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SET_SIGNIFICANT_CHANGE: Ext scan set | 
 | 205 |  *	significant change | 
 | 206 |  *	ap found | 
 | 207 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_SIGNIFICANT_CHANGE: Ext scan reset | 
 | 208 |  *	significant change | 
 | 209 |  * @QCA_NL80211_VENDOR_SUBCMD_TDLS_ENABLE: Ext tdls enable | 
 | 210 |  * @QCA_NL80211_VENDOR_SUBCMD_TDLS_DISABLE: Ext tdls disable | 
 | 211 |  * @QCA_NL80211_VENDOR_SUBCMD_TDLS_GET_STATUS: Ext tdls get status | 
 | 212 |  * @QCA_NL80211_VENDOR_SUBCMD_TDLS_STATE: Ext tdls state | 
 | 213 |  * @QCA_NL80211_VENDOR_SUBCMD_GET_SUPPORTED_FEATURES: Get supported features | 
 | 214 |  * @QCA_NL80211_VENDOR_SUBCMD_SCANNING_MAC_OUI: Set scanning_mac_oui | 
 | 215 |  * @QCA_NL80211_VENDOR_SUBCMD_NO_DFS_FLAG: No DFS flag | 
 | 216 |  * @QCA_NL80211_VENDOR_SUBCMD_GET_CONCURRENCY_MATRIX: Get Concurrency Matrix | 
 | 217 |  * @QCA_NL80211_VENDOR_SUBCMD_KEY_MGMT_SET_KEY: Get the key mgmt offload keys | 
 | 218 |  * @QCA_NL80211_VENDOR_SUBCMD_KEY_MGMT_ROAM_AUTH: After roaming, send the | 
 | 219 |  * roaming and auth information. | 
 | 220 |  * @QCA_NL80211_VENDOR_SUBCMD_OCB_SET_SCHED: Set OCB schedule | 
 | 221 |  * @QCA_NL80211_VENDOR_SUBCMD_DO_ACS: ACS offload flag | 
 | 222 |  * @QCA_NL80211_VENDOR_SUBCMD_GET_FEATURES: Get the supported features by the | 
 | 223 |  * driver. | 
 | 224 |  * @QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_STARTED: Indicate that driver | 
 | 225 |  *	started CAC on DFS channel | 
 | 226 |  * @QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_FINISHED: Indicate that driver | 
 | 227 |  * 	completed the CAC check on DFS channel | 
 | 228 |  * @QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_ABORTED: Indicate that the CAC | 
 | 229 |  * 	check was aborted by the driver | 
 | 230 |  * @QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_NOP_FINISHED: Indicate that the | 
 | 231 |  * 	driver completed NOP | 
 | 232 |  * @QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_RADAR_DETECTED: Indicate that the | 
 | 233 |  * 	driver detected radar signal on the current operating channel | 
 | 234 |  * @QCA_NL80211_VENDOR_SUBCMD_GET_WIFI_INFO: get wlan driver information | 
 | 235 |  * @QCA_NL80211_VENDOR_SUBCMD_WIFI_LOGGER_START: start wifi logger | 
 | 236 |  * @QCA_NL80211_VENDOR_SUBCMD_WIFI_LOGGER_MEMORY_DUMP: memory dump request | 
 | 237 |  * @QCA_NL80211_VENDOR_SUBCMD_GET_LOGGER_FEATURE_SET: get logger feature set | 
 | 238 |  * @QCA_NL80211_VENDOR_SUBCMD_ROAM: roam | 
 | 239 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SET_SSID_HOTLIST: extscan set ssid hotlist | 
 | 240 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_SSID_HOTLIST: | 
 | 241 |  *	extscan reset ssid hotlist | 
 | 242 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_FOUND: hotlist ssid found | 
 | 243 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_LOST: hotlist ssid lost | 
 | 244 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_SET_LIST: set pno list | 
 | 245 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_SET_PASSPOINT_LIST: set passpoint list | 
 | 246 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_RESET_PASSPOINT_LIST: | 
 | 247 |  *	reset passpoint list | 
 | 248 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_NETWORK_FOUND: pno network found | 
 | 249 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_PASSPOINT_NETWORK_FOUND: | 
 | 250 |  *	passpoint network found | 
 | 251 |  * @QCA_NL80211_VENDOR_SUBCMD_SET_WIFI_CONFIGURATION: set wifi config | 
 | 252 |  * @QCA_NL80211_VENDOR_SUBCMD_GET_WIFI_CONFIGURATION: get wifi config | 
 | 253 |  * @QCA_NL80211_VENDOR_SUBCMD_GET_LOGGER_FEATURE_SET: get logging features | 
| Kanchanapally, Vidyullatha | e306281 | 2015-05-22 17:28:57 +0530 | [diff] [blame] | 254 |  * @QCA_NL80211_VENDOR_SUBCMD_LINK_PROPERTIES: get link properties | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 255 |  * @QCA_NL80211_VENDOR_SUBCMD_TRIGGER_SCAN: venodr scan command | 
 | 256 |  * @QCA_NL80211_VENDOR_SUBCMD_SCAN_DONE: vendor scan complete | 
| Peng Xu | 278d012 | 2015-09-24 16:34:17 -0700 | [diff] [blame] | 257 |  * @QCA_NL80211_VENDOR_SUBCMD_OTA_TEST: enable OTA test | 
| Ravi Joshi | deb5a8d | 2015-11-09 19:11:43 -0800 | [diff] [blame] | 258 |  * @QCA_NL80211_VENDOR_SUBCMD_GW_PARAM_CONFIG: set gateway parameters | 
| Peng Xu | 4d67c8f | 2015-10-16 16:02:26 -0700 | [diff] [blame] | 259 |  * @QCA_NL80211_VENDOR_SUBCMD_SET_TXPOWER_SCALE: set tx power by percentage | 
 | 260 |  * @QCA_NL80211_VENDOR_SUBCMD_SET_TXPOWER_SCALE_DECR_DB: reduce tx power by DB | 
| Agrawal Ashish | c9ddbab | 2016-05-25 12:04:47 +0530 | [diff] [blame] | 261 |  * @QCA_NL80211_VENDOR_SUBCMD_SET_SAP_CONFIG: SAP configuration | 
| Manikandan Mohan | 5356c2b | 2016-04-03 15:51:35 -0700 | [diff] [blame] | 262 |  * @QCA_NL80211_VENDOR_SUBCMD_TSF: TSF operations command | 
| Manikandan Mohan | 80dea79 | 2016-04-28 16:36:48 -0700 | [diff] [blame] | 263 |  * @QCA_NL80211_VENDOR_SUBCMD_WISA: WISA mode configuration | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 264 |  */ | 
 | 265 |  | 
 | 266 | enum qca_nl80211_vendor_subcmds { | 
 | 267 | 	QCA_NL80211_VENDOR_SUBCMD_UNSPEC = 0, | 
 | 268 | 	QCA_NL80211_VENDOR_SUBCMD_TEST = 1, | 
 | 269 | 	QCA_NL80211_VENDOR_SUBCMD_AVOID_FREQUENCY = 10, | 
 | 270 | 	QCA_NL80211_VENDOR_SUBCMD_DFS_CAPABILITY = 11, | 
 | 271 | 	QCA_NL80211_VENDOR_SUBCMD_NAN = 12, | 
 | 272 | 	QCA_NL80211_VENDOR_SUBCMD_STATS_EXT = 13, | 
 | 273 |  | 
 | 274 | 	QCA_NL80211_VENDOR_SUBCMD_LL_STATS_SET = 14, | 
 | 275 | 	QCA_NL80211_VENDOR_SUBCMD_LL_STATS_GET = 15, | 
 | 276 | 	QCA_NL80211_VENDOR_SUBCMD_LL_STATS_CLR = 16, | 
 | 277 | 	QCA_NL80211_VENDOR_SUBCMD_LL_STATS_RADIO_RESULTS = 17, | 
 | 278 | 	QCA_NL80211_VENDOR_SUBCMD_LL_STATS_IFACE_RESULTS = 18, | 
 | 279 | 	QCA_NL80211_VENDOR_SUBCMD_LL_STATS_PEERS_RESULTS = 19, | 
 | 280 |  | 
 | 281 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_START = 20, | 
 | 282 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_STOP = 21, | 
 | 283 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_GET_VALID_CHANNELS = 22, | 
 | 284 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_GET_CAPABILITIES = 23, | 
 | 285 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_GET_CACHED_RESULTS = 24, | 
 | 286 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SCAN_RESULTS_AVAILABLE = 25, | 
 | 287 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_FULL_SCAN_RESULT = 26, | 
 | 288 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SCAN_EVENT = 27, | 
 | 289 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_AP_FOUND = 28, | 
 | 290 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SET_BSSID_HOTLIST = 29, | 
 | 291 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_BSSID_HOTLIST = 30, | 
 | 292 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SIGNIFICANT_CHANGE = 31, | 
 | 293 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SET_SIGNIFICANT_CHANGE = 32, | 
 | 294 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_SIGNIFICANT_CHANGE = 33, | 
 | 295 |  | 
 | 296 | 	QCA_NL80211_VENDOR_SUBCMD_TDLS_ENABLE = 34, | 
 | 297 | 	QCA_NL80211_VENDOR_SUBCMD_TDLS_DISABLE = 35, | 
 | 298 | 	QCA_NL80211_VENDOR_SUBCMD_TDLS_GET_STATUS = 36, | 
 | 299 | 	QCA_NL80211_VENDOR_SUBCMD_TDLS_STATE = 37, | 
 | 300 |  | 
 | 301 | 	QCA_NL80211_VENDOR_SUBCMD_GET_SUPPORTED_FEATURES = 38, | 
 | 302 |  | 
 | 303 | 	QCA_NL80211_VENDOR_SUBCMD_SCANNING_MAC_OUI = 39, | 
 | 304 | 	QCA_NL80211_VENDOR_SUBCMD_NO_DFS_FLAG = 40, | 
 | 305 |  | 
 | 306 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_AP_LOST = 41, | 
 | 307 |  | 
 | 308 | 	/* Get Concurrency Matrix */ | 
 | 309 | 	QCA_NL80211_VENDOR_SUBCMD_GET_CONCURRENCY_MATRIX = 42, | 
 | 310 |  | 
 | 311 | 	QCA_NL80211_VENDOR_SUBCMD_KEY_MGMT_SET_KEY = 50, | 
 | 312 | 	QCA_NL80211_VENDOR_SUBCMD_KEY_MGMT_ROAM_AUTH = 51, | 
 | 313 |  | 
 | 314 | 	/* Deprecated */ | 
 | 315 | 	QCA_NL80211_VENDOR_SUBCMD_OCB_SET_SCHED = 53, | 
 | 316 |  | 
 | 317 | 	QCA_NL80211_VENDOR_SUBCMD_DO_ACS = 54, | 
 | 318 |  | 
 | 319 | 	QCA_NL80211_VENDOR_SUBCMD_GET_FEATURES = 55, | 
 | 320 |  | 
 | 321 | 	/* Off loaded DFS events */ | 
 | 322 | 	QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_STARTED = 56, | 
 | 323 | 	QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_FINISHED = 57, | 
 | 324 | 	QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_ABORTED = 58, | 
 | 325 | 	QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_NOP_FINISHED = 59, | 
 | 326 | 	QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_RADAR_DETECTED = 60, | 
 | 327 |  | 
 | 328 | 	QCA_NL80211_VENDOR_SUBCMD_GET_WIFI_INFO = 61, | 
 | 329 | 	QCA_NL80211_VENDOR_SUBCMD_WIFI_LOGGER_START = 62, | 
 | 330 | 	QCA_NL80211_VENDOR_SUBCMD_WIFI_LOGGER_MEMORY_DUMP = 63, | 
 | 331 | 	QCA_NL80211_VENDOR_SUBCMD_ROAM = 64, | 
 | 332 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SET_SSID_HOTLIST = 65, | 
 | 333 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_SSID_HOTLIST = 66, | 
 | 334 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_FOUND = 67, | 
 | 335 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_LOST = 68, | 
 | 336 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_SET_LIST = 69, | 
 | 337 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_SET_PASSPOINT_LIST = 70, | 
 | 338 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_RESET_PASSPOINT_LIST = 71, | 
 | 339 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_NETWORK_FOUND = 72, | 
 | 340 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_PASSPOINT_NETWORK_FOUND = 73, | 
 | 341 |  | 
 | 342 | 	/* Wi-Fi Configuration subcommands */ | 
 | 343 | 	QCA_NL80211_VENDOR_SUBCMD_SET_WIFI_CONFIGURATION = 74, | 
 | 344 | 	QCA_NL80211_VENDOR_SUBCMD_GET_WIFI_CONFIGURATION = 75, | 
 | 345 | 	QCA_NL80211_VENDOR_SUBCMD_GET_LOGGER_FEATURE_SET = 76, | 
 | 346 | 	QCA_NL80211_VENDOR_SUBCMD_GET_RING_DATA = 77, | 
 | 347 |  | 
 | 348 | 	QCA_NL80211_VENDOR_SUBCMD_TDLS_GET_CAPABILITIES = 78, | 
 | 349 | 	QCA_NL80211_VENDOR_SUBCMD_OFFLOADED_PACKETS = 79, | 
 | 350 | 	QCA_NL80211_VENDOR_SUBCMD_MONITOR_RSSI = 80, | 
| Deepak Dhamdhere | 5cdce84 | 2016-05-31 10:39:12 -0700 | [diff] [blame^] | 351 | 	QCA_NL80211_VENDOR_SUBCMD_NDP = 81, | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 352 |  | 
| Arun Khandavalli | 2476ef5 | 2016-04-26 20:19:43 +0530 | [diff] [blame] | 353 | 	QCA_NL80211_VENDOR_SUBCMD_PACKET_FILTER = 83, | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 354 | 	/* OCB commands */ | 
 | 355 | 	QCA_NL80211_VENDOR_SUBCMD_OCB_SET_CONFIG = 92, | 
 | 356 | 	QCA_NL80211_VENDOR_SUBCMD_OCB_SET_UTC_TIME = 93, | 
 | 357 | 	QCA_NL80211_VENDOR_SUBCMD_OCB_START_TIMING_ADVERT = 94, | 
 | 358 | 	QCA_NL80211_VENDOR_SUBCMD_OCB_STOP_TIMING_ADVERT = 95, | 
 | 359 | 	QCA_NL80211_VENDOR_SUBCMD_OCB_GET_TSF_TIMER = 96, | 
 | 360 | 	QCA_NL80211_VENDOR_SUBCMD_DCC_GET_STATS = 97, | 
 | 361 | 	QCA_NL80211_VENDOR_SUBCMD_DCC_CLEAR_STATS = 98, | 
 | 362 | 	QCA_NL80211_VENDOR_SUBCMD_DCC_UPDATE_NDL = 99, | 
 | 363 | 	QCA_NL80211_VENDOR_SUBCMD_DCC_STATS_EVENT = 100, | 
 | 364 |  | 
| Kanchanapally, Vidyullatha | e306281 | 2015-05-22 17:28:57 +0530 | [diff] [blame] | 365 | 	/* subcommand to get link properties */ | 
 | 366 | 	QCA_NL80211_VENDOR_SUBCMD_LINK_PROPERTIES = 101, | 
| Ravi Joshi | deb5a8d | 2015-11-09 19:11:43 -0800 | [diff] [blame] | 367 | 	/* LFR Subnet Detection */ | 
 | 368 | 	QCA_NL80211_VENDOR_SUBCMD_GW_PARAM_CONFIG = 102, | 
| Kanchanapally, Vidyullatha | e306281 | 2015-05-22 17:28:57 +0530 | [diff] [blame] | 369 |  | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 370 | 	/* DBS subcommands */ | 
 | 371 | 	QCA_NL80211_VENDOR_SUBCMD_GET_PREFERRED_FREQ_LIST = 103, | 
 | 372 | 	QCA_NL80211_VENDOR_SUBCMD_SET_PROBABLE_OPER_CHANNEL = 104, | 
 | 373 |  | 
 | 374 | 	/* Vendor scan commands */ | 
 | 375 | 	QCA_NL80211_VENDOR_SUBCMD_TRIGGER_SCAN = 106, | 
 | 376 | 	QCA_NL80211_VENDOR_SUBCMD_SCAN_DONE = 107, | 
| Peng Xu | 278d012 | 2015-09-24 16:34:17 -0700 | [diff] [blame] | 377 |  | 
 | 378 | 	/* OTA test subcommand */ | 
 | 379 | 	QCA_NL80211_VENDOR_SUBCMD_OTA_TEST = 108, | 
| Peng Xu | 4d67c8f | 2015-10-16 16:02:26 -0700 | [diff] [blame] | 380 | 	/* Tx power scaling subcommands */ | 
 | 381 | 	QCA_NL80211_VENDOR_SUBCMD_SET_TXPOWER_SCALE = 109, | 
 | 382 | 	/* Tx power scaling in db subcommands */ | 
 | 383 | 	QCA_NL80211_VENDOR_SUBCMD_SET_TXPOWER_SCALE_DECR_DB = 115, | 
| Agrawal Ashish | c9ddbab | 2016-05-25 12:04:47 +0530 | [diff] [blame] | 384 | 	QCA_NL80211_VENDOR_SUBCMD_SET_SAP_CONFIG  = 118, | 
| Manikandan Mohan | 5356c2b | 2016-04-03 15:51:35 -0700 | [diff] [blame] | 385 | 	QCA_NL80211_VENDOR_SUBCMD_TSF = 119, | 
| Manikandan Mohan | 80dea79 | 2016-04-28 16:36:48 -0700 | [diff] [blame] | 386 | 	QCA_NL80211_VENDOR_SUBCMD_WISA = 120, | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 387 | }; | 
 | 388 |  | 
 | 389 | /** | 
 | 390 |  * enum qca_nl80211_vendor_subcmds_index - vendor sub commands index | 
 | 391 |  * | 
 | 392 |  * @QCA_NL80211_VENDOR_SUBCMD_AVOID_FREQUENCY_INDEX: Avoid frequency | 
 | 393 |  * @QCA_NL80211_VENDOR_SUBCMD_NAN_INDEX: Nan | 
 | 394 |  * @QCA_NL80211_VENDOR_SUBCMD_STATS_EXT_INDEX: Ext stats | 
 | 395 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_START_INDEX: Ext scan start | 
 | 396 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_STOP_INDEX: Ext scan stop | 
 | 397 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_GET_CAPABILITIES_INDEX: Ext scan get | 
 | 398 |  *	capability | 
 | 399 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_GET_CACHED_RESULTS_INDEX: Ext scan get | 
 | 400 |  *	cached results | 
 | 401 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SCAN_RESULTS_AVAILABLE_INDEX: Ext scan | 
 | 402 |  *	results available | 
 | 403 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_FULL_SCAN_RESULT_INDEX: Ext scan full | 
 | 404 |  *	scan result | 
 | 405 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SCAN_EVENT_INDEX: Ext scan event | 
 | 406 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_AP_FOUND_INDEX: Ext scan hot list | 
 | 407 |  *	AP found | 
 | 408 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SET_BSSID_HOTLIST_INDEX: Ext scan set | 
 | 409 |  *	bssid hotlist | 
 | 410 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_BSSID_HOTLIST_INDEX: Ext scan reset | 
 | 411 |  *	bssid hotlist | 
 | 412 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SIGNIFICANT_CHANGE_INDEX: Ext scan | 
 | 413 |  *	significant change | 
 | 414 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SET_SIGNIFICANT_CHANGE_INDEX: Ext scan | 
 | 415 |  *	set significant change | 
 | 416 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_SIGNIFICANT_CHANGE_INDEX: Ext scan | 
 | 417 |  *	reset significant change | 
 | 418 |  * @QCA_NL80211_VENDOR_SUBCMD_LL_STATS_SET_INDEX: Set stats | 
 | 419 |  * @QCA_NL80211_VENDOR_SUBCMD_LL_STATS_GET_INDEX: Get stats | 
 | 420 |  * @QCA_NL80211_VENDOR_SUBCMD_LL_STATS_CLR_INDEX: Clear stats | 
 | 421 |  * @QCA_NL80211_VENDOR_SUBCMD_LL_RADIO_STATS_INDEX: Radio stats | 
 | 422 |  * @QCA_NL80211_VENDOR_SUBCMD_LL_IFACE_STATS_INDEX: Iface stats | 
 | 423 |  * @QCA_NL80211_VENDOR_SUBCMD_LL_PEER_INFO_STATS_INDEX: Peer info stats | 
 | 424 |  * @QCA_NL80211_VENDOR_SUBCMD_TDLS_STATE_CHANGE_INDEX: Ext tdls state change | 
 | 425 |  * @QCA_NL80211_VENDOR_SUBCMD_DO_ACS_INDEX: ACS command | 
 | 426 |  * @QCA_NL80211_VENDOR_SUBCMD_KEY_MGMT_ROAM_AUTH_INDEX: Pass Roam and Auth info | 
 | 427 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_AP_LOST_INDEX: hotlist ap lost | 
 | 428 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_NETWORK_FOUND_INDEX: | 
 | 429 |  *	pno network found index | 
 | 430 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_PASSPOINT_NETWORK_FOUND_INDEX: | 
 | 431 |  *	passpoint match found index | 
 | 432 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SET_SSID_HOTLIST_INDEX: | 
 | 433 |  *	set ssid hotlist index | 
 | 434 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_SSID_HOTLIST_INDEX: | 
 | 435 |  *	reset ssid hotlist index | 
 | 436 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_FOUND_INDEX: | 
 | 437 |  *	hotlist ssid found index | 
 | 438 |  * @QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_LOST_INDEX: | 
 | 439 |  *	hotlist ssid lost index | 
 | 440 |  * @QCA_NL80211_VENDOR_SUBCMD_DCC_STATS_EVENT_INDEX | 
 | 441 |  *	dcc stats event index | 
 | 442 |  * @QCA_NL80211_VENDOR_SUBCMD_SCAN_INDEX: vendor scan index | 
 | 443 |  * @QCA_NL80211_VENDOR_SUBCMD_SCAN_DONE_INDEX: | 
 | 444 |  *	vendor scan complete event  index | 
| Ravi Joshi | deb5a8d | 2015-11-09 19:11:43 -0800 | [diff] [blame] | 445 |  * @QCA_NL80211_VENDOR_SUBCMD_GW_PARAM_CONFIG_INDEX: | 
 | 446 |  *	update gateway parameters index | 
| Manikandan Mohan | 5356c2b | 2016-04-03 15:51:35 -0700 | [diff] [blame] | 447 |  * @QCA_NL80211_VENDOR_SUBCMD_TSF_INDEX: TSF response events index | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 448 |  */ | 
 | 449 |  | 
 | 450 | enum qca_nl80211_vendor_subcmds_index { | 
 | 451 | #if defined(FEATURE_WLAN_CH_AVOID) || defined(FEATURE_WLAN_FORCE_SAP_SCC) | 
 | 452 | 	QCA_NL80211_VENDOR_SUBCMD_AVOID_FREQUENCY_INDEX = 0, | 
 | 453 | #endif /* FEATURE_WLAN_CH_AVOID || FEATURE_WLAN_FORCE_SAP_SCC */ | 
 | 454 |  | 
 | 455 | #ifdef WLAN_FEATURE_NAN | 
 | 456 | 	QCA_NL80211_VENDOR_SUBCMD_NAN_INDEX, | 
 | 457 | #endif /* WLAN_FEATURE_NAN */ | 
 | 458 |  | 
 | 459 | #ifdef WLAN_FEATURE_STATS_EXT | 
 | 460 | 	QCA_NL80211_VENDOR_SUBCMD_STATS_EXT_INDEX, | 
 | 461 | #endif /* WLAN_FEATURE_STATS_EXT */ | 
 | 462 |  | 
 | 463 | #ifdef FEATURE_WLAN_EXTSCAN | 
 | 464 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_START_INDEX, | 
 | 465 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_STOP_INDEX, | 
 | 466 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_GET_CAPABILITIES_INDEX, | 
 | 467 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_GET_CACHED_RESULTS_INDEX, | 
 | 468 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SCAN_RESULTS_AVAILABLE_INDEX, | 
 | 469 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_FULL_SCAN_RESULT_INDEX, | 
 | 470 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SCAN_EVENT_INDEX, | 
 | 471 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_AP_FOUND_INDEX, | 
 | 472 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SET_BSSID_HOTLIST_INDEX, | 
 | 473 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_BSSID_HOTLIST_INDEX, | 
 | 474 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SIGNIFICANT_CHANGE_INDEX, | 
 | 475 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SET_SIGNIFICANT_CHANGE_INDEX, | 
 | 476 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_SIGNIFICANT_CHANGE_INDEX, | 
 | 477 | #endif /* FEATURE_WLAN_EXTSCAN */ | 
 | 478 |  | 
 | 479 | #ifdef WLAN_FEATURE_LINK_LAYER_STATS | 
 | 480 | 	QCA_NL80211_VENDOR_SUBCMD_LL_STATS_SET_INDEX, | 
 | 481 | 	QCA_NL80211_VENDOR_SUBCMD_LL_STATS_GET_INDEX, | 
 | 482 | 	QCA_NL80211_VENDOR_SUBCMD_LL_STATS_CLR_INDEX, | 
 | 483 | 	QCA_NL80211_VENDOR_SUBCMD_LL_RADIO_STATS_INDEX, | 
 | 484 | 	QCA_NL80211_VENDOR_SUBCMD_LL_IFACE_STATS_INDEX, | 
 | 485 | 	QCA_NL80211_VENDOR_SUBCMD_LL_PEER_INFO_STATS_INDEX, | 
 | 486 | #endif /* WLAN_FEATURE_LINK_LAYER_STATS */ | 
 | 487 |  | 
 | 488 | 	QCA_NL80211_VENDOR_SUBCMD_TDLS_STATE_CHANGE_INDEX, | 
 | 489 | 	QCA_NL80211_VENDOR_SUBCMD_DO_ACS_INDEX, | 
 | 490 | #ifdef WLAN_FEATURE_ROAM_OFFLOAD | 
 | 491 | 	QCA_NL80211_VENDOR_SUBCMD_KEY_MGMT_ROAM_AUTH_INDEX, | 
 | 492 | #endif | 
 | 493 | 	/* DFS */ | 
 | 494 | 	QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_STARTED_INDEX, | 
 | 495 | 	QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_FINISHED_INDEX, | 
 | 496 | 	QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_ABORTED_INDEX, | 
 | 497 | 	QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_CAC_NOP_FINISHED_INDEX, | 
 | 498 | 	QCA_NL80211_VENDOR_SUBCMD_DFS_OFFLOAD_RADAR_DETECTED_INDEX, | 
 | 499 | #ifdef FEATURE_WLAN_EXTSCAN | 
 | 500 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_AP_LOST_INDEX, | 
 | 501 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_NETWORK_FOUND_INDEX, | 
 | 502 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_PNO_PASSPOINT_NETWORK_FOUND_INDEX, | 
 | 503 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SET_SSID_HOTLIST_INDEX, | 
 | 504 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_RESET_SSID_HOTLIST_INDEX, | 
 | 505 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_FOUND_INDEX, | 
 | 506 | 	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_LOST_INDEX, | 
 | 507 | #endif /* FEATURE_WLAN_EXTSCAN */ | 
 | 508 | 	QCA_NL80211_VENDOR_SUBCMD_MONITOR_RSSI_INDEX, | 
 | 509 | #ifdef WLAN_FEATURE_MEMDUMP | 
 | 510 | 	QCA_NL80211_VENDOR_SUBCMD_WIFI_LOGGER_MEMORY_DUMP_INDEX, | 
 | 511 | #endif /* WLAN_FEATURE_MEMDUMP */ | 
 | 512 | 	/* OCB events */ | 
 | 513 | 	QCA_NL80211_VENDOR_SUBCMD_DCC_STATS_EVENT_INDEX, | 
 | 514 | 	QCA_NL80211_VENDOR_SUBCMD_SCAN_INDEX, | 
 | 515 | 	QCA_NL80211_VENDOR_SUBCMD_SCAN_DONE_INDEX, | 
| Ravi Joshi | deb5a8d | 2015-11-09 19:11:43 -0800 | [diff] [blame] | 516 | 	QCA_NL80211_VENDOR_SUBCMD_GW_PARAM_CONFIG_INDEX, | 
| Manikandan Mohan | 5356c2b | 2016-04-03 15:51:35 -0700 | [diff] [blame] | 517 | #ifdef WLAN_FEATURE_TSF | 
 | 518 | 	QCA_NL80211_VENDOR_SUBCMD_TSF_INDEX, | 
 | 519 | #endif | 
| Deepak Dhamdhere | 5cdce84 | 2016-05-31 10:39:12 -0700 | [diff] [blame^] | 520 | #ifdef WLAN_FEATURE_NAN_DATAPATH | 
 | 521 | 	QCA_NL80211_VENDOR_SUBCMD_NDP_INDEX, | 
 | 522 | #endif /* WLAN_FEATURE_NAN_DATAPATH */ | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 523 | }; | 
 | 524 |  | 
 | 525 | /** | 
 | 526 |  * enum qca_wlan_vendor_attr_tdls_enable - TDLS enable attribute | 
 | 527 |  * | 
 | 528 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_ENABLE_INVALID: Invalid initial value | 
 | 529 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_ENABLE_MAC_ADDR: An array of 6 x Unsigned 8-bit | 
 | 530 |  *	value | 
 | 531 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_ENABLE_CHANNEL: Signed 32-bit value, but lets | 
 | 532 |  *	keep as unsigned for now | 
 | 533 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_ENABLE_GLOBAL_OPERATING_CLASS: operating class | 
 | 534 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_ENABLE_MAX_LATENCY_MS: Enable max latency in ms | 
 | 535 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_ENABLE_MIN_BANDWIDTH_KBPS: Enable min bandwidth | 
 | 536 |  *	in KBPS | 
 | 537 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_ENABLE_AFTER_LAST: After last | 
 | 538 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_ENABLE_MAX: Max value | 
 | 539 |  */ | 
 | 540 | enum qca_wlan_vendor_attr_tdls_enable { | 
 | 541 | 	QCA_WLAN_VENDOR_ATTR_TDLS_ENABLE_INVALID = 0, | 
 | 542 | 	QCA_WLAN_VENDOR_ATTR_TDLS_ENABLE_MAC_ADDR, | 
 | 543 | 	QCA_WLAN_VENDOR_ATTR_TDLS_ENABLE_CHANNEL, | 
 | 544 | 	QCA_WLAN_VENDOR_ATTR_TDLS_ENABLE_GLOBAL_OPERATING_CLASS, | 
 | 545 | 	QCA_WLAN_VENDOR_ATTR_TDLS_ENABLE_MAX_LATENCY_MS, | 
 | 546 | 	QCA_WLAN_VENDOR_ATTR_TDLS_ENABLE_MIN_BANDWIDTH_KBPS, | 
 | 547 | 	QCA_WLAN_VENDOR_ATTR_TDLS_ENABLE_AFTER_LAST, | 
 | 548 | 	QCA_WLAN_VENDOR_ATTR_TDLS_ENABLE_MAX = | 
 | 549 | 		QCA_WLAN_VENDOR_ATTR_TDLS_ENABLE_AFTER_LAST - 1, | 
 | 550 | }; | 
 | 551 |  | 
 | 552 | /** | 
 | 553 |  * enum qca_wlan_vendor_attr_tdls_disable: tdls disable attribute | 
 | 554 |  * | 
 | 555 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_DISABLE_INVALID: Invalid initial value | 
 | 556 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_DISABLE_MAC_ADDR: An array of 6 x Unsigned | 
 | 557 |  *	8-bit value | 
 | 558 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_DISABLE_AFTER_LAST: After last | 
 | 559 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_DISABLE_MAX: Max value | 
 | 560 |  */ | 
 | 561 | enum qca_wlan_vendor_attr_tdls_disable { | 
 | 562 | 	QCA_WLAN_VENDOR_ATTR_TDLS_DISABLE_INVALID = 0, | 
 | 563 | 	QCA_WLAN_VENDOR_ATTR_TDLS_DISABLE_MAC_ADDR, | 
 | 564 | 	QCA_WLAN_VENDOR_ATTR_TDLS_DISABLE_AFTER_LAST, | 
 | 565 | 	QCA_WLAN_VENDOR_ATTR_TDLS_DISABLE_MAX = | 
 | 566 | 		QCA_WLAN_VENDOR_ATTR_TDLS_DISABLE_AFTER_LAST - 1, | 
 | 567 | }; | 
 | 568 |  | 
 | 569 | /** | 
 | 570 |  * enum qca_wlan_vendor_attr_tdls_get_status - tdls get status attribute | 
 | 571 |  * | 
 | 572 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_INVALID: Invalid initial value | 
 | 573 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_MAC_ADDR: An array of 6 x Unsigned | 
 | 574 |  *	8-bit value | 
 | 575 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_STATE: get status state, | 
 | 576 |  *	unsigned 32-bit value | 
 | 577 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_REASON: get status reason | 
 | 578 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_CHANNEL: get status channel, | 
 | 579 |  *	unsigned 32-bit value | 
 | 580 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_GLOBAL_OPERATING_CLASS: get operating | 
 | 581 |  *	class, unsigned 32-bit value | 
 | 582 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_AFTER_LAST: After last | 
 | 583 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_MAX: Max value | 
 | 584 |  */ | 
 | 585 | enum qca_wlan_vendor_attr_tdls_get_status { | 
 | 586 | 	QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_INVALID = 0, | 
 | 587 | 	QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_MAC_ADDR, | 
 | 588 | 	QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_STATE, | 
 | 589 | 	QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_REASON, | 
 | 590 | 	QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_CHANNEL, | 
 | 591 | 	QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_GLOBAL_OPERATING_CLASS, | 
 | 592 | 	QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_AFTER_LAST, | 
 | 593 | 	QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_MAX = | 
 | 594 | 		QCA_WLAN_VENDOR_ATTR_TDLS_GET_STATUS_AFTER_LAST - 1, | 
 | 595 | }; | 
 | 596 |  | 
 | 597 | /** | 
 | 598 |  * enum qca_wlan_vendor_attr_tdls_state - tdls state attribute | 
 | 599 |  * | 
 | 600 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_STATE_INVALID: Initial invalid value | 
 | 601 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_STATE_MAC_ADDR: An array of 6 x Unsigned | 
 | 602 |  *	8-bit value | 
 | 603 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_NEW_STATE: TDLS new state, | 
 | 604 |  *	unsigned 32-bit value | 
 | 605 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_STATE_REASON: TDLS state reason | 
 | 606 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_STATE_CHANNEL: TDLS state channel, | 
 | 607 |  *	unsigned 32-bit value | 
 | 608 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_STATE_GLOBAL_OPERATING_CLASS: TDLS state | 
 | 609 |  *	operating class, unsigned 32-bit value | 
 | 610 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_STATE_AFTER_LAST: After last | 
 | 611 |  * @QCA_WLAN_VENDOR_ATTR_TDLS_STATE_MAX: Max value | 
 | 612 |  */ | 
 | 613 | enum qca_wlan_vendor_attr_tdls_state { | 
 | 614 | 	QCA_WLAN_VENDOR_ATTR_TDLS_STATE_INVALID = 0, | 
 | 615 | 	QCA_WLAN_VENDOR_ATTR_TDLS_STATE_MAC_ADDR, | 
 | 616 | 	QCA_WLAN_VENDOR_ATTR_TDLS_NEW_STATE, | 
 | 617 | 	QCA_WLAN_VENDOR_ATTR_TDLS_STATE_REASON, | 
 | 618 | 	QCA_WLAN_VENDOR_ATTR_TDLS_STATE_CHANNEL, | 
 | 619 | 	QCA_WLAN_VENDOR_ATTR_TDLS_STATE_GLOBAL_OPERATING_CLASS, | 
 | 620 | 	QCA_WLAN_VENDOR_ATTR_TDLS_STATE_AFTER_LAST, | 
 | 621 | 	QCA_WLAN_VENDOR_ATTR_TDLS_STATE_MAX = | 
 | 622 | 		QCA_WLAN_VENDOR_ATTR_TDLS_STATE_AFTER_LAST - 1, | 
 | 623 | }; | 
 | 624 |  | 
 | 625 | /* enum's to provide TDLS capabilites */ | 
 | 626 | enum qca_wlan_vendor_attr_get_tdls_capabilities { | 
 | 627 | 	QCA_WLAN_VENDOR_ATTR_TDLS_GET_CAPS_INVALID = 0, | 
 | 628 | 	QCA_WLAN_VENDOR_ATTR_TDLS_GET_CAPS_MAX_CONC_SESSIONS = 1, | 
 | 629 | 	QCA_WLAN_VENDOR_ATTR_TDLS_GET_CAPS_FEATURES_SUPPORTED = 2, | 
 | 630 |  | 
 | 631 | 	/* keep last */ | 
 | 632 | 	QCA_WLAN_VENDOR_ATTR_TDLS_GET_CAPS_AFTER_LAST, | 
 | 633 | 	QCA_WLAN_VENDOR_ATTR_TDLS_GET_CAPS_MAX = | 
| Peng Xu | 62c8c43 | 2016-05-09 15:23:02 -0700 | [diff] [blame] | 634 | 		QCA_WLAN_VENDOR_ATTR_TDLS_GET_CAPS_AFTER_LAST - 1, | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 635 | }; | 
 | 636 |  | 
 | 637 | /** | 
 | 638 |  * enum qca_wlan_vendor_attr - wlan vendor attribute | 
 | 639 |  * | 
 | 640 |  * @QCA_WLAN_VENDOR_ATTR_INVALID: Initial invalid value | 
 | 641 |  * @QCA_WLAN_VENDOR_ATTR_DFS: DFS attribute which is used by | 
 | 642 |  *	QCA_NL80211_VENDOR_SUBCMD_DFS_CAPABILITY | 
 | 643 |  * @QCA_WLAN_VENDOR_ATTR_NAN: NAN attribute which is used by | 
 | 644 |  *	QCA_NL80211_VENDOR_SUBCMD_NAN | 
 | 645 |  * @QCA_WLAN_VENDOR_ATTR_STATS_EXT: Ext stats attribute which is used by | 
 | 646 |  *	QCA_NL80211_VENDOR_SUBCMD_STATS_EXT | 
 | 647 |  * @QCA_WLAN_VENDOR_ATTR_IFINDEX: After IFINDEX | 
| Kanchanapally, Vidyullatha | e306281 | 2015-05-22 17:28:57 +0530 | [diff] [blame] | 648 |  * @QCA_WLAN_VENDOR_ATTR_MAC_ADDR: MAC Address attribute which is used by | 
 | 649 |  *	QCA_NL80211_VENDOR_SUBCMD_LINK_PROPERTIES | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 650 |  * @QCA_WLAN_VENDOR_ATTR_FEATURE_FLAGS: Supported Features | 
 | 651 |  * @QCA_WLAN_VENDOR_ATTR_AFTER_LAST: After last | 
 | 652 |  * @QCA_WLAN_VENDOR_ATTR_MAX: Max value | 
 | 653 |  */ | 
 | 654 | enum qca_wlan_vendor_attr { | 
 | 655 | 	QCA_WLAN_VENDOR_ATTR_INVALID = 0, | 
 | 656 | 	QCA_WLAN_VENDOR_ATTR_DFS = 1, | 
 | 657 | 	QCA_WLAN_VENDOR_ATTR_NAN = 2, | 
 | 658 | 	QCA_WLAN_VENDOR_ATTR_STATS_EXT = 3, | 
 | 659 | 	QCA_WLAN_VENDOR_ATTR_IFINDEX = 4, | 
| Kanchanapally, Vidyullatha | e306281 | 2015-05-22 17:28:57 +0530 | [diff] [blame] | 660 | 	QCA_WLAN_VENDOR_ATTR_MAC_ADDR = 6, | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 661 | 	QCA_WLAN_VENDOR_ATTR_FEATURE_FLAGS = 7, | 
 | 662 | 	QCA_WLAN_VENDOR_ATTR_CONCURRENCY_CAPA = 9, | 
 | 663 | 	QCA_WLAN_VENDOR_ATTR_MAX_CONCURRENT_CHANNELS_2_4_BAND = 10, | 
 | 664 | 	QCA_WLAN_VENDOR_ATTR_MAX_CONCURRENT_CHANNELS_5_0_BAND = 11, | 
 | 665 | 	/* keep last */ | 
 | 666 | 	QCA_WLAN_VENDOR_ATTR_AFTER_LAST, | 
| Peng Xu | 62c8c43 | 2016-05-09 15:23:02 -0700 | [diff] [blame] | 667 | 		QCA_WLAN_VENDOR_ATTR_MAX = QCA_WLAN_VENDOR_ATTR_AFTER_LAST - 1 | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 668 | }; | 
 | 669 |  | 
 | 670 | #ifdef FEATURE_WLAN_EXTSCAN | 
 | 671 | /** | 
 | 672 |  * enum qca_wlan_vendor_attr_extscan_config_params - ext scan config params | 
 | 673 |  * | 
 | 674 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SUBCMD_CONFIG_PARAM_INVALID: Invalid initial | 
 | 675 |  *								value | 
 | 676 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SUBCMD_CONFIG_PARAM_REQUEST_ID: | 
 | 677 |  *	Unsigned 32-bit value; Middleware provides it to the driver. Middle ware | 
 | 678 |  *	either gets it from caller, e.g., framework, or generates one if | 
 | 679 |  *	framework doesn't provide it. | 
 | 680 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_GET_VALID_CHANNELS_CONFIG_PARAM_WIFI_BAND: | 
 | 681 |  *	NL attributes for data used by | 
 | 682 |  *	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_GET_VALID_CHANNELS sub command. | 
 | 683 |  *	It is unsigned 32-bit value. | 
 | 684 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_GET_VALID_CHANNELS_CONFIG_PARAM_MAX_CHANNELS: | 
 | 685 |  *	Unsigned 32-bit value | 
 | 686 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_CHANNEL_SPEC_CHANNEL: | 
 | 687 |  *	NL attributes for input params used by | 
 | 688 |  *	QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_START sub command. Unsigned 32-bit | 
 | 689 |  *	value; channel frequency | 
 | 690 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_CHANNEL_SPEC_DWELL_TIME: Unsigned 32-bit value; | 
 | 691 |  *	dwell time in ms | 
 | 692 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_CHANNEL_SPEC_PASSIVE: Unsigned 8-bit value: | 
 | 693 |  *	0: active; 1: passive; N/A for DFS | 
 | 694 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_CHANNEL_SPEC_CLASS: Unsigned 8-bit value | 
 | 695 |  *	channel class | 
 | 696 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_INDEX: Unsigned 8-bit value | 
 | 697 |  *	bucket index, 0 based | 
 | 698 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_BAND: Unsigned 8-bit value; band | 
 | 699 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_PERIOD: Unsigned 32-bit value; | 
 | 700 |  *	desired period, in ms | 
 | 701 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_REPORT_EVENTS: Unsigned 8-bit | 
 | 702 |  *	value; report events semantics | 
 | 703 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_NUM_CHANNEL_SPECS: Unsigned 32-bit | 
 | 704 |  *	value. Followed by a nested array of EXTSCAN_CHANNEL_SPEC_* attributes. | 
 | 705 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_CHANNEL_SPEC: | 
 | 706 |  *	Array of QCA_WLAN_VENDOR_ATTR_EXTSCAN_CHANNEL_SPEC_* attributes. | 
 | 707 |  *	Array size: QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_NUM_CHANNEL_SPECS | 
 | 708 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SCAN_CMD_PARAMS_BASE_PERIOD: Unsigned 32-bit | 
 | 709 |  *	value; base timer period in ms | 
 | 710 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SCAN_CMD_PARAMS_MAX_AP_PER_SCAN: Unsigned | 
 | 711 |  *	32-bit value; number of APs to store in each scan in the | 
 | 712 |  *	BSSID/RSSI history buffer (keep the highest RSSI APs) | 
 | 713 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SCAN_CMD_PARAMS_REPORT_THRESHOLD_PERCENT: | 
 | 714 |  *	Unsigned 8-bit value; in %, when scan buffer is this much full, | 
 | 715 |  *	wake up APPS. | 
 | 716 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SCAN_CMD_PARAMS_NUM_BUCKETS: Unsigned 8-bit | 
 | 717 |  *	value; number of scan bucket specs; followed by a nested array | 
 | 718 |  *	of_EXTSCAN_BUCKET_SPEC_* attributes and values. The size of the array | 
 | 719 |  *	is determined by NUM_BUCKETS | 
 | 720 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC: Array of | 
 | 721 |  *	QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_* attributes. Array size: | 
 | 722 |  *	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SCAN_CMD_PARAMS_NUM_BUCKETS | 
 | 723 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_GET_CACHED_SCAN_RESULTS_CONFIG_PARAM_FLUSH: | 
 | 724 |  *	Unsigned 8-bit value | 
 | 725 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_GET_CACHED_SCAN_RESULTS_CONFIG_PARAM_MAX: | 
 | 726 |  *	Unsigned 32-bit value; maximum number of results to be returned | 
 | 727 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_AP_THRESHOLD_PARAM_BSSID: An array of | 
 | 728 |  *	6 x Unsigned 8-bit value | 
 | 729 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_AP_THRESHOLD_PARAM_RSSI_LOW: Signed 32-bit | 
 | 730 |  *	value | 
 | 731 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_AP_THRESHOLD_PARAM_RSSI_HIGH: Signed 32-bit | 
 | 732 |  *	value | 
 | 733 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_AP_THRESHOLD_PARAM_CHANNEL: Signed 32-bit | 
 | 734 |  *	value | 
 | 735 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_BSSID_HOTLIST_PARAMS_NUM_AP: Number of hotlist | 
 | 736 |  *	APs as unsigned 32-bit value, followed by a nested array of | 
 | 737 |  *	AP_THRESHOLD_PARAM attributes and values. The size of the array is | 
 | 738 |  *	determined by NUM_AP. | 
 | 739 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_AP_THRESHOLD_PARAM: Array of | 
 | 740 |  *	QCA_WLAN_VENDOR_ATTR_EXTSCAN_AP_THRESHOLD_PARAM_* attributes. | 
 | 741 |  *	Array size: QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_NUM_CHANNEL_SPECS | 
 | 742 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SIGNIFICANT_CHANGE_PARAMS_RSSI_SAMPLE_SIZE: | 
 | 743 |  *	Unsigned 32bit value; number of samples for averaging RSSI | 
 | 744 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SIGNIFICANT_CHANGE_PARAMS_LOST_AP_SAMPLE_SIZE: | 
 | 745 |  *	Unsigned 32bit value; number of samples to confirm AP loss | 
 | 746 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SIGNIFICANT_CHANGE_PARAMS_MIN_BREACHING: | 
 | 747 |  *	Unsigned 32bit value; number of APs breaching threshold. | 
 | 748 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SIGNIFICANT_CHANGE_PARAMS_NUM_AP: | 
 | 749 |  *	Unsigned 32bit value; number of APs. Followed by an array of | 
 | 750 |  *	AP_THRESHOLD_PARAM attributes. Size of the array is NUM_AP. | 
 | 751 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_BSSID_HOTLIST_PARAMS_LOST_AP_SAMPLE_SIZE: | 
 | 752 |  *	Unsigned 32bit value; number of samples to confirm AP loss. | 
 | 753 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_MAX_PERIOD: | 
 | 754 |  *	Unsigned 32-bit value. If max_period is non zero or different than | 
 | 755 |  *	period, then this bucket is an exponential backoff bucket. | 
 | 756 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_EXPONENT: | 
 | 757 |  *	Unsigned 32-bit value. For exponential back off bucket, | 
 | 758 |  *	number of scans performed at a given period and until the | 
 | 759 |  *	exponent is applied. | 
 | 760 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_STEP_COUNT: | 
 | 761 |  *	Unsigned 8-bit value; in number of scans, wake up AP after these | 
 | 762 |  *	many scans. | 
 | 763 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SCAN_CMD_PARAMS_REPORT_THRESHOLD_NUM_SCANS: | 
 | 764 |  *	Unsigned 8-bit value; in number of scans, wake up AP after these | 
 | 765 |  *	many scans. | 
 | 766 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_HOTLIST_PARAMS_LOST_SSID_SAMPLE_SIZE: | 
 | 767 |  *	Unsigned 32bit value; number of samples to confirm SSID loss | 
 | 768 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_HOTLIST_PARAMS_NUM_SSID: | 
 | 769 |  *	Number of hotlist SSIDs as unsigned 32-bit value, followed by a nested | 
 | 770 |  *	array of SSID_THRESHOLD_PARAM_* attributes and values. The size of the | 
 | 771 |  *	array is determined by NUM_SSID | 
 | 772 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_THRESHOLD_PARAM: | 
 | 773 |  *	Array of QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_THRESHOLD_PARAM_* attributes | 
 | 774 |  *	Array size: QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_HOTLIST_PARAMS_NUM_SSID | 
 | 775 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_THRESHOLD_PARAM_SSID: | 
 | 776 |  *	An array of 33 x Unsigned 8-bit value; NULL terminated SSID | 
 | 777 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_THRESHOLD_PARAM_BAND: | 
 | 778 |  *	 Signed 32-bit value; band | 
 | 779 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_THRESHOLD_PARAM_RSSI_LOW: | 
 | 780 |  *	Signed 32-bit value; low rssi | 
 | 781 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_THRESHOLD_PARAM_RSSI_HIGH: | 
 | 782 |  *	Signed 32-bit value; high rssi | 
 | 783 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_CONFIGURATION_FLAGS: | 
 | 784 |  *	Unsigned 32-bit value; a bitmask w/additional extscan config flag. | 
 | 785 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SUBCMD_CONFIG_PARAM_AFTER_LAST: After last | 
 | 786 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_SUBCMD_CONFIG_PARAM_MAX: Max value | 
 | 787 |  */ | 
 | 788 | enum qca_wlan_vendor_attr_extscan_config_params { | 
 | 789 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SUBCMD_CONFIG_PARAM_INVALID = 0, | 
 | 790 |  | 
 | 791 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SUBCMD_CONFIG_PARAM_REQUEST_ID, | 
 | 792 |  | 
 | 793 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_GET_VALID_CHANNELS_CONFIG_PARAM_WIFI_BAND, | 
 | 794 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_GET_VALID_CHANNELS_CONFIG_PARAM_MAX_CHANNELS, | 
 | 795 |  | 
 | 796 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_CHANNEL_SPEC_CHANNEL, | 
 | 797 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_CHANNEL_SPEC_DWELL_TIME, | 
 | 798 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_CHANNEL_SPEC_PASSIVE, | 
 | 799 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_CHANNEL_SPEC_CLASS, | 
 | 800 |  | 
 | 801 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_INDEX, | 
 | 802 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_BAND, | 
 | 803 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_PERIOD, | 
 | 804 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_REPORT_EVENTS, | 
 | 805 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_NUM_CHANNEL_SPECS, | 
 | 806 |  | 
 | 807 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_CHANNEL_SPEC, | 
 | 808 |  | 
 | 809 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SCAN_CMD_PARAMS_BASE_PERIOD, | 
 | 810 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SCAN_CMD_PARAMS_MAX_AP_PER_SCAN, | 
 | 811 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SCAN_CMD_PARAMS_REPORT_THRESHOLD_PERCENT, | 
 | 812 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SCAN_CMD_PARAMS_NUM_BUCKETS, | 
 | 813 |  | 
 | 814 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC, | 
 | 815 |  | 
 | 816 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_GET_CACHED_SCAN_RESULTS_CONFIG_PARAM_FLUSH, | 
 | 817 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_GET_CACHED_SCAN_RESULTS_CONFIG_PARAM_MAX, | 
 | 818 |  | 
 | 819 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_AP_THRESHOLD_PARAM_BSSID, | 
 | 820 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_AP_THRESHOLD_PARAM_RSSI_LOW, | 
 | 821 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_AP_THRESHOLD_PARAM_RSSI_HIGH, | 
 | 822 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_AP_THRESHOLD_PARAM_CHANNEL, | 
 | 823 |  | 
 | 824 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_BSSID_HOTLIST_PARAMS_NUM_AP, | 
 | 825 |  | 
 | 826 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_AP_THRESHOLD_PARAM, | 
 | 827 |  | 
 | 828 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SIGNIFICANT_CHANGE_PARAMS_RSSI_SAMPLE_SIZE, | 
 | 829 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SIGNIFICANT_CHANGE_PARAMS_LOST_AP_SAMPLE_SIZE, | 
 | 830 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SIGNIFICANT_CHANGE_PARAMS_MIN_BREACHING, | 
 | 831 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SIGNIFICANT_CHANGE_PARAMS_NUM_AP, | 
 | 832 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_BSSID_HOTLIST_PARAMS_LOST_AP_SAMPLE_SIZE, | 
 | 833 |  | 
 | 834 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_MAX_PERIOD, | 
 | 835 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_EXPONENT, | 
 | 836 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_BUCKET_SPEC_STEP_COUNT, | 
 | 837 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SCAN_CMD_PARAMS_REPORT_THRESHOLD_NUM_SCANS, | 
 | 838 |  | 
 | 839 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_HOTLIST_PARAMS_LOST_SSID_SAMPLE_SIZE, | 
 | 840 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_HOTLIST_PARAMS_NUM_SSID, | 
 | 841 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_THRESHOLD_PARAM, | 
 | 842 |  | 
 | 843 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_THRESHOLD_PARAM_SSID, | 
 | 844 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_THRESHOLD_PARAM_BAND, | 
 | 845 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_THRESHOLD_PARAM_RSSI_LOW, | 
 | 846 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SSID_THRESHOLD_PARAM_RSSI_HIGH, | 
 | 847 |  | 
 | 848 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_CONFIGURATION_FLAGS, | 
 | 849 |  | 
 | 850 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SUBCMD_CONFIG_PARAM_AFTER_LAST, | 
 | 851 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_SUBCMD_CONFIG_PARAM_MAX = | 
 | 852 | 		QCA_WLAN_VENDOR_ATTR_EXTSCAN_SUBCMD_CONFIG_PARAM_AFTER_LAST - 1, | 
 | 853 | }; | 
 | 854 |  | 
 | 855 | /** | 
 | 856 |  * enum qca_wlan_vendor_attr_extscan_results - vendor attribute ext scan results | 
 | 857 |  * | 
 | 858 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_INVALID: Invalid initial value | 
 | 859 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_REQUEST_ID: Unsigned 32-bit value | 
 | 860 |  *	must match the request Id supplied by Wi-Fi HAL in the corresponding | 
 | 861 |  *	subcmd NL msg | 
 | 862 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_STATUS: Unsigned 32-bit value used to | 
 | 863 |  *	indicate the status response from firmware/driver for the vendor | 
 | 864 |  *	sub-command | 
 | 865 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_NUM_CHANNELS: EXTSCAN Valid Channels | 
 | 866 |  *	attributes. Unsigned 32bit value followed by a nested array of CHANNELS | 
 | 867 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CHANNELS: An array of NUM_CHANNELS x | 
 | 868 |  *	Unsigned 32bit value integers representing channel numbers. | 
 | 869 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_SCAN_CACHE_SIZE: | 
 | 870 |  *	Unsigned 32bit value | 
 | 871 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_SCAN_BUCKETS: | 
 | 872 |  *	Unsigned 32bit value | 
 | 873 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_AP_CACHE_PER_SCAN: | 
 | 874 |  *	Unsigned 32bit value | 
 | 875 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_RSSI_SAMPLE_SIZE: | 
 | 876 |  *	Unsigned 32bit value | 
 | 877 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_SCAN_REPORTING_THRESHOLD: | 
 | 878 |  *	Unsigned 32bit value | 
 | 879 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_HOTLIST_APS: | 
 | 880 |  *	Unsigned 32bit value | 
 | 881 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_SIGNIFICANT_WIFI_CHANGE_APS: | 
 | 882 |  *	Unsigned 32bit value | 
 | 883 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_BSSID_HISTORY_ENTRIES: | 
 | 884 |  *	Unsigned 32bit value | 
 | 885 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_NUM_RESULTS_AVAILABLE: Unsigned 32-bit | 
 | 886 |  *	value | 
 | 887 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_LIST: An array of | 
 | 888 |  *	NUM_RESULTS_AVAILABLE x QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_* | 
 | 889 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_TIME_STAMP: Unsigned | 
 | 890 |  *	64-bit value age of sample at the time of retrieval | 
 | 891 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_SSID: 33 x unsigned 8-bit | 
 | 892 |  *	value; NULL terminated SSID | 
 | 893 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_BSSID: An array of 6 x | 
 | 894 |  *	Unsigned 8-bit value | 
 | 895 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_CHANNEL: Unsigned 32-bit | 
 | 896 |  *	value; channel frequency in MHz | 
 | 897 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_RSSI: Signed 32-bit value | 
 | 898 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_RTT: Unsigned 32-bit value | 
 | 899 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_RTT_SD: Unsigned 32-bit | 
 | 900 |  *	value | 
 | 901 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_BEACON_PERIOD: | 
 | 902 |  *	Unsigned 16-bit value | 
 | 903 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_CAPABILITY: | 
 | 904 |  *	Unsigned 16-bit value | 
 | 905 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_IE_LENGTH: | 
 | 906 |  *	Unsigned 32-bit value; size of the IE DATA blob | 
 | 907 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_IE_DATA: | 
 | 908 |  *	An array of IE_LENGTH x Unsigned 8-bit value; blob of all the | 
 | 909 |  *	information elements found in the beacon; this data should be | 
 | 910 |  *	a packed list of wifi_information_element objects, one after | 
 | 911 |  *	the other. | 
 | 912 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_MORE_DATA: | 
 | 913 |  *	Unsigned 8-bit value; set by driver to indicate more scan results are | 
 | 914 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_EVENT_TYPE: Unsigned 8-bit value | 
 | 915 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_EVENT_STATUS: Unsigned 32-bit | 
 | 916 |  *	value | 
 | 917 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SIGNIFICANT_CHANGE_RESULT_BSSID: | 
 | 918 |  *	An array of 6 x Unsigned 8-bit value | 
 | 919 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SIGNIFICANT_CHANGE_RESULT_CHANNEL: | 
 | 920 |  *	Unsigned 32-bit value | 
 | 921 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SIGNIFICANT_CHANGE_RESULT_NUM_RSSI: | 
 | 922 |  *	Unsigned 32-bit value | 
 | 923 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SIGNIFICANT_CHANGE_RESULT_RSSI_LIST: | 
 | 924 |  *	A nested array of signed 32-bit RSSI values. Size of the array is | 
 | 925 |  *	determined by (NUM_RSSI of SIGNIFICANT_CHANGE_RESULT_NUM_RSSI. | 
 | 926 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_CACHED_RESULTS_LIST: | 
 | 927 |  *	An array of NUM_RESULTS_AVAILABLE x | 
 | 928 |  *	QCA_NL80211_VENDOR_ATTR_EXTSCAN_CACHED_RESULTS_* | 
 | 929 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_CACHED_RESULTS_SCAN_ID: | 
 | 930 |  *	Unsigned 32-bit value; a unique identifier for the scan unit | 
 | 931 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_CACHED_RESULTS_FLAGS: | 
 | 932 |  *	Unsigned 32-bit value; a bitmask w/additional information about scan | 
 | 933 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_PNO_RESULTS_PASSPOINT_NETWORK_FOUND_NUM_MATCHES: | 
 | 934 |  *	 Unsigned 32-bit value; number of found network matches | 
 | 935 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_PNO_RESULTS_PASSPOINT_MATCH_RESULT_LIST: | 
 | 936 |  *	A nested array of | 
 | 937 |  *	QCA_WLAN_VENDOR_ATTR_EXTSCAN_PNO_RESULTS_PASSPOINT_MATCH_* | 
 | 938 |  *	attributes. Array size = | 
 | 939 |  *	*_ATTR_EXTSCAN_PNO_RESULTS_PASSPOINT_NETWORK_FOUND_NUM_MATCHES. | 
 | 940 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_PNO_RESULTS_PASSPOINT_MATCH_ID: | 
 | 941 |  *	Unsigned 32-bit value; network block id for the matched network | 
 | 942 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_PNO_RESULTS_PASSPOINT_MATCH_ANQP_LEN: | 
 | 943 |  *	Unsigned 32-bit value; ANQP length | 
 | 944 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_PNO_RESULTS_PASSPOINT_MATCH_ANQP: | 
 | 945 |  *	An array size of PASSPOINT_MATCH_ANQP_LEN of unsigned 8-bit values; | 
 | 946 |  *	ANQP data in the information_element format. | 
 | 947 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_HOTLIST_SSIDS: | 
 | 948 |  *	Unsigned 32bit value; Max hotlist ssids. | 
 | 949 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_NUM_EPNO_NETS: | 
 | 950 |  *	Unsigned 32bit value; Max number of epno networks | 
 | 951 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_NUM_EPNO_NETS_BY_SSID: | 
 | 952 |  *	Unsigned 32bit value; Max number of epno networks by ssid | 
 | 953 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_NUM_WHITELISTED_SSID: | 
 | 954 |  *	Unsigned 32bit value; Max number of whitelisted ssids | 
 | 955 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_AFTER_LAST: After last | 
 | 956 |  * @QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_MAX: Max value | 
 | 957 |  */ | 
 | 958 | enum qca_wlan_vendor_attr_extscan_results { | 
 | 959 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_INVALID = 0, | 
 | 960 |  | 
 | 961 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_REQUEST_ID, | 
 | 962 |  | 
 | 963 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_STATUS, | 
 | 964 |  | 
 | 965 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_NUM_CHANNELS, | 
 | 966 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CHANNELS, | 
 | 967 |  | 
 | 968 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_SCAN_CACHE_SIZE, | 
 | 969 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_SCAN_BUCKETS, | 
 | 970 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_AP_CACHE_PER_SCAN, | 
 | 971 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_RSSI_SAMPLE_SIZE, | 
 | 972 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_SCAN_REPORTING_THRESHOLD, | 
 | 973 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_HOTLIST_BSSIDS, | 
 | 974 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_SIGNIFICANT_WIFI_CHANGE_APS, | 
 | 975 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_BSSID_HISTORY_ENTRIES, | 
 | 976 |  | 
 | 977 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_NUM_RESULTS_AVAILABLE, | 
 | 978 |  | 
 | 979 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_LIST, | 
 | 980 |  | 
 | 981 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_TIME_STAMP, | 
 | 982 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_SSID, | 
 | 983 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_BSSID, | 
 | 984 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_CHANNEL, | 
 | 985 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_RSSI, | 
 | 986 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_RTT, | 
 | 987 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_RTT_SD, | 
 | 988 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_BEACON_PERIOD, | 
 | 989 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_CAPABILITY, | 
 | 990 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_IE_LENGTH, | 
 | 991 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_IE_DATA, | 
 | 992 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_RESULT_MORE_DATA, | 
 | 993 |  | 
 | 994 | 	/* Use attr QCA_WLAN_VENDOR_ATTR_EXTSCAN_NUM_RESULTS_AVAILABLE | 
 | 995 | 	 * to indicate number of wifi scan results/bssids retrieved by the scan. | 
 | 996 | 	 * Also, use QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_LIST to indicate the | 
 | 997 | 	 * list of wifi scan results returned for each cached result block. | 
 | 998 | 	 */ | 
 | 999 |  | 
 | 1000 | 	/* EXTSCAN attributes for | 
 | 1001 | 	 * QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SCAN_EVENT sub-command. | 
 | 1002 | 	 */ | 
 | 1003 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_EVENT_TYPE, | 
 | 1004 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SCAN_EVENT_STATUS, | 
 | 1005 |  | 
 | 1006 | 	/* EXTSCAN attributes for | 
 | 1007 | 	 * QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_AP_FOUND sub-command. | 
 | 1008 | 	 */ | 
 | 1009 | 	/* Use attr QCA_WLAN_VENDOR_ATTR_EXTSCAN_NUM_RESULTS_AVAILABLE | 
 | 1010 | 	 * to indicate number of results. | 
 | 1011 | 	 */ | 
 | 1012 |  | 
 | 1013 | 	/* EXTSCAN attributes for | 
 | 1014 | 	 * QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_SIGNIFICANT_CHANGE sub-command. | 
 | 1015 | 	 */ | 
 | 1016 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SIGNIFICANT_CHANGE_RESULT_BSSID, | 
 | 1017 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SIGNIFICANT_CHANGE_RESULT_CHANNEL, | 
 | 1018 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SIGNIFICANT_CHANGE_RESULT_NUM_RSSI, | 
 | 1019 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_SIGNIFICANT_CHANGE_RESULT_RSSI_LIST, | 
 | 1020 |  | 
 | 1021 | 	/* EXTSCAN attributes used with | 
 | 1022 | 	 * QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_GET_CACHED_RESULTS sub-command. | 
 | 1023 | 	 */ | 
 | 1024 | 	/* Use attr QCA_WLAN_VENDOR_ATTR_EXTSCAN_NUM_RESULTS_AVAILABLE | 
 | 1025 | 	 * to indicate number of gscan cached results returned. | 
 | 1026 | 	 * Also, use QCA_WLAN_VENDOR_ATTR_EXTSCAN_CACHED_RESULTS_LIST to | 
 | 1027 | 	 * indicate the list of gscan cached results. | 
 | 1028 | 	 */ | 
 | 1029 |  | 
 | 1030 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_CACHED_RESULTS_LIST, | 
 | 1031 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_CACHED_RESULTS_SCAN_ID, | 
 | 1032 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_CACHED_RESULTS_FLAGS, | 
 | 1033 | 	/* Use attr QCA_WLAN_VENDOR_ATTR_EXTSCAN_NUM_RESULTS_AVAILABLE | 
 | 1034 | 	 * to indicate number of wifi scan results/bssids retrieved by the scan. | 
 | 1035 | 	 * Also, use QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_LIST to indicate the | 
 | 1036 | 	 * list of wifi scan results returned for each cached result block. | 
 | 1037 | 	 */ | 
 | 1038 |  | 
 | 1039 | 	/* EXTSCAN attributes for | 
 | 1040 | 	 * QCA_NL80211_VENDOR_SUBCMD_PNO_NETWORK_FOUND sub-command. | 
 | 1041 | 	 */ | 
 | 1042 | 	/* Use QCA_WLAN_VENDOR_ATTR_EXTSCAN_NUM_RESULTS_AVAILABLE for number | 
 | 1043 | 	 * of results. | 
 | 1044 | 	 * Use QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_LIST to indicate the nested | 
 | 1045 | 	 * list of wifi scan results returned for each | 
 | 1046 | 	 * wifi_passpoint_match_result block. | 
 | 1047 | 	 * Array size: QCA_WLAN_VENDOR_ATTR_EXTSCAN_NUM_RESULTS_AVAILABLE. | 
 | 1048 | 	 */ | 
 | 1049 |  | 
 | 1050 | 	/* EXTSCAN attributes for | 
 | 1051 | 	 * QCA_NL80211_VENDOR_SUBCMD_PNO_PASSPOINT_NETWORK_FOUND sub-command. | 
 | 1052 | 	 */ | 
 | 1053 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_PNO_RESULTS_PASSPOINT_NETWORK_FOUND_NUM_MATCHES, | 
 | 1054 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_PNO_RESULTS_PASSPOINT_MATCH_RESULT_LIST, | 
 | 1055 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_PNO_RESULTS_PASSPOINT_MATCH_ID, | 
 | 1056 | 	/* Use QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_LIST to indicate the nested | 
 | 1057 | 	 * list of wifi scan results returned for each | 
 | 1058 | 	 * wifi_passpoint_match_result block. | 
 | 1059 | 	 */ | 
 | 1060 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_PNO_RESULTS_PASSPOINT_MATCH_ANQP_LEN, | 
 | 1061 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_PNO_RESULTS_PASSPOINT_MATCH_ANQP, | 
 | 1062 |  | 
 | 1063 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_HOTLIST_SSIDS, | 
 | 1064 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_NUM_EPNO_NETS, | 
 | 1065 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_NUM_EPNO_NETS_BY_SSID, | 
 | 1066 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_CAPABILITIES_MAX_NUM_WHITELISTED_SSID, | 
 | 1067 |  | 
 | 1068 | 	/* EXTSCAN attributes for | 
 | 1069 | 	 * QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_FOUND sub-command & | 
 | 1070 | 	 * QCA_NL80211_VENDOR_SUBCMD_EXTSCAN_HOTLIST_SSID_LOST sub-command | 
 | 1071 | 	 */ | 
 | 1072 | 	/* Use attr QCA_WLAN_VENDOR_ATTR_EXTSCAN_NUM_RESULTS_AVAILABLE | 
 | 1073 | 	 * to indicate number of results. | 
 | 1074 | 	 */ | 
 | 1075 |  | 
 | 1076 | 	/* keep last */ | 
 | 1077 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_AFTER_LAST, | 
 | 1078 | 	QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_MAX = | 
 | 1079 | 		QCA_WLAN_VENDOR_ATTR_EXTSCAN_RESULTS_AFTER_LAST - 1, | 
 | 1080 | }; | 
 | 1081 |  | 
 | 1082 | #endif | 
 | 1083 |  | 
 | 1084 | #ifdef WLAN_FEATURE_LINK_LAYER_STATS | 
 | 1085 |  | 
 | 1086 | /** | 
 | 1087 |  * enum qca_wlan_vendor_attr_ll_stats_set - vendor attribute set stats | 
 | 1088 |  * | 
 | 1089 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_SET_INVALID: Invalid initial value | 
 | 1090 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_SET_CONFIG_MPDU_SIZE_THRESHOLD: Size threshold | 
 | 1091 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_SET_CONFIG_AGGRESSIVE_STATS_GATHERING: | 
 | 1092 |  *	Aggresive stats gathering | 
 | 1093 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_SET_AFTER_LAST: After last | 
 | 1094 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_SET_MAX: Max value | 
 | 1095 |  */ | 
 | 1096 | enum qca_wlan_vendor_attr_ll_stats_set { | 
 | 1097 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_SET_INVALID = 0, | 
 | 1098 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_SET_CONFIG_MPDU_SIZE_THRESHOLD = 1, | 
 | 1099 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_SET_CONFIG_AGGRESSIVE_STATS_GATHERING, | 
 | 1100 | 	/* keep last */ | 
 | 1101 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_SET_AFTER_LAST, | 
 | 1102 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_SET_MAX = | 
 | 1103 | 		QCA_WLAN_VENDOR_ATTR_LL_STATS_SET_AFTER_LAST - 1 | 
 | 1104 | }; | 
 | 1105 |  | 
 | 1106 | /** | 
 | 1107 |  * enum qca_wlan_vendor_attr_ll_stats_get - vendor attribute get stats | 
 | 1108 |  * | 
 | 1109 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_GET_INVALID: Invalid initial value | 
 | 1110 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_GET_CONFIG_REQ_ID: Unsigned 32bit value | 
 | 1111 |  *	provided by the caller issuing the GET stats command. When reporting | 
 | 1112 |  *	the stats results, the driver uses the same value to indicate which | 
 | 1113 |  *	GET request the results correspond to. | 
 | 1114 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_GET_CONFIG_REQ_MASK: Get config request mask | 
 | 1115 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_CLR_CONFIG_RSP_MASK: Config response mask | 
 | 1116 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_CLR_CONFIG_STOP_RSP: Config stop response | 
 | 1117 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_GET_AFTER_LAST: After last | 
 | 1118 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_GET_MAX: Max value | 
 | 1119 |  */ | 
 | 1120 | enum qca_wlan_vendor_attr_ll_stats_get { | 
 | 1121 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_GET_INVALID = 0, | 
 | 1122 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_GET_CONFIG_REQ_ID, | 
 | 1123 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_GET_CONFIG_REQ_MASK, | 
 | 1124 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_GET_AFTER_LAST, | 
 | 1125 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_GET_MAX = | 
 | 1126 | 		QCA_WLAN_VENDOR_ATTR_LL_STATS_GET_AFTER_LAST - 1 | 
 | 1127 | }; | 
 | 1128 |  | 
 | 1129 | /** | 
 | 1130 |  * enum qca_wlan_vendor_attr_ll_stats_clr - vendor attribute clear stats | 
 | 1131 |  * | 
 | 1132 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_CLR_INVALID: Invalid initial value | 
 | 1133 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_CLR_CONFIG_REQ_MASK: Config request mask | 
 | 1134 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_CLR_CONFIG_STOP_REQ: Config stop mask | 
 | 1135 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_CLR_CONFIG_RSP_MASK: Config response mask | 
 | 1136 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_CLR_CONFIG_STOP_RSP: Config stop response | 
 | 1137 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_CLR_AFTER_LAST: After last | 
 | 1138 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_CLR_MAX: Max value | 
 | 1139 |  */ | 
 | 1140 | enum qca_wlan_vendor_attr_ll_stats_clr { | 
 | 1141 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_CLR_INVALID = 0, | 
 | 1142 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_CLR_CONFIG_REQ_MASK, | 
 | 1143 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_CLR_CONFIG_STOP_REQ, | 
 | 1144 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_CLR_CONFIG_RSP_MASK, | 
 | 1145 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_CLR_CONFIG_STOP_RSP, | 
 | 1146 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_CLR_AFTER_LAST, | 
 | 1147 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_CLR_MAX = | 
 | 1148 | 		QCA_WLAN_VENDOR_ATTR_LL_STATS_CLR_AFTER_LAST - 1 | 
 | 1149 | }; | 
 | 1150 |  | 
 | 1151 | /** | 
 | 1152 |  * enum qca_wlan_vendor_attr_ll_stats_results_type - ll stats result type | 
 | 1153 |  * | 
 | 1154 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_TYPE_INVALID: Initial invalid value | 
 | 1155 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_TYPE_RADIO: Link layer stats type radio | 
 | 1156 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_TYPE_IFACE: Link layer stats type interface | 
 | 1157 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_TYPE_PEER: Link layer stats type peer | 
 | 1158 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_TYPE_AFTER_LAST: Last value | 
 | 1159 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_TYPE_MAX: Max value | 
 | 1160 |  */ | 
 | 1161 | enum qca_wlan_vendor_attr_ll_stats_results_type { | 
 | 1162 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_TYPE_INVALID = 0, | 
 | 1163 |  | 
 | 1164 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_TYPE_RADIO = 1, | 
 | 1165 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_TYPE_IFACE, | 
 | 1166 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_TYPE_PEER, | 
 | 1167 |  | 
 | 1168 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_TYPE_AFTER_LAST, | 
 | 1169 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_TYPE_MAX = | 
| Peng Xu | 62c8c43 | 2016-05-09 15:23:02 -0700 | [diff] [blame] | 1170 | 		QCA_WLAN_VENDOR_ATTR_LL_STATS_TYPE_AFTER_LAST - 1 | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 1171 | }; | 
 | 1172 |  | 
 | 1173 | /** | 
 | 1174 |  * enum qca_wlan_vendor_attr_ll_stats_results - vendor attribute stats results | 
 | 1175 |  * | 
 | 1176 |  * Attributes of type QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_* are nested | 
 | 1177 |  * within the interface stats. | 
 | 1178 |  * | 
 | 1179 |  * Attributes of type QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_* could be nested | 
 | 1180 |  * within the interface stats. | 
 | 1181 |  * | 
 | 1182 |  * Attributes of type QCA_WLAN_VENDOR_ATTR_LL_STATS_PEER_INFO_* are nested | 
 | 1183 |  * within the interface stats. | 
 | 1184 |  * | 
 | 1185 |  * Attributes of type QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_* could be nested | 
 | 1186 |  * within the peer info stats. | 
 | 1187 |  * | 
 | 1188 |  * Attributes of type QCA_WLAN_VENDOR_ATTR_LL_STATS_CHANNEL_INFO_* could be | 
 | 1189 |  * nested within the channel stats. | 
 | 1190 |  * | 
 | 1191 |  * Attributes of type QCA_WLAN_VENDOR_ATTR_LL_STATS_CHANNEL_ could be nested | 
 | 1192 |  * within the radio stats. | 
 | 1193 |  * | 
 | 1194 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_INVALID: Invalid initial value | 
 | 1195 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RESULTS_REQ_ID: Unsigned 32bit value | 
 | 1196 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_BEACON_RX: Unsigned 32bit value | 
 | 1197 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_MGMT_RX: Unsigned 32bit value | 
 | 1198 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_MGMT_ACTION_RX: Unsigned 32bit value | 
 | 1199 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_MGMT_ACTION_TX: Unsigned 32bit value | 
 | 1200 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_RSSI_MGMT: Unsigned 32bit value | 
 | 1201 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_RSSI_DATA: Unsigned 32bit value | 
 | 1202 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_RSSI_ACK: Unsigned 32bit value | 
 | 1203 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_MODE: Interface mode, e.g., STA, | 
 | 1204 |  *	SOFTAP, IBSS, etc. Type = enum wifi_interface_mode | 
 | 1205 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_MAC_ADDR: Interface MAC address. | 
 | 1206 |  *	An array of 6 Unsigned int8_t | 
 | 1207 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_STATE: | 
 | 1208 |  *	Type = enum wifi_connection_state,  e.g., DISCONNECTED, AUTHENTICATING, | 
 | 1209 |  *	etc. Valid for STA, CLI only | 
 | 1210 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_ROAMING: | 
 | 1211 |  *	Type = enum wifi_roam_state. Roaming state, e.g., IDLE or ACTIVE | 
 | 1212 |  *	(is that valid for STA only?) | 
 | 1213 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_CAPABILITIES: Unsigned 32bit value. | 
 | 1214 |  *	WIFI_CAPABILITY_XXX | 
 | 1215 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_SSID: NULL terminated SSID. An | 
 | 1216 |  *	array of 33 Unsigned 8bit values | 
 | 1217 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_BSSID: BSSID. An array of 6 | 
 | 1218 |  *	Unsigned 8bit values | 
 | 1219 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_AP_COUNTRY_STR: Country string | 
 | 1220 |  *	advertised by AP. An array of 3 Unsigned 8bit values | 
 | 1221 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_COUNTRY_STR: Country string for | 
 | 1222 |  *	this association. An array of 3 Unsigned 8bit values | 
 | 1223 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_AC: Type = enum wifi_traffic_ac e.g. | 
 | 1224 |  *	V0, VI, BE and BK | 
 | 1225 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_TX_MPDU: Unsigned int 32 value | 
 | 1226 |  *	corresponding to respective AC | 
 | 1227 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_RX_MPDU: Unsigned int 32 value | 
 | 1228 |  *	corresponding to respective AC | 
 | 1229 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_TX_MCAST: Unsigned int 32 value | 
 | 1230 |  *	corresponding to respective AC | 
 | 1231 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_RX_MCAST: Unsigned int 32 value | 
 | 1232 |  *	corresponding to respective AC | 
 | 1233 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_RX_AMPDU: Unsigned int 32 value | 
 | 1234 |  *	corresponding to respective AC | 
 | 1235 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_TX_AMPDU: Unsigned int 32 value | 
 | 1236 |  *	corresponding to respective AC | 
 | 1237 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_MPDU_LOST: Unsigned int 32 value | 
 | 1238 |  *	corresponding to respective AC | 
 | 1239 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_RETRIES: Unsigned int 32 value | 
 | 1240 |  *	corresponding to respective AC | 
 | 1241 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_RETRIES_SHORT: Unsigned int 32 value | 
 | 1242 |  *	corresponding to respective AC | 
 | 1243 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_CONTENTION_TIME_MIN: Unsigned int 32 | 
 | 1244 |  *	value corresponding to respective AC | 
 | 1245 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_CONTENTION_TIME_MAX: Unsigned int 32 | 
 | 1246 |  *	value corresponding to respective AC | 
 | 1247 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_CONTENTION_TIME_AVG: Unsigned int 32 | 
 | 1248 |  *	value corresponding to respective AC | 
 | 1249 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_CONTENTION_NUM_SAMPLES: Unsigned int 32 | 
 | 1250 |  *	value corresponding to respective AC | 
 | 1251 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_NUM_PEERS: Unsigned int 32 | 
 | 1252 |  *	value corresponding to respective AC | 
 | 1253 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_PEER_INFO_TYPE: Type = enum wifi_peer_type | 
 | 1254 |  *	Peer type, e.g., STA, AP, P2P GO etc | 
 | 1255 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_PEER_INFO_MAC_ADDRESS: MAC addr corresponding | 
 | 1256 |  *	to respective peer. An array of 6 Unsigned 8bit values | 
 | 1257 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_PEER_INFO_CAPABILITIES: Unsigned int 32bit | 
 | 1258 |  *	value representing capabilities corresponding to respective peer. | 
 | 1259 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_PEER_INFO_NUM_RATES: Unsigned 32bit value. | 
 | 1260 |  *	Number of rates | 
 | 1261 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_PREAMBLE: Unsigned int 8bit value: | 
 | 1262 |  *	0: OFDM, 1:CCK, 2:HT 3:VHT 4..7 reserved | 
 | 1263 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_NSS: Unsigned int 8bit value: | 
 | 1264 |  *	0:1x1, 1:2x2, 3:3x3, 4:4x4 | 
 | 1265 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_BW: Unsigned int 8bit value: | 
 | 1266 |  *	0:20MHz, 1:40Mhz, 2:80Mhz, 3:160Mhz | 
 | 1267 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_MCS_INDEX: Unsigned int 8bit value: | 
 | 1268 |  *	OFDM/CCK rate code would be as per IEEE Std in the units of 0.5mbps | 
 | 1269 |  *	HT/VHT it would be mcs index | 
 | 1270 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_BIT_RATE: Unsigned 32bit value. | 
 | 1271 |  *	Bit rate in units of 100Kbps | 
 | 1272 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_TX_MPDU: Unsigned int 32bit value. | 
 | 1273 |  *	Number of successfully transmitted data pkts i.e., with ACK received | 
 | 1274 |  *	corresponding to the respective rate | 
 | 1275 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_RX_MPDU: Unsigned int 32bit value. | 
 | 1276 |  *	Number of received data pkts corresponding to the respective rate | 
 | 1277 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_MPDU_LOST: Unsigned int 32bit value. | 
 | 1278 |  *	Number of data pkts losses, i.e., no ACK received corresponding to | 
 | 1279 |  *	the respective rate | 
 | 1280 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_RETRIES: Unsigned int 32bit value. | 
 | 1281 |  *	Total number of data pkt retries for the respective rate | 
 | 1282 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_RETRIES_SHORT: Unsigned int 32bit value. | 
 | 1283 |  *	Total number of short data pkt retries for the respective rate | 
 | 1284 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_RETRIES_LONG: Unsigned int 32bit value. | 
 | 1285 |  *	Total number of long data pkt retries for the respective rate | 
 | 1286 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_ID: Radio id | 
 | 1287 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_ON_TIME: Unsigned 32bit value. | 
 | 1288 |  *	Total number of msecs the radio is awake accruing over time | 
 | 1289 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_TX_TIME: Unsigned 32bit value. | 
 | 1290 |  *	Total number of msecs the radio is transmitting accruing over time | 
 | 1291 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_RX_TIME: Unsigned 32bit value. | 
 | 1292 |  *	Total number of msecs the radio is in active receive accruing over time | 
 | 1293 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_ON_TIME_SCAN: Unsigned 32bit value. | 
 | 1294 |  *	Total number of msecs the radio is awake due to all scan accruing | 
 | 1295 |  *	over time | 
 | 1296 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_ON_TIME_NBD: Unsigned 32bit value. | 
 | 1297 |  *	Total number of msecs the radio is awake due to NAN accruing over time. | 
 | 1298 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_ON_TIME_GSCAN: Unsigned 32bit value. | 
 | 1299 |  *	Total number of msecs the radio is awake due to GSCAN accruing over time | 
 | 1300 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_ON_TIME_ROAM_SCAN: Unsigned 32bit value. | 
 | 1301 |  *	Total number of msecs the radio is awake due to roam scan accruing over | 
 | 1302 |  *	time. | 
 | 1303 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_ON_TIME_PNO_SCAN: Unsigned 32bit value. | 
 | 1304 |  *	Total number of msecs the radio is awake due to PNO scan accruing over | 
 | 1305 |  *	time. | 
 | 1306 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_ON_TIME_HS20: Unsigned 32bit value. | 
 | 1307 |  *	Total number of msecs the radio is awake due to HS2.0 scans and GAS | 
 | 1308 |  *	exchange accruing over time. | 
 | 1309 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_NUM_CHANNELS: Unsigned 32bit value. | 
 | 1310 |  *	Number of channels | 
 | 1311 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_CHANNEL_INFO_WIDTH: | 
 | 1312 |  *	Type = enum wifi_channel_width. Channel width, e.g., 20, 40, 80, etc. | 
 | 1313 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_CHANNEL_INFO_CENTER_FREQ: | 
 | 1314 |  *	Unsigned 32bit value. Primary 20MHz channel. | 
 | 1315 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_CHANNEL_INFO_CENTER_FREQ0: | 
 | 1316 |  *	Unsigned 32bit value. Center frequency (MHz) first segment. | 
 | 1317 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_CHANNEL_INFO_CENTER_FREQ1: | 
 | 1318 |  *	Unsigned 32bit value. Center frequency (MHz) second segment. | 
 | 1319 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_CHANNEL_ON_TIME: Unsigned int 32bit value | 
 | 1320 |  *	representing total number of msecs the radio is awake on that channel | 
 | 1321 |  *	accruing over time, corresponding to the respective channel. | 
 | 1322 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_CHANNEL_CCA_BUSY_TIME:  Unsigned int 32bit | 
 | 1323 |  *	value representing total number of msecs the CCA register is busy | 
 | 1324 |  *	accruing  over time corresponding to the respective channel. | 
 | 1325 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_NUM_RADIOS: Number of radios | 
 | 1326 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_CH_INFO: Channel info | 
 | 1327 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_PEER_INFO: Peer info | 
 | 1328 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_PEER_INFO_RATE_INFO: Peer rate info | 
 | 1329 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_INFO: WMM info | 
 | 1330 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_RESULTS_MORE_DATA: Unsigned 8bit value. | 
 | 1331 |  *	Used by the driver; if set to 1, it indicates that more stats, e.g., | 
 | 1332 |  *	peers or radio, are to follow in the next | 
 | 1333 |  *	QCA_NL80211_VENDOR_SUBCMD_LL_STATS_*_RESULTS event. Otherwise, it | 
 | 1334 |  *	is set to 0. | 
 | 1335 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_AVERAGE_TSF_OFFSET: tsf offset | 
 | 1336 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_LEAKY_AP_DETECTED: leaky ap detected | 
 | 1337 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_LEAKY_AP_AVG_NUM_FRAMES_LEAKED: | 
 | 1338 |  *	average number of frames leaked | 
 | 1339 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_LEAKY_AP_GUARD_TIME: guard time | 
 | 1340 |  * @QCA_WLAN_VENDOR_ATTR_LL_STATS_AFTER_LAST: After last | 
 | 1341 |  * @QCA_WLAN_VENDOR_ATTR_FEATURE_SET_MAX: Max value | 
 | 1342 |  */ | 
 | 1343 |  | 
 | 1344 | enum qca_wlan_vendor_attr_ll_stats_results { | 
 | 1345 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_INVALID = 0, | 
 | 1346 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RESULTS_REQ_ID = 1, | 
 | 1347 |  | 
 | 1348 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_BEACON_RX, | 
 | 1349 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_MGMT_RX, | 
 | 1350 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_MGMT_ACTION_RX, | 
 | 1351 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_MGMT_ACTION_TX, | 
 | 1352 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_RSSI_MGMT, | 
 | 1353 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_RSSI_DATA, | 
 | 1354 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_RSSI_ACK, | 
 | 1355 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_MODE, | 
 | 1356 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_MAC_ADDR, | 
 | 1357 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_STATE, | 
 | 1358 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_ROAMING, | 
 | 1359 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_CAPABILITIES, | 
 | 1360 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_SSID, | 
 | 1361 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_BSSID, | 
 | 1362 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_AP_COUNTRY_STR, | 
 | 1363 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_INFO_COUNTRY_STR, | 
 | 1364 |  | 
 | 1365 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_AC, | 
 | 1366 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_TX_MPDU, | 
 | 1367 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_RX_MPDU, | 
 | 1368 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_TX_MCAST, | 
 | 1369 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_RX_MCAST, | 
 | 1370 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_RX_AMPDU, | 
 | 1371 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_TX_AMPDU, | 
 | 1372 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_MPDU_LOST, | 
 | 1373 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_RETRIES, | 
 | 1374 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_RETRIES_SHORT, | 
 | 1375 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_RETRIES_LONG, | 
 | 1376 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_CONTENTION_TIME_MIN, | 
 | 1377 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_CONTENTION_TIME_MAX, | 
 | 1378 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_CONTENTION_TIME_AVG, | 
 | 1379 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_AC_CONTENTION_NUM_SAMPLES, | 
 | 1380 |  | 
 | 1381 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_NUM_PEERS, | 
 | 1382 |  | 
 | 1383 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_PEER_INFO_TYPE, | 
 | 1384 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_PEER_INFO_MAC_ADDRESS, | 
 | 1385 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_PEER_INFO_CAPABILITIES, | 
 | 1386 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_PEER_INFO_NUM_RATES, | 
 | 1387 |  | 
 | 1388 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_PREAMBLE, | 
 | 1389 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_NSS, | 
 | 1390 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_BW, | 
 | 1391 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_MCS_INDEX, | 
 | 1392 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_BIT_RATE, | 
 | 1393 |  | 
 | 1394 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_TX_MPDU, | 
 | 1395 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_RX_MPDU, | 
 | 1396 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_MPDU_LOST, | 
 | 1397 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_RETRIES, | 
 | 1398 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_RETRIES_SHORT, | 
 | 1399 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RATE_RETRIES_LONG, | 
 | 1400 |  | 
 | 1401 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_ID, | 
 | 1402 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_ON_TIME, | 
 | 1403 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_TX_TIME, | 
 | 1404 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_RX_TIME, | 
 | 1405 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_ON_TIME_SCAN, | 
 | 1406 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_ON_TIME_NBD, | 
 | 1407 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_ON_TIME_GSCAN, | 
 | 1408 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_ON_TIME_ROAM_SCAN, | 
 | 1409 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_ON_TIME_PNO_SCAN, | 
 | 1410 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_ON_TIME_HS20, | 
 | 1411 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RADIO_NUM_CHANNELS, | 
 | 1412 |  | 
 | 1413 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_CHANNEL_INFO_WIDTH, | 
 | 1414 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_CHANNEL_INFO_CENTER_FREQ, | 
 | 1415 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_CHANNEL_INFO_CENTER_FREQ0, | 
 | 1416 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_CHANNEL_INFO_CENTER_FREQ1, | 
 | 1417 |  | 
 | 1418 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_CHANNEL_ON_TIME, | 
 | 1419 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_CHANNEL_CCA_BUSY_TIME, | 
 | 1420 |  | 
 | 1421 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_NUM_RADIOS, | 
 | 1422 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_CH_INFO, | 
 | 1423 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_PEER_INFO, | 
 | 1424 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_PEER_INFO_RATE_INFO, | 
 | 1425 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_WMM_INFO, | 
 | 1426 |  | 
 | 1427 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_RESULTS_MORE_DATA, | 
 | 1428 |  | 
 | 1429 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_AVERAGE_TSF_OFFSET, | 
 | 1430 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_LEAKY_AP_DETECTED, | 
 | 1431 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_LEAKY_AP_AVG_NUM_FRAMES_LEAKED, | 
 | 1432 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_IFACE_LEAKY_AP_GUARD_TIME, | 
 | 1433 |  | 
 | 1434 | 	/* Unsigned 32bit value to indicate ll stats result type */ | 
 | 1435 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_TYPE, | 
 | 1436 |  | 
 | 1437 | 	/* keep last */ | 
 | 1438 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_AFTER_LAST, | 
 | 1439 | 	QCA_WLAN_VENDOR_ATTR_LL_STATS_MAX = | 
 | 1440 | 		QCA_WLAN_VENDOR_ATTR_LL_STATS_AFTER_LAST - 1 | 
 | 1441 | }; | 
 | 1442 |  | 
 | 1443 | #endif /* WLAN_FEATURE_LINK_LAYER_STATS */ | 
 | 1444 |  | 
 | 1445 | /** | 
 | 1446 |  * enum qca_wlan_vendor_attr_get_supported_features - get supported feature | 
 | 1447 |  * | 
 | 1448 |  * @QCA_WLAN_VENDOR_ATTR_FEATURE_SET_INVALID: Invalid initial value | 
 | 1449 |  * @QCA_WLAN_VENDOR_ATTR_FEATURE_SET: Unsigned 32bit value | 
 | 1450 |  * @QCA_WLAN_VENDOR_ATTR_FEATURE_SET_AFTER_LAST: After last | 
 | 1451 |  * @QCA_WLAN_VENDOR_ATTR_FEATURE_SET_MAX: Max value | 
 | 1452 |  */ | 
 | 1453 | enum qca_wlan_vendor_attr_get_supported_features { | 
 | 1454 | 	QCA_WLAN_VENDOR_ATTR_FEATURE_SET_INVALID = 0, | 
 | 1455 | 	QCA_WLAN_VENDOR_ATTR_FEATURE_SET = 1, | 
 | 1456 | 	QCA_WLAN_VENDOR_ATTR_FEATURE_SET_AFTER_LAST, | 
 | 1457 | 	QCA_WLAN_VENDOR_ATTR_FEATURE_SET_MAX = | 
 | 1458 | 		QCA_WLAN_VENDOR_ATTR_FEATURE_SET_AFTER_LAST - 1, | 
 | 1459 | }; | 
 | 1460 |  | 
 | 1461 | /** | 
 | 1462 |  * enum qca_wlan_vendor_attr_set_scanning_mac_oui - set scanning mac oui | 
 | 1463 |  * | 
 | 1464 |  * @QCA_WLAN_VENDOR_ATTR_SET_SCANNING_MAC_OUI_INVALID: Invalid initial value | 
 | 1465 |  * @QCA_WLAN_VENDOR_ATTR_SET_SCANNING_MAC_OUI: An array of 3 x Unsigned 8-bit | 
 | 1466 |  *	value | 
 | 1467 |  * @QCA_WLAN_VENDOR_ATTR_SET_SCANNING_MAC_OUI_AFTER_LAST: After last | 
 | 1468 |  * @QCA_WLAN_VENDOR_ATTR_SET_SCANNING_MAC_OUI_MAX: Max value | 
 | 1469 |  */ | 
 | 1470 | enum qca_wlan_vendor_attr_set_scanning_mac_oui { | 
 | 1471 | 	QCA_WLAN_VENDOR_ATTR_SET_SCANNING_MAC_OUI_INVALID = 0, | 
 | 1472 | 	QCA_WLAN_VENDOR_ATTR_SET_SCANNING_MAC_OUI = 1, | 
 | 1473 | 	QCA_WLAN_VENDOR_ATTR_SET_SCANNING_MAC_OUI_AFTER_LAST, | 
 | 1474 | 	QCA_WLAN_VENDOR_ATTR_SET_SCANNING_MAC_OUI_MAX = | 
 | 1475 | 		QCA_WLAN_VENDOR_ATTR_SET_SCANNING_MAC_OUI_AFTER_LAST - 1, | 
 | 1476 | }; | 
 | 1477 |  | 
 | 1478 | /** | 
 | 1479 |  * enum qca_wlan_vendor_attr_scan - Specifies vendor scan attributes | 
 | 1480 |  * | 
 | 1481 |  * @QCA_WLAN_VENDOR_ATTR_SCAN_IE: IEs that should be included as part of scan | 
 | 1482 |  * @QCA_WLAN_VENDOR_ATTR_SCAN_FREQUENCIES: Nested unsigned 32-bit attributes | 
 | 1483 |  *	with frequencies to be scanned (in MHz) | 
 | 1484 |  * @QCA_WLAN_VENDOR_ATTR_SCAN_SSIDS: Nested attribute with SSIDs to be scanned | 
 | 1485 |  * @QCA_WLAN_VENDOR_ATTR_SCAN_SUPP_RATES: Nested array attribute of supported | 
 | 1486 |  *	rates to be included | 
 | 1487 |  * @QCA_WLAN_VENDOR_ATTR_SCAN_TX_NO_CCK_RATE: flag used to send probe requests | 
 | 1488 |  *	at non CCK rate in 2GHz band | 
 | 1489 |  * @QCA_WLAN_VENDOR_ATTR_SCAN_FLAGS: Unsigned 32-bit scan flags | 
 | 1490 |  * @QCA_WLAN_VENDOR_ATTR_SCAN_COOKIE: Unsigned 64-bit cookie provided by the | 
 | 1491 |  *	driver for the specific scan request | 
 | 1492 |  * @QCA_WLAN_VENDOR_ATTR_SCAN_STATUS: Unsigned 8-bit status of the scan | 
 | 1493 |  *	request decoded as in enum scan_status | 
 | 1494 |  * @QCA_WLAN_VENDOR_ATTR_SCAN_MAC: 6-byte MAC address to use when randomisation | 
 | 1495 |  *	scan flag is set | 
 | 1496 |  * @QCA_WLAN_VENDOR_ATTR_SCAN_MAC_MASK: 6-byte MAC address mask to be used with | 
 | 1497 |  *	randomisation | 
 | 1498 |  */ | 
 | 1499 | enum qca_wlan_vendor_attr_scan { | 
 | 1500 | 	QCA_WLAN_VENDOR_ATTR_SCAN_INVALID_PARAM = 0, | 
 | 1501 | 	QCA_WLAN_VENDOR_ATTR_SCAN_IE, | 
 | 1502 | 	QCA_WLAN_VENDOR_ATTR_SCAN_FREQUENCIES, | 
 | 1503 | 	QCA_WLAN_VENDOR_ATTR_SCAN_SSIDS, | 
 | 1504 | 	QCA_WLAN_VENDOR_ATTR_SCAN_SUPP_RATES, | 
 | 1505 | 	QCA_WLAN_VENDOR_ATTR_SCAN_TX_NO_CCK_RATE, | 
 | 1506 | 	QCA_WLAN_VENDOR_ATTR_SCAN_FLAGS, | 
 | 1507 | 	QCA_WLAN_VENDOR_ATTR_SCAN_COOKIE, | 
 | 1508 | 	QCA_WLAN_VENDOR_ATTR_SCAN_STATUS, | 
 | 1509 | 	QCA_WLAN_VENDOR_ATTR_SCAN_MAC, | 
 | 1510 | 	QCA_WLAN_VENDOR_ATTR_SCAN_MAC_MASK, | 
 | 1511 | 	QCA_WLAN_VENDOR_ATTR_SCAN_AFTER_LAST, | 
 | 1512 | 	QCA_WLAN_VENDOR_ATTR_SCAN_MAX = | 
 | 1513 | 		QCA_WLAN_VENDOR_ATTR_SCAN_AFTER_LAST - 1 | 
 | 1514 | }; | 
 | 1515 |  | 
 | 1516 | /** | 
 | 1517 |  * enum scan_status - Specifies the valid values the vendor scan attribute | 
 | 1518 |  *	QCA_WLAN_VENDOR_ATTR_SCAN_STATUS can take | 
 | 1519 |  * @VENDOR_SCAN_STATUS_NEW_RESULTS: implies the vendor scan is successful with | 
 | 1520 |  *	new scan results | 
 | 1521 |  * @VENDOR_SCAN_STATUS_ABORTED: implies the vendor scan was aborted in-between | 
 | 1522 |  */ | 
 | 1523 | enum scan_status { | 
 | 1524 | 	VENDOR_SCAN_STATUS_NEW_RESULTS, | 
 | 1525 | 	VENDOR_SCAN_STATUS_ABORTED, | 
 | 1526 | 	VENDOR_SCAN_STATUS_MAX, | 
 | 1527 | }; | 
 | 1528 |  | 
 | 1529 | /** | 
 | 1530 |  * enum qca_wlan_vendor_attr_get_concurrency_matrix - get concurrency matrix | 
 | 1531 |  * | 
 | 1532 |  * NL attributes for data used by | 
 | 1533 |  * QCA_NL80211_VENDOR_SUBCMD_GET_CONCURRENCY_MATRIX sub command. | 
 | 1534 |  * | 
 | 1535 |  * @QCA_WLAN_VENDOR_ATTR_GET_CONCURRENCY_MATRIX_INVALID: Invalid initial value | 
 | 1536 |  * @QCA_WLAN_VENDOR_ATTR_GET_CONCURRENCY_MATRIX_CONFIG_PARAM_SET_SIZE_MAX: | 
 | 1537 |  *	Unsigned 32-bit value | 
 | 1538 |  * @QCA_WLAN_VENDOR_ATTR_GET_CONCURRENCY_MATRIX_RESULTS_SET_SIZE: | 
 | 1539 |  *	Unsigned 32-bit value | 
 | 1540 |  * @QCA_WLAN_VENDOR_ATTR_GET_CONCURRENCY_MATRIX_RESULTS_SET: Set results. An | 
 | 1541 |  *	array of SET_SIZE x Unsigned 32bit values representing concurrency | 
 | 1542 |  *	combinations | 
 | 1543 |  * @QCA_WLAN_VENDOR_ATTR_GET_CONCURRENCY_MATRIX_AFTER_LAST: After last | 
 | 1544 |  * @QCA_WLAN_VENDOR_ATTR_GET_CONCURRENCY_MATRIX_MAX: Max value | 
 | 1545 |  */ | 
 | 1546 | enum qca_wlan_vendor_attr_get_concurrency_matrix { | 
 | 1547 | 	QCA_WLAN_VENDOR_ATTR_GET_CONCURRENCY_MATRIX_INVALID = 0, | 
 | 1548 | 	QCA_WLAN_VENDOR_ATTR_GET_CONCURRENCY_MATRIX_CONFIG_PARAM_SET_SIZE_MAX | 
 | 1549 | 									= 1, | 
 | 1550 | 	QCA_WLAN_VENDOR_ATTR_GET_CONCURRENCY_MATRIX_RESULTS_SET_SIZE = 2, | 
 | 1551 | 	QCA_WLAN_VENDOR_ATTR_GET_CONCURRENCY_MATRIX_RESULTS_SET = 3, | 
 | 1552 | 	QCA_WLAN_VENDOR_ATTR_GET_CONCURRENCY_MATRIX_AFTER_LAST, | 
 | 1553 | 	QCA_WLAN_VENDOR_ATTR_GET_CONCURRENCY_MATRIX_MAX = | 
| Peng Xu | 62c8c43 | 2016-05-09 15:23:02 -0700 | [diff] [blame] | 1554 | 		QCA_WLAN_VENDOR_ATTR_GET_CONCURRENCY_MATRIX_AFTER_LAST - 1, | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 1555 | }; | 
 | 1556 |  | 
 | 1557 | /** | 
 | 1558 |  * enum qca_wlan_vendor_attr_set_no_dfs_flag - vendor attribute set no dfs flag | 
 | 1559 |  * | 
 | 1560 |  * @QCA_WLAN_VENDOR_ATTR_SET_NO_DFS_FLAG_INVALID: Invalid initial value | 
 | 1561 |  * @QCA_WLAN_VENDOR_ATTR_SET_NO_DFS_FLAG: Unsigned 32-bit value | 
 | 1562 |  * @QCA_WLAN_VENDOR_ATTR_SET_NO_DFS_FLAG_AFTER_LAST: After last | 
 | 1563 |  * @QCA_WLAN_VENDOR_ATTR_SET_NO_DFS_FLAG_MAX: Max value | 
 | 1564 |  */ | 
 | 1565 | enum qca_wlan_vendor_attr_set_no_dfs_flag { | 
 | 1566 | 	QCA_WLAN_VENDOR_ATTR_SET_NO_DFS_FLAG_INVALID = 0, | 
 | 1567 | 	QCA_WLAN_VENDOR_ATTR_SET_NO_DFS_FLAG = 1, | 
 | 1568 | 	QCA_WLAN_VENDOR_ATTR_SET_NO_DFS_FLAG_AFTER_LAST, | 
 | 1569 | 	QCA_WLAN_VENDOR_ATTR_SET_NO_DFS_FLAG_MAX = | 
 | 1570 | 		QCA_WLAN_VENDOR_ATTR_SET_NO_DFS_FLAG_AFTER_LAST - 1, | 
 | 1571 | }; | 
 | 1572 |  | 
| Manikandan Mohan | 80dea79 | 2016-04-28 16:36:48 -0700 | [diff] [blame] | 1573 | /** | 
 | 1574 |  * enum qca_vendor_attr_wisa_cmd | 
 | 1575 |  * @QCA_WLAN_VENDOR_ATTR_WISA_INVALID: Invalid attr | 
 | 1576 |  * @QCA_WLAN_VENDOR_ATTR_WISA_MODE: WISA mode value attr (u32) | 
 | 1577 |  * @QCA_WLAN_VENDOR_ATTR_WISA_AFTER_LAST: After last | 
 | 1578 |  * @QCA_WLAN_VENDOR_ATTR_WISA_MAX: Max Value | 
 | 1579 |  * WISA setup vendor commands | 
 | 1580 |  */ | 
 | 1581 | enum qca_vendor_attr_wisa_cmd { | 
 | 1582 | 	QCA_WLAN_VENDOR_ATTR_WISA_INVALID = 0, | 
 | 1583 | 	QCA_WLAN_VENDOR_ATTR_WISA_MODE, | 
 | 1584 | 	QCA_WLAN_VENDOR_ATTR_WISA_AFTER_LAST, | 
 | 1585 | 	QCA_WLAN_VENDOR_ATTR_WISA_MAX = | 
 | 1586 | 		QCA_WLAN_VENDOR_ATTR_WISA_AFTER_LAST - 1 | 
 | 1587 | }; | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 1588 |  | 
 | 1589 | /** | 
 | 1590 |  * enum qca_wlan_vendor_attr_roam_auth - vendor event for roaming | 
 | 1591 |  * @QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_BSSID: BSSID of the roamed AP | 
 | 1592 |  * @QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_REQ_IE: Request IE | 
 | 1593 |  * @QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_RESP_IE: Response IE | 
 | 1594 |  * @QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_AUTHORIZED: Authorization Status | 
 | 1595 |  * @QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_KEY_REPLAY_CTR: Replay Counter | 
 | 1596 |  * @QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_PTK_KCK: KCK of the PTK | 
 | 1597 |  * @QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_PTK_KEK: KEK of the PTK | 
| Ravi Joshi | 277ae9b | 2015-11-13 11:30:43 -0800 | [diff] [blame] | 1598 |  * @QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_SUBNET_STATUS: subnet change status | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 1599 |  */ | 
 | 1600 | enum qca_wlan_vendor_attr_roam_auth { | 
 | 1601 | 	QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_INVALID = 0, | 
 | 1602 | 	QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_BSSID, | 
 | 1603 | 	QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_REQ_IE, | 
 | 1604 | 	QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_RESP_IE, | 
 | 1605 | 	QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_AUTHORIZED, | 
 | 1606 | 	QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_KEY_REPLAY_CTR, | 
 | 1607 | 	QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_PTK_KCK, | 
 | 1608 | 	QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_PTK_KEK, | 
| Ravi Joshi | 277ae9b | 2015-11-13 11:30:43 -0800 | [diff] [blame] | 1609 | 	QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_SUBNET_STATUS, | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 1610 | 	QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_AFTER_LAST, | 
 | 1611 | 	QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_MAX = | 
 | 1612 | 		QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_AFTER_LAST - 1 | 
 | 1613 | }; | 
 | 1614 |  | 
 | 1615 | /** | 
 | 1616 |  * enum qca_wlan_vendor_attr_wifi_config - wifi config | 
 | 1617 |  * | 
 | 1618 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_CONFIG_INVALID: Invalid initial value | 
 | 1619 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_CONFIG_DYNAMIC_DTIM: dynamic DTIM | 
 | 1620 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_CONFIG_STATS_AVG_FACTOR: avg factor | 
 | 1621 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_CONFIG_GUARD_TIME: guard time | 
 | 1622 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_CONFIG_AFTER_LAST: after last | 
 | 1623 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_CONFIG_MAX: max value | 
 | 1624 |  */ | 
 | 1625 | enum qca_wlan_vendor_attr_wifi_config { | 
 | 1626 | 	QCA_WLAN_VENDOR_ATTR_WIFI_CONFIG_INVALID = 0, | 
 | 1627 | 	QCA_WLAN_VENDOR_ATTR_WIFI_CONFIG_DYNAMIC_DTIM = 1, | 
 | 1628 | 	QCA_WLAN_VENDOR_ATTR_WIFI_CONFIG_STATS_AVG_FACTOR = 2, | 
 | 1629 | 	QCA_WLAN_VENDOR_ATTR_WIFI_CONFIG_GUARD_TIME = 3, | 
 | 1630 |  | 
 | 1631 | 	/* keep last */ | 
 | 1632 | 	QCA_WLAN_VENDOR_ATTR_WIFI_CONFIG_AFTER_LAST, | 
 | 1633 | 	QCA_WLAN_VENDOR_ATTR_WIFI_CONFIG_MAX = | 
 | 1634 | 		QCA_WLAN_VENDOR_ATTR_WIFI_CONFIG_AFTER_LAST - 1, | 
 | 1635 | }; | 
 | 1636 |  | 
 | 1637 | /** | 
 | 1638 |  * enum qca_wlan_epno_type - the type of request to the EPNO command | 
 | 1639 |  * @QCA_WLAN_EPNO: epno type request | 
 | 1640 |  * @QCA_WLAN_PNO: pno type request | 
 | 1641 |  */ | 
 | 1642 | enum qca_wlan_epno_type { | 
 | 1643 | 	QCA_WLAN_EPNO, | 
 | 1644 | 	QCA_WLAN_PNO | 
 | 1645 | }; | 
 | 1646 |  | 
 | 1647 | /** | 
 | 1648 |  * enum qca_wlan_vendor_attr_pno_config_params - pno config params | 
 | 1649 |  * | 
 | 1650 |  * @QCA_WLAN_VENDOR_ATTR_PNO_INVALID - Invalid initial value | 
 | 1651 |  * | 
 | 1652 |  *	NL attributes for data used by | 
 | 1653 |  *	QCA_NL80211_VENDOR_SUBCMD_PNO_SET_PASSPOINT_LIST sub command. | 
 | 1654 |  * @QCA_WLAN_VENDOR_ATTR_PNO_PASSPOINT_LIST_PARAM_NUM: | 
 | 1655 |  *	Unsigned 32-bit value; pno passpoint number of networks | 
 | 1656 |  * @QCA_WLAN_VENDOR_ATTR_PNO_PASSPOINT_LIST_PARAM_NETWORK_ARRAY: | 
 | 1657 |  *	Array of nested QCA_WLAN_VENDOR_ATTR_PNO_PASSPOINT_NETWORK_PARAM_* | 
 | 1658 |  *	attributes. Array size = | 
 | 1659 |  *	QCA_WLAN_VENDOR_ATTR_PNO_PASSPOINT_LIST_PARAM_NUM. | 
 | 1660 |  * @QCA_WLAN_VENDOR_ATTR_PNO_PASSPOINT_NETWORK_PARAM_ID: | 
 | 1661 |  *	Unsigned 32-bit value; network id | 
 | 1662 |  * @QCA_WLAN_VENDOR_ATTR_PNO_PASSPOINT_NETWORK_PARAM_REALM: | 
 | 1663 |  *	An array of 256 x Unsigned 8-bit value; NULL terminated UTF8 encoded | 
 | 1664 |  *	realm, 0 if unspecified. | 
 | 1665 |  * @QCA_WLAN_VENDOR_ATTR_PNO_PASSPOINT_NETWORK_PARAM_ROAM_CNSRTM_ID: | 
 | 1666 |  *	An array of 16 x Unsigned 32-bit value; roaming consortium ids | 
 | 1667 |  *	to match, 0 if unspecified. | 
 | 1668 |  * @QCA_WLAN_VENDOR_ATTR_PNO_PASSPOINT_NETWORK_PARAM_ROAM_PLMN: | 
 | 1669 |  *	An array of 6 x Unsigned 8-bit value; mcc/mnc combination, 0s if | 
 | 1670 |  *	unspecified. | 
 | 1671 |  * | 
 | 1672 |  *	NL attributes for data used by | 
 | 1673 |  *	QCA_NL80211_VENDOR_SUBCMD_PNO_SET_LIST sub command. | 
 | 1674 |  * @QCA_WLAN_VENDOR_ATTR_PNO_SET_LIST_PARAM_NUM_NETWORKS: | 
 | 1675 |  *	Unsigned 32-bit value; set pno number of networks | 
 | 1676 |  * @QCA_WLAN_VENDOR_ATTR_PNO_SET_LIST_PARAM_EPNO_NETWORKS_LIST: | 
 | 1677 |  *	Array of nested | 
 | 1678 |  *	QCA_WLAN_VENDOR_ATTR_PNO_SET_LIST_PARAM_EPNO_NETWORK_* | 
 | 1679 |  *	attributes. Array size = | 
 | 1680 |  *		QCA_WLAN_VENDOR_ATTR_PNO_SET_LIST_PARAM_NUM_NETWORKS | 
 | 1681 |  * @QCA_WLAN_VENDOR_ATTR_PNO_SET_LIST_PARAM_EPNO_NETWORK_SSID: | 
 | 1682 |  *	An array of 33 x Unsigned 8-bit value; NULL terminated SSID | 
 | 1683 |  * @QCA_WLAN_VENDOR_ATTR_PNO_SET_LIST_PARAM_EPNO_NETWORK_RSSI_THRESHOLD: | 
 | 1684 |  *	Signed 8-bit value; threshold for considering this SSID as found, | 
 | 1685 |  *	required granularity for this threshold is 4dBm to 8dBm | 
 | 1686 |  * @QCA_WLAN_VENDOR_ATTR_PNO_SET_LIST_PARAM_EPNO_NETWORK_FLAGS: | 
 | 1687 |  *	Unsigned 8-bit value; WIFI_PNO_FLAG_XXX | 
 | 1688 |  * @QCA_WLAN_VENDOR_ATTR_PNO_SET_LIST_PARAM_EPNO_NETWORK_AUTH_BIT: | 
 | 1689 |  *	Unsigned 8-bit value; auth bit field for matching WPA IE | 
 | 1690 |  * @QCA_WLAN_VENDOR_ATTR_PNO_SET_LIST_PARAM_EPNO_TYPE | 
 | 1691 |  *	Unsigned 8-bit to indicate ePNO type; values from qca_wlan_epno_type | 
 | 1692 |  * @QCA_WLAN_VENDOR_ATTR_PNO_AFTER_LAST: After last | 
 | 1693 |  * @QCA_WLAN_VENDOR_ATTR_PNO_MAX: max | 
 | 1694 |  */ | 
 | 1695 | enum qca_wlan_vendor_attr_pno_config_params { | 
 | 1696 | 	QCA_WLAN_VENDOR_ATTR_PNO_INVALID = 0, | 
 | 1697 |  | 
 | 1698 | 	QCA_WLAN_VENDOR_ATTR_PNO_PASSPOINT_LIST_PARAM_NUM = 1, | 
 | 1699 | 	QCA_WLAN_VENDOR_ATTR_PNO_PASSPOINT_LIST_PARAM_NETWORK_ARRAY = 2, | 
 | 1700 | 	QCA_WLAN_VENDOR_ATTR_PNO_PASSPOINT_NETWORK_PARAM_ID = 3, | 
 | 1701 | 	QCA_WLAN_VENDOR_ATTR_PNO_PASSPOINT_NETWORK_PARAM_REALM = 4, | 
 | 1702 | 	QCA_WLAN_VENDOR_ATTR_PNO_PASSPOINT_NETWORK_PARAM_ROAM_CNSRTM_ID = 5, | 
 | 1703 | 	QCA_WLAN_VENDOR_ATTR_PNO_PASSPOINT_NETWORK_PARAM_ROAM_PLMN = 6, | 
 | 1704 |  | 
 | 1705 | 	QCA_WLAN_VENDOR_ATTR_PNO_SET_LIST_PARAM_NUM_NETWORKS = 7, | 
 | 1706 | 	QCA_WLAN_VENDOR_ATTR_PNO_SET_LIST_PARAM_EPNO_NETWORKS_LIST = 8, | 
 | 1707 | 	QCA_WLAN_VENDOR_ATTR_PNO_SET_LIST_PARAM_EPNO_NETWORK_SSID = 9, | 
 | 1708 | 	QCA_WLAN_VENDOR_ATTR_PNO_SET_LIST_PARAM_EPNO_NETWORK_RSSI_THRESHOLD = 10, | 
 | 1709 | 	QCA_WLAN_VENDOR_ATTR_PNO_SET_LIST_PARAM_EPNO_NETWORK_FLAGS = 11, | 
 | 1710 | 	QCA_WLAN_VENDOR_ATTR_PNO_SET_LIST_PARAM_EPNO_NETWORK_AUTH_BIT = 12, | 
 | 1711 | 	QCA_WLAN_VENDOR_ATTR_PNO_SET_LIST_PARAM_EPNO_TYPE = 13, | 
 | 1712 |  | 
 | 1713 | 	/* keep last */ | 
 | 1714 | 	QCA_WLAN_VENDOR_ATTR_PNO_AFTER_LAST, | 
 | 1715 | 	QCA_WLAN_VENDOR_ATTR_PNO_MAX = | 
 | 1716 | 		QCA_WLAN_VENDOR_ATTR_PNO_AFTER_LAST - 1, | 
 | 1717 | }; | 
 | 1718 |  | 
 | 1719 | /** | 
 | 1720 |  * enum qca_wlan_vendor_attr_roaming_config_params - roaming config params | 
 | 1721 |  * | 
 | 1722 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_INVALID: Invalid initial value | 
 | 1723 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_SUBCMD: roaming sub command | 
 | 1724 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_REQ_ID: Request id | 
 | 1725 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_WHITE_LIST_SSID_NUM_NETWORKS: | 
 | 1726 |  *	number of whitelist networks | 
 | 1727 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_WHITE_LIST_SSID_LIST: | 
 | 1728 |  *	Whitelist ssid list | 
 | 1729 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_WHITE_LIST_SSID: | 
 | 1730 |  *	white list ssid | 
 | 1731 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_A_BAND_BOOST_THRESHOLD: | 
 | 1732 |  *	'a' band boost threshold | 
 | 1733 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_A_BAND_PENALTY_THRESHOLD: | 
 | 1734 |  *	'a' band penalty threshold | 
 | 1735 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_A_BAND_BOOST_FACTOR: | 
 | 1736 |  *	'a' band boost factor | 
 | 1737 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_A_BAND_PENALTY_FACTOR: | 
 | 1738 |  *	'a' band penalty factor | 
 | 1739 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_A_BAND_MAX_BOOST: | 
 | 1740 |  *	'a' band max boost | 
 | 1741 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_LAZY_ROAM_HISTERESYS: | 
 | 1742 |  *	lazy roam histeresys | 
 | 1743 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_ALERT_ROAM_RSSI_TRIGGER: | 
 | 1744 |  *	alert roam rssi trigger | 
 | 1745 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_LAZY_ROAM_ENABLE: | 
 | 1746 |  *	set lazy roam enable | 
 | 1747 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_BSSID_PREFS: | 
 | 1748 |  *	set bssid preference | 
 | 1749 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_LAZY_ROAM_NUM_BSSID: | 
 | 1750 |  *	set lazy roam number of bssid | 
 | 1751 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_LAZY_ROAM_BSSID: | 
 | 1752 |  *	set lazy roam bssid | 
 | 1753 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_LAZY_ROAM_RSSI_MODIFIER: | 
 | 1754 |  *	set lazy roam rssi modifier | 
 | 1755 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_BSSID_PARAMS: | 
 | 1756 |  *	set bssid params | 
 | 1757 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_BSSID_PARAMS_NUM_BSSID: | 
 | 1758 |  *	set bssid params num bssid | 
 | 1759 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_BSSID_PARAMS_BSSID: | 
 | 1760 |  *	set bssid params bssid | 
 | 1761 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_AFTER_LAST: After last | 
 | 1762 |  * @QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_MAX: Max | 
 | 1763 |  */ | 
 | 1764 | enum qca_wlan_vendor_attr_roaming_config_params { | 
 | 1765 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_INVALID = 0, | 
 | 1766 |  | 
 | 1767 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_SUBCMD = 1, | 
 | 1768 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_REQ_ID = 2, | 
 | 1769 |  | 
 | 1770 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_WHITE_LIST_SSID_NUM_NETWORKS = 3, | 
 | 1771 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_WHITE_LIST_SSID_LIST = 4, | 
 | 1772 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_WHITE_LIST_SSID = 5, | 
 | 1773 |  | 
 | 1774 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_A_BAND_BOOST_THRESHOLD = 6, | 
 | 1775 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_A_BAND_PENALTY_THRESHOLD = 7, | 
 | 1776 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_A_BAND_BOOST_FACTOR = 8, | 
 | 1777 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_A_BAND_PENALTY_FACTOR = 9, | 
 | 1778 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_A_BAND_MAX_BOOST = 10, | 
 | 1779 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_LAZY_ROAM_HISTERESYS = 11, | 
 | 1780 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_ALERT_ROAM_RSSI_TRIGGER = 12, | 
 | 1781 |  | 
 | 1782 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_LAZY_ROAM_ENABLE = 13, | 
 | 1783 |  | 
 | 1784 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_BSSID_PREFS = 14, | 
 | 1785 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_LAZY_ROAM_NUM_BSSID = 15, | 
 | 1786 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_LAZY_ROAM_BSSID = 16, | 
 | 1787 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_LAZY_ROAM_RSSI_MODIFIER = 17, | 
 | 1788 |  | 
 | 1789 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_BSSID_PARAMS = 18, | 
 | 1790 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_BSSID_PARAMS_NUM_BSSID = 19, | 
 | 1791 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_SET_BSSID_PARAMS_BSSID = 20, | 
 | 1792 |  | 
 | 1793 | 	/* keep last */ | 
 | 1794 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_AFTER_LAST, | 
 | 1795 | 	QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_MAX = | 
 | 1796 | 		QCA_WLAN_VENDOR_ATTR_ROAMING_PARAM_AFTER_LAST - 1, | 
 | 1797 | }; | 
 | 1798 |  | 
 | 1799 | /** | 
 | 1800 |  * enum qca_wlan_vendor_attr_roam_subcmd - roam sub commands | 
 | 1801 |  * | 
 | 1802 |  * @QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_INVALID: Invalid initial value | 
 | 1803 |  * @QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SSID_WHITE_LIST: ssid white list | 
 | 1804 |  * @QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SET_EXTSCAN_ROAM_PARAMS: roam params | 
 | 1805 |  * @QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SET_LAZY_ROAM: set lazy roam | 
 | 1806 |  * @QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SET_BSSID_PREFS: set bssid prefs | 
 | 1807 |  * @QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SET_BSSID_PARAMS: set bssid params | 
 | 1808 |  * @QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SET_BLACKLIST_BSSID: set blacklist bssid | 
 | 1809 |  * @QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_AFTER_LAST: after last | 
 | 1810 |  * @QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_MAX: subcmd max | 
 | 1811 |  */ | 
 | 1812 | enum qca_wlan_vendor_attr_roam_subcmd { | 
 | 1813 | 	QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_INVALID = 0, | 
 | 1814 | 	QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SSID_WHITE_LIST = 1, | 
 | 1815 | 	QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SET_EXTSCAN_ROAM_PARAMS = 2, | 
 | 1816 | 	QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SET_LAZY_ROAM = 3, | 
 | 1817 | 	QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SET_BSSID_PREFS = 4, | 
 | 1818 | 	QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SET_BSSID_PARAMS = 5, | 
 | 1819 | 	QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_SET_BLACKLIST_BSSID = 6, | 
 | 1820 |  | 
 | 1821 | 	/* KEEP LAST */ | 
 | 1822 | 	QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_AFTER_LAST, | 
 | 1823 | 	QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_MAX = | 
 | 1824 | 		QCA_WLAN_VENDOR_ATTR_ROAM_SUBCMD_AFTER_LAST - 1, | 
 | 1825 | }; | 
 | 1826 |  | 
 | 1827 | /** | 
 | 1828 |  * enum qca_wlan_vendor_attr_get_wifi_info - wifi driver information | 
 | 1829 |  * | 
 | 1830 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_INFO_GET_INVALID: Invalid initial value | 
 | 1831 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_INFO_DRIVER_VERSION: get host driver version | 
 | 1832 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_INFO_FIRMWARE_VERSION: ger firmware version | 
| Ryan Hsu | 7ac8885 | 2016-04-28 10:20:34 -0700 | [diff] [blame] | 1833 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_INFO_RADIO_INDEX - get radio index | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 1834 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_INFO_GET_AFTER_LAST: after last | 
 | 1835 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_INFO_GET_MAX: subcmd max | 
 | 1836 |  */ | 
 | 1837 | enum qca_wlan_vendor_attr_get_wifi_info { | 
 | 1838 | 	QCA_WLAN_VENDOR_ATTR_WIFI_INFO_GET_INVALID = 0, | 
 | 1839 | 	QCA_WLAN_VENDOR_ATTR_WIFI_INFO_DRIVER_VERSION     = 1, | 
 | 1840 | 	QCA_WLAN_VENDOR_ATTR_WIFI_INFO_FIRMWARE_VERSION   = 2, | 
| Ryan Hsu | 7ac8885 | 2016-04-28 10:20:34 -0700 | [diff] [blame] | 1841 | 	QCA_WLAN_VENDOR_ATTR_WIFI_INFO_RADIO_INDEX        = 3, | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 1842 |  | 
 | 1843 | 	/* KEEP LAST */ | 
 | 1844 | 	QCA_WLAN_VENDOR_ATTR_WIFI_INFO_GET_AFTER_LAST, | 
 | 1845 | 	QCA_WLAN_VENDOR_ATTR_WIFI_INFO_GET_MAX  = | 
 | 1846 | 		QCA_WLAN_VENDOR_ATTR_WIFI_INFO_GET_AFTER_LAST - 1, | 
 | 1847 | }; | 
 | 1848 |  | 
 | 1849 | /** | 
 | 1850 |  * enum qca_wlan_vendor_attr_get_logger_features - value for logger | 
 | 1851 |  *                                                 supported features | 
 | 1852 |  * @QCA_WLAN_VENDOR_ATTR_LOGGER_INVALID - Invalid | 
 | 1853 |  * @QCA_WLAN_VENDOR_ATTR_LOGGER_SUPPORTED - Indicate the supported features | 
 | 1854 |  * @QCA_WLAN_VENDOR_ATTR_LOGGER_AFTER_LAST - To keep track of the last enum | 
 | 1855 |  * @QCA_WLAN_VENDOR_ATTR_LOGGER_MAX - max value possible for this type | 
 | 1856 |  * | 
 | 1857 |  * enum values are used for NL attributes for data used by | 
 | 1858 |  * QCA_NL80211_VENDOR_SUBCMD_GET_LOGGER_FEATURE_SET sub command. | 
 | 1859 |  */ | 
 | 1860 | enum qca_wlan_vendor_attr_get_logger_features { | 
 | 1861 | 	QCA_WLAN_VENDOR_ATTR_LOGGER_INVALID = 0, | 
 | 1862 | 	QCA_WLAN_VENDOR_ATTR_LOGGER_SUPPORTED = 1, | 
 | 1863 |  | 
 | 1864 | 	/* keep last */ | 
 | 1865 | 	QCA_WLAN_VENDOR_ATTR_LOGGER_AFTER_LAST, | 
 | 1866 | 	QCA_WLAN_VENDOR_ATTR_LOGGER_MAX = | 
 | 1867 | 		QCA_WLAN_VENDOR_ATTR_LOGGER_AFTER_LAST - 1, | 
 | 1868 | }; | 
 | 1869 |  | 
 | 1870 | /** | 
| Kanchanapally, Vidyullatha | e306281 | 2015-05-22 17:28:57 +0530 | [diff] [blame] | 1871 |  * enum qca_wlan_vendor_attr_link_properties - link properties | 
 | 1872 |  * | 
 | 1873 |  * @QCA_WLAN_VENDOR_ATTR_LINK_PROPERTIES_INVALID: Invalid initial value | 
 | 1874 |  * @QCA_WLAN_VENDOR_ATTR_LINK_PROPERTIES_NSS: Unsigned 8-bit value to | 
 | 1875 |  *	specify the number of spatial streams negotiated | 
 | 1876 |  * @QCA_WLAN_VENDOR_ATTR_LINK_PROPERTIES_RATE_FLAGS: Unsigned 8-bit value | 
 | 1877 |  *	to specify negotiated rate flags i.e. ht, vht and channel width | 
 | 1878 |  * @QCA_WLAN_VENDOR_ATTR_LINK_PROPERTIES_FREQ: Unsigned 32bit value to | 
 | 1879 |  *	specify the operating frequency | 
 | 1880 |  * @QCA_WLAN_VENDOR_ATTR_LINK_PROPERTIES_AFTER_LAST: after last | 
 | 1881 |  * @QCA_WLAN_VENDOR_ATTR_LINK_PROPERTIES_MAX: max value | 
 | 1882 |  */ | 
 | 1883 | enum qca_wlan_vendor_attr_link_properties { | 
 | 1884 | 	QCA_WLAN_VENDOR_ATTR_LINK_PROPERTIES_INVALID = 0, | 
 | 1885 | 	QCA_WLAN_VENDOR_ATTR_LINK_PROPERTIES_NSS = 1, | 
 | 1886 | 	QCA_WLAN_VENDOR_ATTR_LINK_PROPERTIES_RATE_FLAGS = 2, | 
 | 1887 | 	QCA_WLAN_VENDOR_ATTR_LINK_PROPERTIES_FREQ = 3, | 
 | 1888 |  | 
 | 1889 | 	/* KEEP LAST */ | 
 | 1890 | 	QCA_WLAN_VENDOR_ATTR_LINK_PROPERTIES_AFTER_LAST, | 
 | 1891 | 	QCA_WLAN_VENDOR_ATTR_LINK_PROPERTIES_MAX = | 
 | 1892 | 		QCA_WLAN_VENDOR_ATTR_LINK_PROPERTIES_AFTER_LAST - 1, | 
 | 1893 | }; | 
 | 1894 |  | 
 | 1895 | /** | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 1896 |  * enum qca_wlan_vendor_features - vendor device/driver features | 
 | 1897 |  * @QCA_WLAN_VENDOR_FEATURE_KEY_MGMT_OFFLOAD: Device supports key | 
 | 1898 |  * management offload, a mechanism where the station's firmware | 
 | 1899 |  * does the exchange with the AP to establish the temporal keys | 
 | 1900 |  * after roaming, rather than having the supplicant do it. | 
 | 1901 |  * @QCA_WLAN_VENDOR_FEATURE_OFFCHANNEL_SIMULTANEOUS: Device supports | 
 | 1902 |  *        simultaneous off-channel operations. | 
 | 1903 |  */ | 
 | 1904 | enum qca_wlan_vendor_features { | 
 | 1905 | 	QCA_WLAN_VENDOR_FEATURE_KEY_MGMT_OFFLOAD = 0, | 
 | 1906 | 	QCA_WLAN_VENDOR_FEATURE_SUPPORT_HW_MODE_ANY = 1, | 
 | 1907 | 	QCA_WLAN_VENDOR_FEATURE_OFFCHANNEL_SIMULTANEOUS = 2, | 
 | 1908 | 	/* Additional features need to be added above this */ | 
 | 1909 | 	NUM_QCA_WLAN_VENDOR_FEATURES | 
 | 1910 | }; | 
 | 1911 |  | 
 | 1912 | /* Feature defines */ | 
 | 1913 | #define WIFI_FEATURE_INFRA              0x0001  /* Basic infrastructure mode */ | 
 | 1914 | #define WIFI_FEATURE_INFRA_5G           0x0002  /* Support for 5 GHz Band */ | 
 | 1915 | #define WIFI_FEATURE_HOTSPOT            0x0004  /* Support for GAS/ANQP */ | 
 | 1916 | #define WIFI_FEATURE_P2P                0x0008  /* Wifi-Direct */ | 
 | 1917 | #define WIFI_FEATURE_SOFT_AP            0x0010  /* Soft AP */ | 
 | 1918 | #define WIFI_FEATURE_EXTSCAN            0x0020  /* Extended Scan APIs */ | 
 | 1919 | #define WIFI_FEATURE_NAN                0x0040  /* Neighbor Awareness | 
 | 1920 | 						   Networking */ | 
 | 1921 | #define WIFI_FEATURE_D2D_RTT		0x0080  /* Device-to-device RTT */ | 
 | 1922 | #define WIFI_FEATURE_D2AP_RTT           0x0100  /* Device-to-AP RTT */ | 
 | 1923 | #define WIFI_FEATURE_BATCH_SCAN         0x0200  /* Batched Scan (legacy) */ | 
 | 1924 | #define WIFI_FEATURE_PNO                0x0400  /* Preferred network offload */ | 
 | 1925 | #define WIFI_FEATURE_ADDITIONAL_STA     0x0800  /* Support for two STAs */ | 
 | 1926 | #define WIFI_FEATURE_TDLS               0x1000  /* Tunnel directed link | 
 | 1927 | 						   setup */ | 
 | 1928 | #define WIFI_FEATURE_TDLS_OFFCHANNEL	0x2000  /* Support for TDLS off | 
 | 1929 | 						   channel */ | 
 | 1930 | #define WIFI_FEATURE_EPR                0x4000  /* Enhanced power reporting */ | 
 | 1931 | #define WIFI_FEATURE_AP_STA             0x8000  /* Support for AP STA | 
 | 1932 | 						   Concurrency */ | 
 | 1933 | #define WIFI_FEATURE_LINK_LAYER_STATS   0x10000  /* Link layer stats */ | 
 | 1934 | #define WIFI_FEATURE_LOGGER             0x20000  /* WiFi Logger */ | 
 | 1935 | #define WIFI_FEATURE_HAL_EPNO           0x40000  /* WiFi PNO enhanced */ | 
 | 1936 | #define WIFI_FEATURE_RSSI_MONITOR       0x80000  /* RSSI Monitor */ | 
 | 1937 |  | 
 | 1938 | /** | 
 | 1939 |  * enum wifi_logger_supported_features - values for supported logger features | 
 | 1940 |  * @WIFI_LOGGER_MEMORY_DUMP_SUPPORTED - Memory dump of FW | 
 | 1941 |  * @WIFI_LOGGER_PER_PACKET_TX_RX_STATUS_SUPPORTED - Per packet statistics | 
 | 1942 |  * @WIFI_LOGGER_CONNECT_EVENT_SUPPORTED - Logging of Connectivity events | 
 | 1943 |  * @WIFI_LOGGER_POWER_EVENT_SUPPORTED - Power of driver | 
 | 1944 |  * @WIFI_LOGGER_WAKE_LOCK_SUPPORTED - Wakelock of driver | 
 | 1945 |  * @WIFI_LOGGER_WATCHDOG_TIMER_SUPPORTED - monitor FW health | 
 | 1946 |  */ | 
 | 1947 | enum wifi_logger_supported_features { | 
 | 1948 | 	WIFI_LOGGER_MEMORY_DUMP_SUPPORTED = (1 << (0)), | 
 | 1949 | 	WIFI_LOGGER_PER_PACKET_TX_RX_STATUS_SUPPORTED = (1 << (1)), | 
 | 1950 | 	WIFI_LOGGER_CONNECT_EVENT_SUPPORTED = (1 << (2)), | 
 | 1951 | 	WIFI_LOGGER_POWER_EVENT_SUPPORTED = (1 << (3)), | 
 | 1952 | 	WIFI_LOGGER_WAKE_LOCK_SUPPORTED = (1 << (4)), | 
 | 1953 | 	WIFI_LOGGER_VERBOSE_SUPPORTED = (1 << (5)), | 
 | 1954 | 	WIFI_LOGGER_WATCHDOG_TIMER_SUPPORTED = (1 << (6)), | 
 | 1955 | }; | 
 | 1956 |  | 
 | 1957 | /* Add more features here */ | 
 | 1958 | #define WIFI_TDLS_SUPPORT			BIT(0) | 
 | 1959 | #define WIFI_TDLS_EXTERNAL_CONTROL_SUPPORT	BIT(1) | 
 | 1960 | #define WIIF_TDLS_OFFCHANNEL_SUPPORT		BIT(2) | 
 | 1961 |  | 
 | 1962 | #if defined(FEATURE_WLAN_CH_AVOID) || defined(FEATURE_WLAN_FORCE_SAP_SCC) | 
 | 1963 | #define HDD_MAX_AVOID_FREQ_RANGES   4 | 
 | 1964 | /** | 
 | 1965 |  * typedef struct sHddAvoidFreqRange - avoid frequency range | 
 | 1966 |  * | 
 | 1967 |  * @startFreq: Start frequency range | 
 | 1968 |  * @endFreq: End frequency range | 
 | 1969 |  */ | 
 | 1970 | typedef struct sHddAvoidFreqRange { | 
 | 1971 | 	u32 startFreq; | 
 | 1972 | 	u32 endFreq; | 
 | 1973 | } tHddAvoidFreqRange; | 
 | 1974 |  | 
 | 1975 | /** | 
 | 1976 |  * typedef struct sHddAvoidFreqList - avoid frequency list | 
 | 1977 |  * | 
 | 1978 |  * @avoidFreqRangeCount: Avoid frequency range count | 
 | 1979 |  * @avoidFreqRange: Avoid frequency list | 
 | 1980 |  */ | 
 | 1981 | typedef struct sHddAvoidFreqList { | 
 | 1982 | 	u32 avoidFreqRangeCount; | 
 | 1983 | 	tHddAvoidFreqRange avoidFreqRange[HDD_MAX_AVOID_FREQ_RANGES]; | 
 | 1984 | } tHddAvoidFreqList; | 
 | 1985 | #endif /* FEATURE_WLAN_CH_AVOID || FEATURE_WLAN_FORCE_SAP_SCC */ | 
 | 1986 |  | 
 | 1987 | /** | 
 | 1988 |  * enum qca_wlan_vendor_attr_acs_offload | 
 | 1989 |  * | 
 | 1990 |  * @QCA_WLAN_VENDOR_ATTR_ACS_PRIMARY_CHANNEL: ACS selected primary channel | 
 | 1991 |  * @QCA_WLAN_VENDOR_ATTR_ACS_SECONDARY_CHANNEL: ACS selected secondary channel | 
 | 1992 |  * @QCA_WLAN_VENDOR_ATTR_ACS_HW_MODE: hw_mode for ACS | 
 | 1993 |  * @QCA_WLAN_VENDOR_ATTR_ACS_HT_ENABLED: indicate if HT capability is enabled | 
 | 1994 |  * @QCA_WLAN_VENDOR_ATTR_ACS_HT40_ENABLED: indicate HT capability | 
 | 1995 |  */ | 
 | 1996 | enum qca_wlan_vendor_attr_acs_offload { | 
 | 1997 | 	QCA_WLAN_VENDOR_ATTR_ACS_CHANNEL_INVALID = 0, | 
 | 1998 | 	QCA_WLAN_VENDOR_ATTR_ACS_PRIMARY_CHANNEL, | 
 | 1999 | 	QCA_WLAN_VENDOR_ATTR_ACS_SECONDARY_CHANNEL, | 
 | 2000 | 	QCA_WLAN_VENDOR_ATTR_ACS_HW_MODE, | 
 | 2001 | 	QCA_WLAN_VENDOR_ATTR_ACS_HT_ENABLED, | 
 | 2002 | 	QCA_WLAN_VENDOR_ATTR_ACS_HT40_ENABLED, | 
 | 2003 | 	QCA_WLAN_VENDOR_ATTR_ACS_VHT_ENABLED, | 
 | 2004 | 	QCA_WLAN_VENDOR_ATTR_ACS_CHWIDTH, | 
 | 2005 | 	QCA_WLAN_VENDOR_ATTR_ACS_CH_LIST, | 
 | 2006 | 	QCA_WLAN_VENDOR_ATTR_ACS_VHT_SEG0_CENTER_CHANNEL, | 
 | 2007 | 	QCA_WLAN_VENDOR_ATTR_ACS_VHT_SEG1_CENTER_CHANNEL, | 
 | 2008 | 	QCA_WLAN_VENDOR_ATTR_ACS_FREQ_LIST, | 
 | 2009 | 	/* keep last */ | 
 | 2010 | 	QCA_WLAN_VENDOR_ATTR_ACS_AFTER_LAST, | 
 | 2011 | 	QCA_WLAN_VENDOR_ATTR_ACS_MAX = | 
| Peng Xu | 62c8c43 | 2016-05-09 15:23:02 -0700 | [diff] [blame] | 2012 | 		QCA_WLAN_VENDOR_ATTR_ACS_AFTER_LAST - 1 | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2013 | }; | 
 | 2014 |  | 
 | 2015 | /** | 
 | 2016 |  * enum qca_wlan_vendor_acs_hw_mode | 
 | 2017 |  * | 
 | 2018 |  * @QCA_ACS_MODE_IEEE80211B: 11b mode | 
 | 2019 |  * @QCA_ACS_MODE_IEEE80211G: 11g mode | 
 | 2020 |  * @QCA_ACS_MODE_IEEE80211A: 11a mode | 
 | 2021 |  * @QCA_ACS_MODE_IEEE80211AD: 11ad mode | 
 | 2022 |  */ | 
 | 2023 | enum qca_wlan_vendor_acs_hw_mode { | 
 | 2024 | 	QCA_ACS_MODE_IEEE80211B, | 
 | 2025 | 	QCA_ACS_MODE_IEEE80211G, | 
 | 2026 | 	QCA_ACS_MODE_IEEE80211A, | 
 | 2027 | 	QCA_ACS_MODE_IEEE80211AD, | 
 | 2028 | 	QCA_ACS_MODE_IEEE80211ANY, | 
 | 2029 | }; | 
 | 2030 |  | 
 | 2031 | /** | 
 | 2032 |  * enum qca_wlan_vendor_config: wifi config attr | 
 | 2033 |  * | 
 | 2034 |  * @QCA_WLAN_VENDOR_ATTR_CONFIG_INVALID: invalid config | 
 | 2035 |  * @QCA_WLAN_VENDOR_ATTR_CONFIG_MODULATED_DTIM: modulated dtim | 
 | 2036 |  * @QCA_WLAN_VENDOR_ATTR_CONFIG_STATS_AVG_FACTOR: stats avg. factor | 
 | 2037 |  * @QCA_WLAN_VENDOR_ATTR_CONFIG_GUARD_TIME: guard time | 
| Krunal Soni | e353194 | 2016-04-12 17:43:53 -0700 | [diff] [blame] | 2038 |  * @QCA_WLAN_VENDOR_ATTR_CONFIG_FINE_TIME_MEASUREMENT: fine time measurement | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2039 |  * @QCA_WLAN_VENDOR_ATTR_CONFIG_LAST: last config | 
 | 2040 |  * @QCA_WLAN_VENDOR_ATTR_CONFIG_MAX: max config | 
 | 2041 |  */ | 
 | 2042 | enum qca_wlan_vendor_config { | 
 | 2043 | 	QCA_WLAN_VENDOR_ATTR_CONFIG_INVALID = 0, | 
 | 2044 | 	QCA_WLAN_VENDOR_ATTR_CONFIG_MODULATED_DTIM, | 
 | 2045 | 	QCA_WLAN_VENDOR_ATTR_CONFIG_STATS_AVG_FACTOR, | 
 | 2046 | 	QCA_WLAN_VENDOR_ATTR_CONFIG_GUARD_TIME, | 
| Krunal Soni | e353194 | 2016-04-12 17:43:53 -0700 | [diff] [blame] | 2047 | 	QCA_WLAN_VENDOR_ATTR_CONFIG_FINE_TIME_MEASUREMENT, | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2048 | 	/* keep last */ | 
 | 2049 | 	QCA_WLAN_VENDOR_ATTR_CONFIG_LAST, | 
 | 2050 | 	QCA_WLAN_VENDOR_ATTR_CONFIG_MAX = | 
 | 2051 | 		QCA_WLAN_VENDOR_ATTR_CONFIG_LAST - 1 | 
 | 2052 | }; | 
 | 2053 |  | 
 | 2054 | /** | 
 | 2055 |  * enum qca_wlan_vendor_attr_wifi_logger_start - Enum for wifi logger starting | 
 | 2056 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_START_INVALID: Invalid attribute | 
 | 2057 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_RING_ID: Ring ID | 
 | 2058 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_VERBOSE_LEVEL: Verbose level | 
 | 2059 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_FLAGS: Flag | 
 | 2060 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_START_AFTER_LAST: Last value | 
 | 2061 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_START_MAX: Max value | 
 | 2062 |  */ | 
 | 2063 | enum qca_wlan_vendor_attr_wifi_logger_start { | 
 | 2064 | 	QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_START_INVALID = 0, | 
 | 2065 | 	QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_RING_ID = 1, | 
 | 2066 | 	QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_VERBOSE_LEVEL = 2, | 
 | 2067 | 	QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_FLAGS = 3, | 
 | 2068 | 	/* keep last */ | 
 | 2069 | 	QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_START_AFTER_LAST, | 
 | 2070 | 	QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_START_MAX = | 
 | 2071 | 		QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_START_AFTER_LAST - 1, | 
 | 2072 | }; | 
 | 2073 |  | 
 | 2074 | /* | 
 | 2075 |  * enum qca_wlan_vendor_attr_wifi_logger_get_ring_data - Get ring data | 
 | 2076 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_GET_RING_DATA_INVALID: Invalid attribute | 
 | 2077 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_GET_RING_DATA_ID: Ring ID | 
 | 2078 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_GET_RING_DATA_AFTER_LAST: Last value | 
 | 2079 |  * @QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_GET_RING_DATA_MAX: Max value | 
 | 2080 |  */ | 
 | 2081 | enum qca_wlan_vendor_attr_wifi_logger_get_ring_data { | 
 | 2082 | 	QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_GET_RING_DATA_INVALID = 0, | 
 | 2083 | 	QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_GET_RING_DATA_ID = 1, | 
 | 2084 | 	/* keep last */ | 
 | 2085 | 	QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_GET_RING_DATA_AFTER_LAST, | 
 | 2086 | 	QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_GET_RING_DATA_MAX = | 
 | 2087 | 		QCA_WLAN_VENDOR_ATTR_WIFI_LOGGER_GET_RING_DATA_AFTER_LAST - 1, | 
 | 2088 | }; | 
 | 2089 |  | 
 | 2090 | #ifdef WLAN_FEATURE_OFFLOAD_PACKETS | 
 | 2091 | /** | 
 | 2092 |  * enum wlan_offloaded_packets_control - control commands | 
 | 2093 |  * @WLAN_START_OFFLOADED_PACKETS: start offloaded packets | 
 | 2094 |  * @WLAN_STOP_OFFLOADED_PACKETS: stop offloaded packets | 
 | 2095 |  * | 
 | 2096 |  */ | 
 | 2097 | enum wlan_offloaded_packets_control { | 
 | 2098 | 	WLAN_START_OFFLOADED_PACKETS = 1, | 
 | 2099 | 	WLAN_STOP_OFFLOADED_PACKETS  = 2 | 
 | 2100 | }; | 
 | 2101 |  | 
 | 2102 | /** | 
 | 2103 |  * enum qca_wlan_vendor_attr_offloaded_packets - offloaded packets | 
 | 2104 |  * @QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_INVALID: invalid | 
 | 2105 |  * @QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_SENDING_CONTROL: control | 
 | 2106 |  * @QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_REQUEST_ID: request id | 
 | 2107 |  * @QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_IP_PACKET_DATA: ip packet data | 
 | 2108 |  * @QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_SRC_MAC_ADDR: src mac address | 
 | 2109 |  * @QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_DST_MAC_ADDR: destination mac address | 
 | 2110 |  * @QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_PERIOD: period in milli seconds | 
 | 2111 |  * @QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_AFTER_LAST: after last | 
 | 2112 |  * @QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_MAX: max | 
 | 2113 |  */ | 
 | 2114 | enum qca_wlan_vendor_attr_offloaded_packets { | 
 | 2115 | 	QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_INVALID = 0, | 
 | 2116 | 	QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_SENDING_CONTROL, | 
 | 2117 | 	QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_REQUEST_ID, | 
 | 2118 |  | 
 | 2119 | 	/* Packet in hex format */ | 
 | 2120 | 	QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_IP_PACKET_DATA, | 
 | 2121 | 	QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_SRC_MAC_ADDR, | 
 | 2122 | 	QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_DST_MAC_ADDR, | 
 | 2123 | 	QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_PERIOD, | 
 | 2124 |  | 
 | 2125 | 	/* keep last */ | 
 | 2126 | 	QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_AFTER_LAST, | 
 | 2127 | 	QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_MAX = | 
 | 2128 | 		QCA_WLAN_VENDOR_ATTR_OFFLOADED_PACKETS_AFTER_LAST - 1, | 
 | 2129 | }; | 
 | 2130 | #endif | 
 | 2131 |  | 
 | 2132 | /** | 
 | 2133 |  * enum qca_wlan_rssi_monitoring_control - rssi control commands | 
 | 2134 |  * @QCA_WLAN_RSSI_MONITORING_CONTROL_INVALID: invalid | 
 | 2135 |  * @QCA_WLAN_RSSI_MONITORING_START: rssi monitoring start | 
 | 2136 |  * @QCA_WLAN_RSSI_MONITORING_STOP: rssi monitoring stop | 
 | 2137 |  */ | 
 | 2138 | enum qca_wlan_rssi_monitoring_control { | 
 | 2139 | 	QCA_WLAN_RSSI_MONITORING_CONTROL_INVALID = 0, | 
 | 2140 | 	QCA_WLAN_RSSI_MONITORING_START, | 
 | 2141 | 	QCA_WLAN_RSSI_MONITORING_STOP, | 
 | 2142 | }; | 
 | 2143 |  | 
 | 2144 | /** | 
 | 2145 |  * enum qca_wlan_vendor_attr_rssi_monitoring - rssi monitoring | 
 | 2146 |  * @QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_INVALID: Invalid | 
 | 2147 |  * @QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_CONTROL: control | 
 | 2148 |  * @QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_MAX_RSSI: max rssi | 
 | 2149 |  * @QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_MIN_RSSI: min rssi | 
 | 2150 |  * @QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_CUR_BSSID: current bssid | 
 | 2151 |  * @QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_CUR_RSSI: current rssi | 
 | 2152 |  * @QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_AFTER_LAST: after last | 
 | 2153 |  * @QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_MAX: max | 
 | 2154 |  */ | 
 | 2155 | enum qca_wlan_vendor_attr_rssi_monitoring { | 
 | 2156 | 	QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_INVALID = 0, | 
 | 2157 |  | 
 | 2158 | 	QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_CONTROL, | 
 | 2159 | 	QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_REQUEST_ID, | 
 | 2160 |  | 
 | 2161 | 	QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_MAX_RSSI, | 
 | 2162 | 	QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_MIN_RSSI, | 
 | 2163 |  | 
 | 2164 | 	/* attributes to be used/received in callback */ | 
 | 2165 | 	QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_CUR_BSSID, | 
 | 2166 | 	QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_CUR_RSSI, | 
 | 2167 |  | 
 | 2168 | 	/* keep last */ | 
 | 2169 | 	QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_AFTER_LAST, | 
 | 2170 | 	QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_MAX = | 
 | 2171 | 		QCA_WLAN_VENDOR_ATTR_RSSI_MONITORING_AFTER_LAST - 1, | 
 | 2172 | }; | 
 | 2173 |  | 
 | 2174 | /** | 
| Arun Khandavalli | 2476ef5 | 2016-04-26 20:19:43 +0530 | [diff] [blame] | 2175 |  * enum set_reset_packet_filter - set packet filter control commands | 
 | 2176 |  * @QCA_WLAN_SET_PACKET_FILTER: Set Packet Filter | 
 | 2177 |  * @QCA_WLAN_GET_PACKET_FILTER: Get Packet filter | 
 | 2178 |  */ | 
 | 2179 | enum set_reset_packet_filter { | 
 | 2180 | 	QCA_WLAN_SET_PACKET_FILTER = 1, | 
 | 2181 | 	QCA_WLAN_GET_PACKET_FILTER = 2, | 
 | 2182 | }; | 
 | 2183 |  | 
 | 2184 | /** | 
 | 2185 |  * enum qca_wlan_vendor_attr_packet_filter - BPF control commands | 
 | 2186 |  * @QCA_WLAN_VENDOR_ATTR_PACKET_FILTER_INVALID: Invalid | 
 | 2187 |  * @QCA_WLAN_VENDOR_ATTR_SET_RESET_PACKET_FILTER: Filter ID | 
 | 2188 |  * @QCA_WLAN_VENDOR_ATTR_PACKET_FILTER_VERSION: Filter Version | 
 | 2189 |  * @QCA_WLAN_VENDOR_ATTR_PACKET_FILTER_SIZE: Total Length | 
 | 2190 |  * @QCA_WLAN_VENDOR_ATTR_PACKET_FILTER_CURRENT_OFFSET: Current offset | 
 | 2191 |  * @QCA_WLAN_VENDOR_ATTR_PACKET_FILTER_PROGRAM: length of BPF instructions | 
 | 2192 |  */ | 
 | 2193 | enum qca_wlan_vendor_attr_packet_filter { | 
 | 2194 | 	QCA_WLAN_VENDOR_ATTR_PACKET_FILTER_INVALID = 0, | 
 | 2195 | 	QCA_WLAN_VENDOR_ATTR_SET_RESET_PACKET_FILTER, | 
 | 2196 | 	QCA_WLAN_VENDOR_ATTR_PACKET_FILTER_VERSION, | 
 | 2197 | 	QCA_WLAN_VENDOR_ATTR_PACKET_FILTER_ID, | 
 | 2198 | 	QCA_WLAN_VENDOR_ATTR_PACKET_FILTER_SIZE, | 
 | 2199 | 	QCA_WLAN_VENDOR_ATTR_PACKET_FILTER_CURRENT_OFFSET, | 
 | 2200 | 	QCA_WLAN_VENDOR_ATTR_PACKET_FILTER_PROGRAM, | 
 | 2201 |  | 
 | 2202 | 	/* keep last */ | 
 | 2203 | 	QCA_WLAN_VENDOR_ATTR_PACKET_FILTER_AFTER_LAST, | 
 | 2204 | 	QCA_WLAN_VENDOR_ATTR_PACKET_FILTER_MAX = | 
 | 2205 | 	QCA_WLAN_VENDOR_ATTR_PACKET_FILTER_AFTER_LAST - 1, | 
 | 2206 | }; | 
 | 2207 |  | 
 | 2208 | /** | 
| Manikandan Mohan | 5356c2b | 2016-04-03 15:51:35 -0700 | [diff] [blame] | 2209 |  * enum qca_vendor_attr_get_tsf: Vendor attributes for TSF capture | 
 | 2210 |  * @QCA_WLAN_VENDOR_ATTR_TSF_INVALID: Invalid attribute value | 
 | 2211 |  * @QCA_WLAN_VENDOR_ATTR_TSF_CMD: enum qca_tsf_operation (u32) | 
 | 2212 |  * @QCA_WLAN_VENDOR_ATTR_TSF_TIMER_VALUE: Unsigned 64 bit TSF timer value | 
 | 2213 |  * @QCA_WLAN_VENDOR_ATTR_TSF_SOC_TIMER_VALUE: Unsigned 64 bit Synchronized | 
 | 2214 |  *	SOC timer value at TSF capture | 
 | 2215 |  * @QCA_WLAN_VENDOR_ATTR_TSF_AFTER_LAST: after last | 
 | 2216 |  * @QCA_WLAN_VENDOR_ATTR_TSF_MAX: Max value | 
 | 2217 |  */ | 
 | 2218 | enum qca_vendor_attr_tsf_cmd { | 
 | 2219 | 	QCA_WLAN_VENDOR_ATTR_TSF_INVALID = 0, | 
 | 2220 | 	QCA_WLAN_VENDOR_ATTR_TSF_CMD, | 
 | 2221 | 	QCA_WLAN_VENDOR_ATTR_TSF_TIMER_VALUE, | 
 | 2222 | 	QCA_WLAN_VENDOR_ATTR_TSF_SOC_TIMER_VALUE, | 
 | 2223 | 	QCA_WLAN_VENDOR_ATTR_TSF_AFTER_LAST, | 
 | 2224 | 	QCA_WLAN_VENDOR_ATTR_TSF_MAX = | 
 | 2225 | 		QCA_WLAN_VENDOR_ATTR_TSF_AFTER_LAST - 1 | 
 | 2226 | }; | 
 | 2227 |  | 
 | 2228 | /** | 
 | 2229 |  * enum qca_tsf_operation: TSF driver commands | 
 | 2230 |  * @QCA_TSF_CAPTURE: Initiate TSF Capture | 
 | 2231 |  * @QCA_TSF_GET: Get TSF capture value | 
 | 2232 |  * @QCA_TSF_SYNC_GET: Initiate TSF capture and return with captured value | 
 | 2233 |  */ | 
 | 2234 | enum qca_tsf_cmd { | 
 | 2235 | 	QCA_TSF_CAPTURE, | 
 | 2236 | 	QCA_TSF_GET, | 
 | 2237 | 	QCA_TSF_SYNC_GET, | 
 | 2238 | }; | 
 | 2239 |  | 
 | 2240 | /** | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2241 |  * enum qca_vendor_attr_get_preferred_freq_list - get preferred channel list | 
 | 2242 |  * @QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_INVALID: invalid value | 
 | 2243 |  * @QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_IFACE_TYPE: interface type | 
 | 2244 |  * @QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST: preferred frequency list | 
 | 2245 |  * @QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_AFTER_LAST: after last | 
 | 2246 |  * @QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_MAX: max | 
 | 2247 |  */ | 
 | 2248 | enum qca_vendor_attr_get_preferred_freq_list { | 
 | 2249 | 	QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_INVALID, | 
 | 2250 | 	/* A 32-unsigned value; the interface type/mode for which the preferred | 
 | 2251 | 	 * frequency list is requested (see enum qca_iface_type for possible | 
 | 2252 | 	 * values); used in both south- and north-bound. | 
 | 2253 | 	 */ | 
 | 2254 | 	QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_IFACE_TYPE, | 
 | 2255 | 	/* An array of 32-unsigned values; values are frequency (MHz); used | 
 | 2256 | 	 * in north-bound only. | 
 | 2257 | 	 */ | 
 | 2258 | 	QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST, | 
 | 2259 | 	/* keep last */ | 
 | 2260 | 	QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_AFTER_LAST, | 
 | 2261 | 	QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_MAX = | 
| Peng Xu | 62c8c43 | 2016-05-09 15:23:02 -0700 | [diff] [blame] | 2262 | 		QCA_WLAN_VENDOR_ATTR_GET_PREFERRED_FREQ_LIST_AFTER_LAST - 1 | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2263 | }; | 
 | 2264 |  | 
 | 2265 | /** | 
 | 2266 |  * enum qca_vendor_attr_probable_oper_channel - channel hint | 
 | 2267 |  * @QCA_WLAN_VENDOR_ATTR_PROBABLE_OPER_CHANNEL_INVALID: invalid value | 
 | 2268 |  * @QCA_WLAN_VENDOR_ATTR_PROBABLE_OPER_CHANNEL_IFACE_TYPE: interface type | 
 | 2269 |  * @QCA_WLAN_VENDOR_ATTR_PROBABLE_OPER_CHANNEL_FREQ: frequency hint value | 
 | 2270 |  * @QCA_WLAN_VENDOR_ATTR_PROBABLE_OPER_CHANNEL_AFTER_LAST: last | 
 | 2271 |  * @QCA_WLAN_VENDOR_ATTR_PROBABLE_OPER_CHANNEL_MAX: max | 
 | 2272 |  */ | 
 | 2273 | enum qca_vendor_attr_probable_oper_channel { | 
 | 2274 | 	QCA_WLAN_VENDOR_ATTR_PROBABLE_OPER_CHANNEL_INVALID, | 
 | 2275 | 	/* 32-bit unsigned value; indicates the connection/iface type likely to | 
 | 2276 | 	  * come on this channel (see enum qca_iface_type). | 
 | 2277 | 	  */ | 
 | 2278 | 	QCA_WLAN_VENDOR_ATTR_PROBABLE_OPER_CHANNEL_IFACE_TYPE, | 
 | 2279 | 	/* 32-bit unsigned value; the frequency (MHz) of the probable channel */ | 
 | 2280 | 	QCA_WLAN_VENDOR_ATTR_PROBABLE_OPER_CHANNEL_FREQ, | 
 | 2281 | 	/* keep last */ | 
 | 2282 | 	QCA_WLAN_VENDOR_ATTR_PROBABLE_OPER_CHANNEL_AFTER_LAST, | 
 | 2283 | 	QCA_WLAN_VENDOR_ATTR_PROBABLE_OPER_CHANNEL_MAX = | 
| Peng Xu | 62c8c43 | 2016-05-09 15:23:02 -0700 | [diff] [blame] | 2284 | 		QCA_WLAN_VENDOR_ATTR_PROBABLE_OPER_CHANNEL_AFTER_LAST - 1 | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2285 | }; | 
 | 2286 |  | 
 | 2287 | /** | 
| Ravi Joshi | deb5a8d | 2015-11-09 19:11:43 -0800 | [diff] [blame] | 2288 |  * enum qca_wlan_vendor_attr_gw_param_config - gateway param config | 
 | 2289 |  * @QCA_WLAN_VENDOR_ATTR_GW_PARAM_CONFIG_INVALID: Invalid | 
 | 2290 |  * @QCA_WLAN_VENDOR_ATTR_GW_PARAM_CONFIG_GW_MAC_ADDR: gateway mac addr | 
 | 2291 |  * @QCA_WLAN_VENDOR_ATTR_GW_PARAM_CONFIG_IPV4_ADDR: ipv4 addr | 
 | 2292 |  * @QCA_WLAN_VENDOR_ATTR_GW_PARAM_CONFIG_IPV6_ADDR: ipv6 addr | 
 | 2293 |  */ | 
 | 2294 | enum qca_wlan_vendor_attr_gw_param_config { | 
 | 2295 | 	QCA_WLAN_VENDOR_ATTR_GW_PARAM_CONFIG_INVALID = 0, | 
 | 2296 | 	QCA_WLAN_VENDOR_ATTR_GW_PARAM_CONFIG_GW_MAC_ADDR, | 
 | 2297 | 	QCA_WLAN_VENDOR_ATTR_GW_PARAM_CONFIG_IPV4_ADDR, | 
 | 2298 | 	QCA_WLAN_VENDOR_ATTR_GW_PARAM_CONFIG_IPV6_ADDR, | 
 | 2299 | 	QCA_WLAN_VENDOR_ATTR_GW_PARAM_CONFIG_AFTER_LAST, | 
 | 2300 | 	QCA_WLAN_VENDOR_ATTR_GW_PARAM_CONFIG_MAX = | 
 | 2301 | 		QCA_WLAN_VENDOR_ATTR_GW_PARAM_CONFIG_AFTER_LAST - 1, | 
 | 2302 | }; | 
 | 2303 |  | 
 | 2304 | /** | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2305 |  * enum drv_dbs_capability - DBS capability | 
 | 2306 |  * @DRV_DBS_CAPABILITY_DISABLED: DBS disabled | 
 | 2307 |  * @DRV_DBS_CAPABILITY_1X1: 1x1 | 
 | 2308 |  * @DRV_DBS_CAPABILITY_2X2: 2x2 | 
 | 2309 |  */ | 
 | 2310 | enum drv_dbs_capability { | 
 | 2311 | 	DRV_DBS_CAPABILITY_DISABLED, /* not supported or disabled */ | 
 | 2312 | 	DRV_DBS_CAPABILITY_1X1, | 
 | 2313 | 	DRV_DBS_CAPABILITY_2X2, | 
 | 2314 | }; | 
 | 2315 |  | 
| Peng Xu | 278d012 | 2015-09-24 16:34:17 -0700 | [diff] [blame] | 2316 | /** | 
 | 2317 |  * enum qca_vendor_attr_ota_test - Enable OTA test | 
 | 2318 |  * @QCA_WLAN_VENDOR_ATTR_OTA_TEST_INVALID: invalid value | 
 | 2319 |  * @QCA_WLAN_VENDOR_ATTR_OTA_TEST_ENABLE: enable OTA test | 
 | 2320 |  * @QCA_WLAN_VENDOR_ATTR_OTA_TEST_AFTER_LAST: after last | 
 | 2321 |  * @QCA_WLAN_VENDOR_ATTR_OTA_TEST_MAX: max | 
 | 2322 |  */ | 
 | 2323 | enum qca_vendor_attr_ota_test { | 
 | 2324 | 	QCA_WLAN_VENDOR_ATTR_OTA_TEST_INVALID, | 
 | 2325 | 	/* 8-bit unsigned value to indicate if OTA test is enabled */ | 
 | 2326 | 	QCA_WLAN_VENDOR_ATTR_OTA_TEST_ENABLE, | 
 | 2327 | 	/* keep last */ | 
 | 2328 | 	QCA_WLAN_VENDOR_ATTR_OTA_TEST_AFTER_LAST, | 
 | 2329 | 	QCA_WLAN_VENDOR_ATTR_OTA_TEST_MAX = | 
| Peng Xu | 62c8c43 | 2016-05-09 15:23:02 -0700 | [diff] [blame] | 2330 | 		QCA_WLAN_VENDOR_ATTR_OTA_TEST_AFTER_LAST - 1 | 
| Peng Xu | 278d012 | 2015-09-24 16:34:17 -0700 | [diff] [blame] | 2331 | }; | 
 | 2332 |  | 
| Peng Xu | 4d67c8f | 2015-10-16 16:02:26 -0700 | [diff] [blame] | 2333 | /** enum qca_vendor_attr_txpower_scale - vendor sub commands index | 
 | 2334 |  * @QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE_INVALID: invalid value | 
 | 2335 |  * @QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE: scaling value | 
 | 2336 |  * @QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE_AFTER_LAST: last value | 
 | 2337 |  * @QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE_MAX: max value | 
 | 2338 |  */ | 
 | 2339 | enum qca_vendor_attr_txpower_scale { | 
 | 2340 | 	QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE_INVALID, | 
 | 2341 | 	/* 8-bit unsigned value to indicate the scaling of tx power */ | 
 | 2342 | 	QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE, | 
 | 2343 | 	/* keep last */ | 
 | 2344 | 	QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE_AFTER_LAST, | 
 | 2345 | 	QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE_MAX = | 
| Peng Xu | 62c8c43 | 2016-05-09 15:23:02 -0700 | [diff] [blame] | 2346 | 		QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE_AFTER_LAST - 1 | 
| Peng Xu | 4d67c8f | 2015-10-16 16:02:26 -0700 | [diff] [blame] | 2347 | }; | 
 | 2348 |  | 
 | 2349 | /** | 
 | 2350 |  * enum qca_vendor_attr_txpower_scale_decr_db - vendor sub commands index | 
 | 2351 |  * @QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE_DECR_DB_INVALID: invalid value | 
 | 2352 |  * @QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE_DECR_DB: scaling value | 
 | 2353 |  * @QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE_DECR_DB_AFTER_LAST: last value | 
 | 2354 |  * @QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE_DECR_DB_MAX: max value | 
 | 2355 |  */ | 
 | 2356 | enum qca_vendor_attr_txpower_scale_decr_db { | 
 | 2357 | 	QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE_DECR_DB_INVALID, | 
 | 2358 | 	/* 8-bit unsigned value to indicate the scaling of tx power */ | 
 | 2359 | 	QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE_DECR_DB, | 
 | 2360 | 	/* keep last */ | 
 | 2361 | 	QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE_DECR_DB_AFTER_LAST, | 
 | 2362 | 	QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE_DECR_DB_MAX = | 
| Peng Xu | 62c8c43 | 2016-05-09 15:23:02 -0700 | [diff] [blame] | 2363 | 		QCA_WLAN_VENDOR_ATTR_TXPOWER_SCALE_DECR_DB_AFTER_LAST - 1 | 
| Peng Xu | 4d67c8f | 2015-10-16 16:02:26 -0700 | [diff] [blame] | 2364 | }; | 
 | 2365 |  | 
| Agrawal Ashish | c9ddbab | 2016-05-25 12:04:47 +0530 | [diff] [blame] | 2366 | /** | 
 | 2367 |  * enum qca_wlan_vendor_attr_sap_config - config params for sap configuration | 
 | 2368 |  * @QCA_WLAN_VENDOR_ATTR_SAP_CONFIG_INVALID: invalid | 
 | 2369 |  * @QCA_WLAN_VENDOR_ATTR_SAP_CONFIG_CHANNEL: Channel on which SAP should start | 
| Manishekar Chandrasekaran | 1db3abe | 2016-06-24 03:27:07 +0530 | [diff] [blame] | 2370 |  * @QCA_WLAN_VENDOR_ATTR_SAP_MANDATORY_FREQUENCY_LIST: List of frequencies on | 
 | 2371 |  *  which AP is expected to operate. This is irrespective of ACS configuration. | 
 | 2372 |  *  This list is a priority based one and is looked for before the AP is created | 
 | 2373 |  *  to ensure the best concurrency sessions (avoid MCC and use DBS/SCC) co-exist | 
 | 2374 |  *  in the system. | 
| Agrawal Ashish | c9ddbab | 2016-05-25 12:04:47 +0530 | [diff] [blame] | 2375 |  * @QCA_WLAN_VENDOR_ATTR_SAP_CONFIG_AFTER_LAST: after last | 
 | 2376 |  * @QCA_WLAN_VENDOR_ATTR_SAP_CONFIG_MAX: max attribute | 
 | 2377 |  */ | 
 | 2378 | enum qca_wlan_vendor_attr_sap_config { | 
 | 2379 | 	QCA_WLAN_VENDOR_ATTR_SAP_CONFIG_INVALID = 0, | 
 | 2380 | 	QCA_WLAN_VENDOR_ATTR_SAP_CONFIG_CHANNEL, | 
| Manishekar Chandrasekaran | 1db3abe | 2016-06-24 03:27:07 +0530 | [diff] [blame] | 2381 | 	QCA_WLAN_VENDOR_ATTR_SAP_MANDATORY_FREQUENCY_LIST = 2, | 
| Agrawal Ashish | c9ddbab | 2016-05-25 12:04:47 +0530 | [diff] [blame] | 2382 | 	/* keep last */ | 
 | 2383 | 	QCA_WLAN_VENDOR_ATTR_SAP_CONFIG_AFTER_LAST, | 
 | 2384 | 	QCA_WLAN_VENDOR_ATTR_SAP_CONFIG_MAX = | 
 | 2385 | 	QCA_WLAN_VENDOR_ATTR_SAP_CONFIG_AFTER_LAST - 1, | 
 | 2386 | }; | 
 | 2387 |  | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2388 | struct cfg80211_bss *wlan_hdd_cfg80211_update_bss_db(hdd_adapter_t *pAdapter, | 
 | 2389 | 						tCsrRoamInfo *pRoamInfo); | 
 | 2390 |  | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2391 | int wlan_hdd_cfg80211_pmksa_candidate_notify(hdd_adapter_t *pAdapter, | 
 | 2392 | 					tCsrRoamInfo *pRoamInfo, | 
 | 2393 | 					int index, bool preauth); | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2394 |  | 
 | 2395 | #ifdef FEATURE_WLAN_LFR_METRICS | 
| Anurag Chouhan | fb54ab0 | 2016-02-18 18:00:46 +0530 | [diff] [blame] | 2396 | QDF_STATUS wlan_hdd_cfg80211_roam_metrics_preauth(hdd_adapter_t *pAdapter, | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2397 | 						tCsrRoamInfo *pRoamInfo); | 
 | 2398 |  | 
| Anurag Chouhan | fb54ab0 | 2016-02-18 18:00:46 +0530 | [diff] [blame] | 2399 | QDF_STATUS wlan_hdd_cfg80211_roam_metrics_preauth_status(hdd_adapter_t * | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2400 | 							 pAdapter, | 
 | 2401 | 							 tCsrRoamInfo * | 
 | 2402 | 							 pRoamInfo, | 
 | 2403 | 							 bool preauth_status); | 
 | 2404 |  | 
| Anurag Chouhan | fb54ab0 | 2016-02-18 18:00:46 +0530 | [diff] [blame] | 2405 | QDF_STATUS wlan_hdd_cfg80211_roam_metrics_handover(hdd_adapter_t *pAdapter, | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2406 | 						   tCsrRoamInfo *pRoamInfo); | 
 | 2407 | #endif | 
 | 2408 |  | 
 | 2409 | #ifdef FEATURE_WLAN_WAPI | 
 | 2410 | void wlan_hdd_cfg80211_set_key_wapi(hdd_adapter_t *pAdapter, uint8_t key_index, | 
 | 2411 | 				    const uint8_t *mac_addr, const uint8_t *key, | 
 | 2412 | 				    int key_Len); | 
 | 2413 | #endif | 
| Prashanth Bhatta | c2a16f6 | 2015-12-03 15:06:15 -0800 | [diff] [blame] | 2414 | hdd_context_t *hdd_cfg80211_wiphy_alloc(int priv_size); | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2415 |  | 
 | 2416 | int wlan_hdd_cfg80211_scan(struct wiphy *wiphy, | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2417 | 			   struct cfg80211_scan_request *request); | 
 | 2418 |  | 
 | 2419 | int wlan_hdd_cfg80211_init(struct device *dev, | 
 | 2420 | 			   struct wiphy *wiphy, struct hdd_config *pCfg); | 
 | 2421 |  | 
| Abhishek Singh | f512bf3 | 2016-05-04 16:47:46 +0530 | [diff] [blame] | 2422 | void wlan_hdd_cfg80211_deinit(struct wiphy *wiphy); | 
 | 2423 |  | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2424 | void wlan_hdd_update_wiphy(struct wiphy *wiphy, struct hdd_config *pCfg); | 
 | 2425 |  | 
 | 2426 | int wlan_hdd_cfg80211_register(struct wiphy *wiphy); | 
 | 2427 | void wlan_hdd_cfg80211_register_frames(hdd_adapter_t *pAdapter); | 
 | 2428 |  | 
 | 2429 | void wlan_hdd_cfg80211_deregister_frames(hdd_adapter_t *pAdapter); | 
 | 2430 |  | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2431 | void hdd_reg_notifier(struct wiphy *wiphy, | 
 | 2432 | 				 struct regulatory_request *request); | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2433 |  | 
 | 2434 | extern void hdd_conn_set_connection_state(hdd_adapter_t *pAdapter, | 
 | 2435 | 					  eConnectionState connState); | 
| Anurag Chouhan | fb54ab0 | 2016-02-18 18:00:46 +0530 | [diff] [blame] | 2436 | QDF_STATUS wlan_hdd_validate_operation_channel(hdd_adapter_t *pAdapter, | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2437 | 					       int channel); | 
 | 2438 | #ifdef FEATURE_WLAN_TDLS | 
 | 2439 | int wlan_hdd_cfg80211_send_tdls_discover_req(struct wiphy *wiphy, | 
 | 2440 | 					     struct net_device *dev, u8 *peer); | 
 | 2441 | #endif | 
 | 2442 | #ifdef WLAN_FEATURE_GTK_OFFLOAD | 
 | 2443 | extern void wlan_hdd_cfg80211_update_replay_counter_callback(void | 
 | 2444 | 							     *callbackContext, | 
 | 2445 | 							     tpSirGtkOffloadGetInfoRspParams | 
 | 2446 | 							     pGtkOffloadGetInfoRsp); | 
 | 2447 | #endif | 
 | 2448 | void *wlan_hdd_change_country_code_cb(void *pAdapter); | 
 | 2449 | void hdd_select_cbmode(hdd_adapter_t *pAdapter, uint8_t operationChannel); | 
 | 2450 |  | 
 | 2451 | uint8_t *wlan_hdd_cfg80211_get_ie_ptr(const uint8_t *ies_ptr, int length, | 
 | 2452 | 				      uint8_t eid); | 
 | 2453 |  | 
| Ryan Hsu | 8ecb0fa | 2016-01-18 15:40:55 -0800 | [diff] [blame] | 2454 | void wlan_hdd_del_station(hdd_adapter_t *adapter); | 
 | 2455 |  | 
 | 2456 | #if defined(USE_CFG80211_DEL_STA_V2) | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2457 | int wlan_hdd_cfg80211_del_station(struct wiphy *wiphy, | 
 | 2458 | 				  struct net_device *dev, | 
 | 2459 | 				  struct station_del_parameters *param); | 
 | 2460 | #else | 
 | 2461 | #if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 16, 0)) | 
 | 2462 | int wlan_hdd_cfg80211_del_station(struct wiphy *wiphy, | 
 | 2463 | 				  struct net_device *dev, | 
 | 2464 | 				  const uint8_t *mac); | 
 | 2465 | #else | 
 | 2466 | int wlan_hdd_cfg80211_del_station(struct wiphy *wiphy, | 
 | 2467 | 				  struct net_device *dev, | 
 | 2468 | 				  uint8_t *mac); | 
 | 2469 | #endif | 
| Ryan Hsu | 8ecb0fa | 2016-01-18 15:40:55 -0800 | [diff] [blame] | 2470 | #endif /* USE_CFG80211_DEL_STA_V2 */ | 
 | 2471 |  | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2472 |  | 
 | 2473 | #if  defined(QCA_WIFI_FTM)     && defined(CONFIG_NL80211_TESTMODE) | 
 | 2474 | void wlan_hdd_testmode_rx_event(void *buf, size_t buf_len); | 
 | 2475 | #endif | 
 | 2476 |  | 
 | 2477 | #if defined(FEATURE_WLAN_CH_AVOID) || defined(FEATURE_WLAN_FORCE_SAP_SCC) | 
 | 2478 | int wlan_hdd_send_avoid_freq_event(hdd_context_t *pHddCtx, | 
 | 2479 | 				tHddAvoidFreqList * pAvoidFreqList); | 
 | 2480 | #endif /* FEATURE_WLAN_CH_AVOID || FEATURE_WLAN_FORCE_SAP_SCC */ | 
 | 2481 |  | 
 | 2482 | #ifdef FEATURE_WLAN_EXTSCAN | 
 | 2483 | void wlan_hdd_cfg80211_extscan_callback(void *ctx, | 
 | 2484 | 					const uint16_t evType, void *pMsg); | 
 | 2485 | #endif /* FEATURE_WLAN_EXTSCAN */ | 
 | 2486 |  | 
 | 2487 | void hdd_rssi_threshold_breached(void *hddctx, | 
 | 2488 | 				 struct rssi_breach_event *data); | 
 | 2489 |  | 
 | 2490 | struct cfg80211_bss *wlan_hdd_cfg80211_update_bss_list(hdd_adapter_t *pAdapter, | 
 | 2491 | 						       tCsrRoamInfo *pRoamInfo); | 
 | 2492 |  | 
 | 2493 | int wlan_hdd_cfg80211_update_bss(struct wiphy *wiphy, | 
 | 2494 | 						hdd_adapter_t *pAdapter, | 
 | 2495 | 						uint32_t scan_timestamp); | 
 | 2496 |  | 
 | 2497 | void wlan_hdd_cfg80211_acs_ch_select_evt(hdd_adapter_t *adapter); | 
 | 2498 |  | 
 | 2499 | #ifdef WLAN_FEATURE_ROAM_OFFLOAD | 
 | 2500 | int wlan_hdd_send_roam_auth_event(hdd_context_t *hdd_ctx_ptr, uint8_t *bssid, | 
| Prashanth Bhatta | bfc2529 | 2015-11-05 11:16:21 -0800 | [diff] [blame] | 2501 | 		uint8_t *req_rsn_ie, uint32_t req_rsn_length, uint8_t | 
 | 2502 | 		*rsp_rsn_ie, uint32_t rsp_rsn_length, tCsrRoamInfo | 
 | 2503 | 		*roam_info_ptr); | 
 | 2504 | #else | 
 | 2505 | static inline int wlan_hdd_send_roam_auth_event(hdd_context_t *hdd_ctx_ptr, | 
 | 2506 | 		uint8_t *bssid, uint8_t *req_rsn_ie, uint32_t req_rsn_length, | 
 | 2507 | 		uint8_t *rsp_rsn_ie, uint32_t rsp_rsn_length, tCsrRoamInfo | 
 | 2508 | 		*roam_info_ptr) | 
 | 2509 | { | 
 | 2510 | 	return 0; | 
 | 2511 | } | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2512 | #endif | 
 | 2513 |  | 
 | 2514 | int wlan_hdd_cfg80211_update_apies(hdd_adapter_t *adapter); | 
 | 2515 |  | 
| Ryan Hsu | 9206a4e | 2016-01-19 17:23:13 -0800 | [diff] [blame] | 2516 | #if !(defined (SUPPORT_WDEV_CFG80211_VENDOR_EVENT_ALLOC)) &&	\ | 
 | 2517 | 	(LINUX_VERSION_CODE < KERNEL_VERSION(4, 1, 0)) && 	\ | 
 | 2518 | 	!(defined(WITH_BACKPORTS)) | 
 | 2519 |  | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2520 | static inline struct sk_buff * | 
 | 2521 | backported_cfg80211_vendor_event_alloc(struct wiphy *wiphy, | 
 | 2522 | 					struct wireless_dev *wdev, | 
 | 2523 | 					int approxlen, | 
 | 2524 | 					int event_idx, gfp_t gfp) | 
 | 2525 | { | 
| Ryan Hsu | 9206a4e | 2016-01-19 17:23:13 -0800 | [diff] [blame] | 2526 | 	struct sk_buff *skb; | 
 | 2527 |  | 
 | 2528 | 	skb = cfg80211_vendor_event_alloc(wiphy, approxlen, event_idx, gfp); | 
 | 2529 |  | 
 | 2530 | 	if (skb && wdev) { | 
 | 2531 | 		struct nlattr *attr; | 
 | 2532 | 		u32 ifindex = wdev->netdev->ifindex; | 
 | 2533 |  | 
 | 2534 | 		nla_nest_cancel(skb, ((void **)skb->cb)[2]); | 
 | 2535 | 		if (nla_put_u32(skb, NL80211_ATTR_IFINDEX, ifindex)) | 
 | 2536 | 			goto nla_fail; | 
 | 2537 |  | 
 | 2538 | 		attr = nla_nest_start(skb, NL80211_ATTR_VENDOR_DATA); | 
 | 2539 | 		((void **)skb->cb)[2] = attr; | 
 | 2540 | 	} | 
 | 2541 |  | 
 | 2542 | 	return skb; | 
 | 2543 |  | 
 | 2544 | nla_fail: | 
 | 2545 | 	kfree_skb(skb); | 
 | 2546 | 	return NULL; | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2547 | } | 
 | 2548 | #define cfg80211_vendor_event_alloc backported_cfg80211_vendor_event_alloc | 
 | 2549 | #endif | 
 | 2550 | int wlan_hdd_sap_cfg_dfs_override(hdd_adapter_t *adapter); | 
 | 2551 |  | 
 | 2552 | enum cds_con_mode wlan_hdd_convert_nl_iftype_to_hdd_type( | 
 | 2553 | 					enum nl80211_iftype type); | 
| Prakash Dhavali | 7090c5f | 2015-11-02 17:55:19 -0800 | [diff] [blame] | 2554 |  | 
| Deepak Dhamdhere | 29b3b2f | 2015-01-22 11:09:55 -0800 | [diff] [blame] | 2555 | int wlan_hdd_disable_dfs_chan_scan(hdd_context_t *hdd_ctx, | 
 | 2556 | 				   hdd_adapter_t *adapter, | 
 | 2557 | 				   uint32_t no_dfs_flag); | 
 | 2558 |  | 
| Amar Singhal | 6842e8f | 2016-02-23 16:30:32 -0800 | [diff] [blame] | 2559 | int wlan_hdd_cfg80211_update_band(struct wiphy *wiphy, | 
 | 2560 | 				  eCsrBand eBand); | 
| Arun Khandavalli | 2476ef5 | 2016-04-26 20:19:43 +0530 | [diff] [blame] | 2561 |  | 
 | 2562 | void hdd_get_bpf_offload_cb(void *hdd_context, struct sir_bpf_get_offload *); | 
 | 2563 | void hdd_init_bpf_completion(void); | 
| Mahesh A Saptasagar | c35e8bf | 2016-06-17 20:03:46 +0530 | [diff] [blame] | 2564 |  | 
 | 2565 | #if defined(CFG80211_DISCONNECTED_V2) || \ | 
 | 2566 | (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 2, 0)) | 
 | 2567 | static inline void wlan_hdd_cfg80211_indicate_disconnect(struct net_device *dev, | 
 | 2568 | 							bool locally_generated, | 
 | 2569 | 							int reason) | 
 | 2570 | { | 
 | 2571 | 	cfg80211_disconnected(dev, reason, NULL, 0, | 
 | 2572 | 				locally_generated, GFP_KERNEL); | 
 | 2573 | } | 
 | 2574 | #else | 
 | 2575 | static inline void wlan_hdd_cfg80211_indicate_disconnect(struct net_device *dev, | 
 | 2576 | 							bool locally_generated, | 
 | 2577 | 							int reason) | 
 | 2578 | { | 
 | 2579 | 	cfg80211_disconnected(dev, reason, NULL, 0, | 
 | 2580 | 				GFP_KERNEL); | 
 | 2581 | } | 
 | 2582 | #endif | 
| Deepak Dhamdhere | 29b3b2f | 2015-01-22 11:09:55 -0800 | [diff] [blame] | 2583 | #endif |