aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless
diff options
context:
space:
mode:
authorLior David <qca_liord@qca.qualcomm.com>2016-11-23 09:06:42 -0500
committerKalle Valo <kvalo@qca.qualcomm.com>2016-11-23 09:50:03 -0500
commitcbf795c195fb48dafd5f160570af9086fe04d4d0 (patch)
tree97690065513da17a81765fc3d7c1fcf2cab1ca92 /drivers/net/wireless
parent035859a5117bc609132c3586b6c6bf4aba72425c (diff)
wil6210: align to latest auto generated wmi.h
Align to latest version of the auto generated wmi file describing the interface with FW. Signed-off-by: Lior David <qca_liord@qca.qualcomm.com> Signed-off-by: Maya Erez <qca_merez@qca.qualcomm.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r--drivers/net/wireless/ath/wil6210/wmi.h208
1 files changed, 206 insertions, 2 deletions
diff --git a/drivers/net/wireless/ath/wil6210/wmi.h b/drivers/net/wireless/ath/wil6210/wmi.h
index f430e8a80603..2cc7775c0b1f 100644
--- a/drivers/net/wireless/ath/wil6210/wmi.h
+++ b/drivers/net/wireless/ath/wil6210/wmi.h
@@ -51,8 +51,10 @@ enum wmi_mid {
51 * the host 51 * the host
52 */ 52 */
53enum wmi_fw_capability { 53enum wmi_fw_capability {
54 WMI_FW_CAPABILITY_FTM = 0, 54 WMI_FW_CAPABILITY_FTM = 0,
55 WMI_FW_CAPABILITY_PS_CONFIG = 1, 55 WMI_FW_CAPABILITY_PS_CONFIG = 1,
56 WMI_FW_CAPABILITY_RF_SECTORS = 2,
57 WMI_FW_CAPABILITY_MGMT_RETRY_LIMIT = 3,
56 WMI_FW_CAPABILITY_MAX, 58 WMI_FW_CAPABILITY_MAX,
57}; 59};
58 60
@@ -182,11 +184,18 @@ enum wmi_command_id {
182 WMI_RS_CFG_CMDID = 0x921, 184 WMI_RS_CFG_CMDID = 0x921,
183 WMI_GET_DETAILED_RS_RES_CMDID = 0x922, 185 WMI_GET_DETAILED_RS_RES_CMDID = 0x922,
184 WMI_AOA_MEAS_CMDID = 0x923, 186 WMI_AOA_MEAS_CMDID = 0x923,
187 WMI_SET_MGMT_RETRY_LIMIT_CMDID = 0x930,
188 WMI_GET_MGMT_RETRY_LIMIT_CMDID = 0x931,
185 WMI_TOF_SESSION_START_CMDID = 0x991, 189 WMI_TOF_SESSION_START_CMDID = 0x991,
186 WMI_TOF_GET_CAPABILITIES_CMDID = 0x992, 190 WMI_TOF_GET_CAPABILITIES_CMDID = 0x992,
187 WMI_TOF_SET_LCR_CMDID = 0x993, 191 WMI_TOF_SET_LCR_CMDID = 0x993,
188 WMI_TOF_SET_LCI_CMDID = 0x994, 192 WMI_TOF_SET_LCI_CMDID = 0x994,
189 WMI_TOF_CHANNEL_INFO_CMDID = 0x995, 193 WMI_TOF_CHANNEL_INFO_CMDID = 0x995,
194 WMI_GET_RF_SECTOR_PARAMS_CMDID = 0x9A0,
195 WMI_SET_RF_SECTOR_PARAMS_CMDID = 0x9A1,
196 WMI_GET_SELECTED_RF_SECTOR_INDEX_CMDID = 0x9A2,
197 WMI_SET_SELECTED_RF_SECTOR_INDEX_CMDID = 0x9A3,
198 WMI_SET_RF_SECTOR_ON_CMDID = 0x9A4,
190 WMI_SET_MAC_ADDRESS_CMDID = 0xF003, 199 WMI_SET_MAC_ADDRESS_CMDID = 0xF003,
191 WMI_ABORT_SCAN_CMDID = 0xF007, 200 WMI_ABORT_SCAN_CMDID = 0xF007,
192 WMI_SET_PROMISCUOUS_MODE_CMDID = 0xF041, 201 WMI_SET_PROMISCUOUS_MODE_CMDID = 0xF041,
@@ -879,6 +888,14 @@ struct wmi_aoa_meas_cmd {
879 __le32 meas_rf_mask; 888 __le32 meas_rf_mask;
880} __packed; 889} __packed;
881 890
891/* WMI_SET_MGMT_RETRY_LIMIT_CMDID */
892struct wmi_set_mgmt_retry_limit_cmd {
893 /* MAC retransmit limit for mgmt frames */
894 u8 mgmt_retry_limit;
895 /* alignment to 32b */
896 u8 reserved[3];
897} __packed;
898
882enum wmi_tof_burst_duration { 899enum wmi_tof_burst_duration {
883 WMI_TOF_BURST_DURATION_250_USEC = 2, 900 WMI_TOF_BURST_DURATION_250_USEC = 2,
884 WMI_TOF_BURST_DURATION_500_USEC = 3, 901 WMI_TOF_BURST_DURATION_500_USEC = 3,
@@ -1035,12 +1052,19 @@ enum wmi_event_id {
1035 WMI_RS_CFG_DONE_EVENTID = 0x1921, 1052 WMI_RS_CFG_DONE_EVENTID = 0x1921,
1036 WMI_GET_DETAILED_RS_RES_EVENTID = 0x1922, 1053 WMI_GET_DETAILED_RS_RES_EVENTID = 0x1922,
1037 WMI_AOA_MEAS_EVENTID = 0x1923, 1054 WMI_AOA_MEAS_EVENTID = 0x1923,
1055 WMI_SET_MGMT_RETRY_LIMIT_EVENTID = 0x1930,
1056 WMI_GET_MGMT_RETRY_LIMIT_EVENTID = 0x1931,
1038 WMI_TOF_SESSION_END_EVENTID = 0x1991, 1057 WMI_TOF_SESSION_END_EVENTID = 0x1991,
1039 WMI_TOF_GET_CAPABILITIES_EVENTID = 0x1992, 1058 WMI_TOF_GET_CAPABILITIES_EVENTID = 0x1992,
1040 WMI_TOF_SET_LCR_EVENTID = 0x1993, 1059 WMI_TOF_SET_LCR_EVENTID = 0x1993,
1041 WMI_TOF_SET_LCI_EVENTID = 0x1994, 1060 WMI_TOF_SET_LCI_EVENTID = 0x1994,
1042 WMI_TOF_FTM_PER_DEST_RES_EVENTID = 0x1995, 1061 WMI_TOF_FTM_PER_DEST_RES_EVENTID = 0x1995,
1043 WMI_TOF_CHANNEL_INFO_EVENTID = 0x1996, 1062 WMI_TOF_CHANNEL_INFO_EVENTID = 0x1996,
1063 WMI_GET_RF_SECTOR_PARAMS_DONE_EVENTID = 0x19A0,
1064 WMI_SET_RF_SECTOR_PARAMS_DONE_EVENTID = 0x19A1,
1065 WMI_GET_SELECTED_RF_SECTOR_INDEX_DONE_EVENTID = 0x19A2,
1066 WMI_SET_SELECTED_RF_SECTOR_INDEX_DONE_EVENTID = 0x19A3,
1067 WMI_SET_RF_SECTOR_ON_DONE_EVENTID = 0x19A4,
1044 WMI_SET_CHANNEL_EVENTID = 0x9000, 1068 WMI_SET_CHANNEL_EVENTID = 0x9000,
1045 WMI_ASSOC_REQ_EVENTID = 0x9001, 1069 WMI_ASSOC_REQ_EVENTID = 0x9001,
1046 WMI_EAPOL_RX_EVENTID = 0x9002, 1070 WMI_EAPOL_RX_EVENTID = 0x9002,
@@ -2070,6 +2094,22 @@ struct wmi_aoa_meas_event {
2070 u8 meas_data[WMI_AOA_MAX_DATA_SIZE]; 2094 u8 meas_data[WMI_AOA_MAX_DATA_SIZE];
2071} __packed; 2095} __packed;
2072 2096
2097/* WMI_SET_MGMT_RETRY_LIMIT_EVENTID */
2098struct wmi_set_mgmt_retry_limit_event {
2099 /* enum wmi_fw_status */
2100 u8 status;
2101 /* alignment to 32b */
2102 u8 reserved[3];
2103} __packed;
2104
2105/* WMI_GET_MGMT_RETRY_LIMIT_EVENTID */
2106struct wmi_get_mgmt_retry_limit_event {
2107 /* MAC retransmit limit for mgmt frames */
2108 u8 mgmt_retry_limit;
2109 /* alignment to 32b */
2110 u8 reserved[3];
2111} __packed;
2112
2073/* WMI_TOF_GET_CAPABILITIES_EVENTID */ 2113/* WMI_TOF_GET_CAPABILITIES_EVENTID */
2074struct wmi_tof_get_capabilities_event { 2114struct wmi_tof_get_capabilities_event {
2075 u8 ftm_capability; 2115 u8 ftm_capability;
@@ -2184,4 +2224,168 @@ struct wmi_tof_channel_info_event {
2184 u8 report[0]; 2224 u8 report[0];
2185} __packed; 2225} __packed;
2186 2226
2227/* Result status codes for WMI commands */
2228enum wmi_rf_sector_status {
2229 WMI_RF_SECTOR_STATUS_SUCCESS = 0x00,
2230 WMI_RF_SECTOR_STATUS_BAD_PARAMETERS_ERROR = 0x01,
2231 WMI_RF_SECTOR_STATUS_BUSY_ERROR = 0x02,
2232 WMI_RF_SECTOR_STATUS_NOT_SUPPORTED_ERROR = 0x03,
2233};
2234
2235/* Types of the RF sector (TX,RX) */
2236enum wmi_rf_sector_type {
2237 WMI_RF_SECTOR_TYPE_RX = 0x00,
2238 WMI_RF_SECTOR_TYPE_TX = 0x01,
2239};
2240
2241/* Content of RF Sector (six 32-bits registers) */
2242struct wmi_rf_sector_info {
2243 /* Phase values for RF Chains[15-0] (2bits per RF chain) */
2244 __le32 psh_hi;
2245 /* Phase values for RF Chains[31-16] (2bits per RF chain) */
2246 __le32 psh_lo;
2247 /* ETYPE Bit0 for all RF chains[31-0] - bit0 of Edge amplifier gain
2248 * index
2249 */
2250 __le32 etype0;
2251 /* ETYPE Bit1 for all RF chains[31-0] - bit1 of Edge amplifier gain
2252 * index
2253 */
2254 __le32 etype1;
2255 /* ETYPE Bit2 for all RF chains[31-0] - bit2 of Edge amplifier gain
2256 * index
2257 */
2258 __le32 etype2;
2259 /* D-Type values (3bits each) for 8 Distribution amplifiers + X16
2260 * switch bits
2261 */
2262 __le32 dtype_swch_off;
2263} __packed;
2264
2265#define WMI_INVALID_RF_SECTOR_INDEX (0xFFFF)
2266#define WMI_MAX_RF_MODULES_NUM (8)
2267
2268/* WMI_GET_RF_SECTOR_PARAMS_CMD */
2269struct wmi_get_rf_sector_params_cmd {
2270 /* Sector number to be retrieved */
2271 __le16 sector_idx;
2272 /* enum wmi_rf_sector_type - type of requested RF sector */
2273 u8 sector_type;
2274 /* bitmask vector specifying destination RF modules */
2275 u8 rf_modules_vec;
2276} __packed;
2277
2278/* \WMI_GET_RF_SECTOR_PARAMS_DONE_EVENT */
2279struct wmi_get_rf_sector_params_done_event {
2280 /* result status of WMI_GET_RF_SECTOR_PARAMS_CMD (enum
2281 * wmi_rf_sector_status)
2282 */
2283 u8 status;
2284 /* align next field to U64 boundary */
2285 u8 reserved[7];
2286 /* TSF timestamp when RF sectors where retrieved */
2287 __le64 tsf;
2288 /* Content of RF sector retrieved from each RF module */
2289 struct wmi_rf_sector_info sectors_info[WMI_MAX_RF_MODULES_NUM];
2290} __packed;
2291
2292/* WMI_SET_RF_SECTOR_PARAMS_CMD */
2293struct wmi_set_rf_sector_params_cmd {
2294 /* Sector number to be retrieved */
2295 __le16 sector_idx;
2296 /* enum wmi_rf_sector_type - type of requested RF sector */
2297 u8 sector_type;
2298 /* bitmask vector specifying destination RF modules */
2299 u8 rf_modules_vec;
2300 /* Content of RF sector to be written to each RF module */
2301 struct wmi_rf_sector_info sectors_info[WMI_MAX_RF_MODULES_NUM];
2302} __packed;
2303
2304/* \WMI_SET_RF_SECTOR_PARAMS_DONE_EVENT */
2305struct wmi_set_rf_sector_params_done_event {
2306 /* result status of WMI_SET_RF_SECTOR_PARAMS_CMD (enum
2307 * wmi_rf_sector_status)
2308 */
2309 u8 status;
2310} __packed;
2311
2312/* WMI_GET_SELECTED_RF_SECTOR_INDEX_CMD - Get RF sector index selected by
2313 * TXSS/BRP for communication with specified CID
2314 */
2315struct wmi_get_selected_rf_sector_index_cmd {
2316 /* Connection/Station ID in [0:7] range */
2317 u8 cid;
2318 /* type of requested RF sector (enum wmi_rf_sector_type) */
2319 u8 sector_type;
2320 /* align to U32 boundary */
2321 u8 reserved[2];
2322} __packed;
2323
2324/* \WMI_GET_SELECTED_RF_SECTOR_INDEX_DONE_EVENT - Returns retrieved RF sector
2325 * index selected by TXSS/BRP for communication with specified CID
2326 */
2327struct wmi_get_selected_rf_sector_index_done_event {
2328 /* Retrieved sector index selected in TXSS (for TX sector request) or
2329 * BRP (for RX sector request)
2330 */
2331 __le16 sector_idx;
2332 /* result status of WMI_GET_SELECTED_RF_SECTOR_INDEX_CMD (enum
2333 * wmi_rf_sector_status)
2334 */
2335 u8 status;
2336 /* align next field to U64 boundary */
2337 u8 reserved[5];
2338 /* TSF timestamp when result was retrieved */
2339 __le64 tsf;
2340} __packed;
2341
2342/* WMI_SET_SELECTED_RF_SECTOR_INDEX_CMD - Force RF sector index for
2343 * communication with specified CID. Assumes that TXSS/BRP is disabled by
2344 * other command
2345 */
2346struct wmi_set_selected_rf_sector_index_cmd {
2347 /* Connection/Station ID in [0:7] range */
2348 u8 cid;
2349 /* type of requested RF sector (enum wmi_rf_sector_type) */
2350 u8 sector_type;
2351 /* Forced sector index */
2352 __le16 sector_idx;
2353} __packed;
2354
2355/* \WMI_SET_SELECTED_RF_SECTOR_INDEX_DONE_EVENT - Success/Fail status for
2356 * WMI_SET_SELECTED_RF_SECTOR_INDEX_CMD
2357 */
2358struct wmi_set_selected_rf_sector_index_done_event {
2359 /* result status of WMI_SET_SELECTED_RF_SECTOR_INDEX_CMD (enum
2360 * wmi_rf_sector_status)
2361 */
2362 u8 status;
2363 /* align to U32 boundary */
2364 u8 reserved[3];
2365} __packed;
2366
2367/* WMI_SET_RF_SECTOR_ON_CMD - Activates specified sector for specified rf
2368 * modules
2369 */
2370struct wmi_set_rf_sector_on_cmd {
2371 /* Sector index to be activated */
2372 __le16 sector_idx;
2373 /* type of requested RF sector (enum wmi_rf_sector_type) */
2374 u8 sector_type;
2375 /* bitmask vector specifying destination RF modules */
2376 u8 rf_modules_vec;
2377} __packed;
2378
2379/* \WMI_SET_RF_SECTOR_ON_DONE_EVENT - Success/Fail status for
2380 * WMI_SET_RF_SECTOR_ON_CMD
2381 */
2382struct wmi_set_rf_sector_on_done_event {
2383 /* result status of WMI_SET_RF_SECTOR_ON_CMD (enum
2384 * wmi_rf_sector_status)
2385 */
2386 u8 status;
2387 /* align to U32 boundary */
2388 u8 reserved[3];
2389} __packed;
2390
2187#endif /* __WILOCITY_WMI_H__ */ 2391#endif /* __WILOCITY_WMI_H__ */