wmi.h (3a37471551cd3b287ce7f02ed25bcf8ec37a191d) | wmi.h (90ffabb08b7d0627239c7dd53c3c7065a158508c) |
---|---|
1/* 2 * Copyright (c) 2012-2017 Qualcomm Atheros, Inc. 3 * Copyright (c) 2006-2012 Wilocity 4 * 5 * Permission to use, copy, modify, and/or distribute this software for any 6 * purpose with or without fee is hereby granted, provided that the above 7 * copyright notice and this permission notice appear in all copies. 8 * --- 44 unchanged lines hidden (view full) --- 53 */ 54enum wmi_fw_capability { 55 WMI_FW_CAPABILITY_FTM = 0, 56 WMI_FW_CAPABILITY_PS_CONFIG = 1, 57 WMI_FW_CAPABILITY_RF_SECTORS = 2, 58 WMI_FW_CAPABILITY_MGMT_RETRY_LIMIT = 3, 59 WMI_FW_CAPABILITY_DISABLE_AP_SME = 4, 60 WMI_FW_CAPABILITY_WMI_ONLY = 5, | 1/* 2 * Copyright (c) 2012-2017 Qualcomm Atheros, Inc. 3 * Copyright (c) 2006-2012 Wilocity 4 * 5 * Permission to use, copy, modify, and/or distribute this software for any 6 * purpose with or without fee is hereby granted, provided that the above 7 * copyright notice and this permission notice appear in all copies. 8 * --- 44 unchanged lines hidden (view full) --- 53 */ 54enum wmi_fw_capability { 55 WMI_FW_CAPABILITY_FTM = 0, 56 WMI_FW_CAPABILITY_PS_CONFIG = 1, 57 WMI_FW_CAPABILITY_RF_SECTORS = 2, 58 WMI_FW_CAPABILITY_MGMT_RETRY_LIMIT = 3, 59 WMI_FW_CAPABILITY_DISABLE_AP_SME = 4, 60 WMI_FW_CAPABILITY_WMI_ONLY = 5, |
61 WMI_FW_CAPABILITY_THERMAL_THROTTLING = 7, |
|
61 WMI_FW_CAPABILITY_MAX, 62}; 63 64/* WMI_CMD_HDR */ 65struct wmi_cmd_hdr { 66 u8 mid; 67 u8 reserved; 68 __le16 command_id; --- 68 unchanged lines hidden (view full) --- 137 WMI_BF_TRIG_CMDID = 0x83A, 138 WMI_LINK_MAINTAIN_CFG_WRITE_CMDID = 0x842, 139 WMI_LINK_MAINTAIN_CFG_READ_CMDID = 0x843, 140 WMI_SET_SECTORS_CMDID = 0x849, 141 WMI_MAINTAIN_PAUSE_CMDID = 0x850, 142 WMI_MAINTAIN_RESUME_CMDID = 0x851, 143 WMI_RS_MGMT_CMDID = 0x852, 144 WMI_RF_MGMT_CMDID = 0x853, | 62 WMI_FW_CAPABILITY_MAX, 63}; 64 65/* WMI_CMD_HDR */ 66struct wmi_cmd_hdr { 67 u8 mid; 68 u8 reserved; 69 __le16 command_id; --- 68 unchanged lines hidden (view full) --- 138 WMI_BF_TRIG_CMDID = 0x83A, 139 WMI_LINK_MAINTAIN_CFG_WRITE_CMDID = 0x842, 140 WMI_LINK_MAINTAIN_CFG_READ_CMDID = 0x843, 141 WMI_SET_SECTORS_CMDID = 0x849, 142 WMI_MAINTAIN_PAUSE_CMDID = 0x850, 143 WMI_MAINTAIN_RESUME_CMDID = 0x851, 144 WMI_RS_MGMT_CMDID = 0x852, 145 WMI_RF_MGMT_CMDID = 0x853, |
145 WMI_THERMAL_THROTTLING_CTRL_CMDID = 0x854, 146 WMI_THERMAL_THROTTLING_GET_STATUS_CMDID = 0x855, | |
147 WMI_OTP_READ_CMDID = 0x856, 148 WMI_OTP_WRITE_CMDID = 0x857, 149 WMI_LED_CFG_CMDID = 0x858, 150 /* Performance monitoring commands */ 151 WMI_BF_CTRL_CMDID = 0x862, 152 WMI_NOTIFY_REQ_CMDID = 0x863, 153 WMI_GET_STATUS_CMDID = 0x864, 154 WMI_GET_RF_STATUS_CMDID = 0x866, --- 32 unchanged lines hidden (view full) --- 187 WMI_RS_CFG_CMDID = 0x921, 188 WMI_GET_DETAILED_RS_RES_CMDID = 0x922, 189 WMI_AOA_MEAS_CMDID = 0x923, 190 WMI_BRP_SET_ANT_LIMIT_CMDID = 0x924, 191 WMI_SET_MGMT_RETRY_LIMIT_CMDID = 0x930, 192 WMI_GET_MGMT_RETRY_LIMIT_CMDID = 0x931, 193 WMI_NEW_STA_CMDID = 0x935, 194 WMI_DEL_STA_CMDID = 0x936, | 146 WMI_OTP_READ_CMDID = 0x856, 147 WMI_OTP_WRITE_CMDID = 0x857, 148 WMI_LED_CFG_CMDID = 0x858, 149 /* Performance monitoring commands */ 150 WMI_BF_CTRL_CMDID = 0x862, 151 WMI_NOTIFY_REQ_CMDID = 0x863, 152 WMI_GET_STATUS_CMDID = 0x864, 153 WMI_GET_RF_STATUS_CMDID = 0x866, --- 32 unchanged lines hidden (view full) --- 186 WMI_RS_CFG_CMDID = 0x921, 187 WMI_GET_DETAILED_RS_RES_CMDID = 0x922, 188 WMI_AOA_MEAS_CMDID = 0x923, 189 WMI_BRP_SET_ANT_LIMIT_CMDID = 0x924, 190 WMI_SET_MGMT_RETRY_LIMIT_CMDID = 0x930, 191 WMI_GET_MGMT_RETRY_LIMIT_CMDID = 0x931, 192 WMI_NEW_STA_CMDID = 0x935, 193 WMI_DEL_STA_CMDID = 0x936, |
194 WMI_SET_THERMAL_THROTTLING_CFG_CMDID = 0x940, 195 WMI_GET_THERMAL_THROTTLING_CFG_CMDID = 0x941, |
|
195 WMI_TOF_SESSION_START_CMDID = 0x991, 196 WMI_TOF_GET_CAPABILITIES_CMDID = 0x992, 197 WMI_TOF_SET_LCR_CMDID = 0x993, 198 WMI_TOF_SET_LCI_CMDID = 0x994, 199 WMI_TOF_CHANNEL_INFO_CMDID = 0x995, 200 WMI_TOF_SET_TX_RX_OFFSET_CMDID = 0x997, 201 WMI_TOF_GET_TX_RX_OFFSET_CMDID = 0x998, 202 WMI_GET_RF_SECTOR_PARAMS_CMDID = 0x9A0, --- 230 unchanged lines hidden (view full) --- 433 WMI_RF_MGMT_GET_STATUS = 0x02, 434}; 435 436/* WMI_RF_MGMT_CMDID */ 437struct wmi_rf_mgmt_cmd { 438 __le32 rf_mgmt_type; 439} __packed; 440 | 196 WMI_TOF_SESSION_START_CMDID = 0x991, 197 WMI_TOF_GET_CAPABILITIES_CMDID = 0x992, 198 WMI_TOF_SET_LCR_CMDID = 0x993, 199 WMI_TOF_SET_LCI_CMDID = 0x994, 200 WMI_TOF_CHANNEL_INFO_CMDID = 0x995, 201 WMI_TOF_SET_TX_RX_OFFSET_CMDID = 0x997, 202 WMI_TOF_GET_TX_RX_OFFSET_CMDID = 0x998, 203 WMI_GET_RF_SECTOR_PARAMS_CMDID = 0x9A0, --- 230 unchanged lines hidden (view full) --- 434 WMI_RF_MGMT_GET_STATUS = 0x02, 435}; 436 437/* WMI_RF_MGMT_CMDID */ 438struct wmi_rf_mgmt_cmd { 439 __le32 rf_mgmt_type; 440} __packed; 441 |
441/* WMI_THERMAL_THROTTLING_CTRL_CMDID */ 442#define THERMAL_THROTTLING_USE_DEFAULT_MAX_TXOP_LENGTH (0xFFFFFFFF) 443 444/* WMI_THERMAL_THROTTLING_CTRL_CMDID */ 445struct wmi_thermal_throttling_ctrl_cmd { 446 __le32 time_on_usec; 447 __le32 time_off_usec; 448 __le32 max_txop_length_usec; 449} __packed; 450 | |
451/* WMI_RF_RX_TEST_CMDID */ 452struct wmi_rf_rx_test_cmd { 453 __le32 sector; 454} __packed; 455 456/* WMI_CORR_MEASURE_CMDID */ 457struct wmi_corr_measure_cmd { 458 __le32 freq_mhz; --- 85 unchanged lines hidden (view full) --- 544 545/* WMI_PCP_START_CMDID */ 546struct wmi_pcp_start_cmd { 547 __le16 bcon_interval; 548 u8 pcp_max_assoc_sta; 549 u8 hidden_ssid; 550 u8 is_go; 551 u8 reserved0[5]; | 442/* WMI_RF_RX_TEST_CMDID */ 443struct wmi_rf_rx_test_cmd { 444 __le32 sector; 445} __packed; 446 447/* WMI_CORR_MEASURE_CMDID */ 448struct wmi_corr_measure_cmd { 449 __le32 freq_mhz; --- 85 unchanged lines hidden (view full) --- 535 536/* WMI_PCP_START_CMDID */ 537struct wmi_pcp_start_cmd { 538 __le16 bcon_interval; 539 u8 pcp_max_assoc_sta; 540 u8 hidden_ssid; 541 u8 is_go; 542 u8 reserved0[5]; |
552 /* abft_len override if non-0 */ | 543 /* A-BFT length override if non-0 */ |
553 u8 abft_len; 554 u8 disable_ap_sme; 555 u8 network_type; 556 u8 channel; 557 u8 disable_sec_offload; 558 u8 disable_sec; 559} __packed; 560 --- 344 unchanged lines hidden (view full) --- 905/* WMI_SET_MGMT_RETRY_LIMIT_CMDID */ 906struct wmi_set_mgmt_retry_limit_cmd { 907 /* MAC retransmit limit for mgmt frames */ 908 u8 mgmt_retry_limit; 909 /* alignment to 32b */ 910 u8 reserved[3]; 911} __packed; 912 | 544 u8 abft_len; 545 u8 disable_ap_sme; 546 u8 network_type; 547 u8 channel; 548 u8 disable_sec_offload; 549 u8 disable_sec; 550} __packed; 551 --- 344 unchanged lines hidden (view full) --- 896/* WMI_SET_MGMT_RETRY_LIMIT_CMDID */ 897struct wmi_set_mgmt_retry_limit_cmd { 898 /* MAC retransmit limit for mgmt frames */ 899 u8 mgmt_retry_limit; 900 /* alignment to 32b */ 901 u8 reserved[3]; 902} __packed; 903 |
904/* Zones: HIGH, MAX, CRITICAL */ 905#define WMI_NUM_OF_TT_ZONES (3) 906 907struct wmi_tt_zone_limits { 908 /* Above this temperature this zone is active */ 909 u8 temperature_high; 910 /* Below this temperature the adjacent lower zone is active */ 911 u8 temperature_low; 912 u8 reserved[2]; 913} __packed; 914 915/* Struct used for both configuration and status commands of thermal 916 * throttling 917 */ 918struct wmi_tt_data { 919 /* Enable/Disable TT algorithm for baseband */ 920 u8 bb_enabled; 921 u8 reserved0[3]; 922 /* Define zones for baseband */ 923 struct wmi_tt_zone_limits bb_zones[WMI_NUM_OF_TT_ZONES]; 924 /* Enable/Disable TT algorithm for radio */ 925 u8 rf_enabled; 926 u8 reserved1[3]; 927 /* Define zones for all radio chips */ 928 struct wmi_tt_zone_limits rf_zones[WMI_NUM_OF_TT_ZONES]; 929} __packed; 930 931/* WMI_SET_THERMAL_THROTTLING_CFG_CMDID */ 932struct wmi_set_thermal_throttling_cfg_cmd { 933 /* Command data */ 934 struct wmi_tt_data tt_data; 935} __packed; 936 |
|
913/* WMI_NEW_STA_CMDID */ 914struct wmi_new_sta_cmd { 915 u8 dst_mac[WMI_MAC_LEN]; 916 u8 aid; 917} __packed; 918 919/* WMI_DEL_STA_CMDID */ 920struct wmi_del_sta_cmd { --- 114 unchanged lines hidden (view full) --- 1035 WMI_WRITE_MAC_RXQ_EVENTID = 0x1832, 1036 WMI_WRITE_MAC_TXQ_EVENTID = 0x1833, 1037 WMI_WRITE_MAC_XQ_FIELD_EVENTID = 0x1834, 1038 WMI_BEAMFORMING_MGMT_DONE_EVENTID = 0x1836, 1039 WMI_BF_TXSS_MGMT_DONE_EVENTID = 0x1837, 1040 WMI_BF_RXSS_MGMT_DONE_EVENTID = 0x1839, 1041 WMI_RS_MGMT_DONE_EVENTID = 0x1852, 1042 WMI_RF_MGMT_STATUS_EVENTID = 0x1853, | 937/* WMI_NEW_STA_CMDID */ 938struct wmi_new_sta_cmd { 939 u8 dst_mac[WMI_MAC_LEN]; 940 u8 aid; 941} __packed; 942 943/* WMI_DEL_STA_CMDID */ 944struct wmi_del_sta_cmd { --- 114 unchanged lines hidden (view full) --- 1059 WMI_WRITE_MAC_RXQ_EVENTID = 0x1832, 1060 WMI_WRITE_MAC_TXQ_EVENTID = 0x1833, 1061 WMI_WRITE_MAC_XQ_FIELD_EVENTID = 0x1834, 1062 WMI_BEAMFORMING_MGMT_DONE_EVENTID = 0x1836, 1063 WMI_BF_TXSS_MGMT_DONE_EVENTID = 0x1837, 1064 WMI_BF_RXSS_MGMT_DONE_EVENTID = 0x1839, 1065 WMI_RS_MGMT_DONE_EVENTID = 0x1852, 1066 WMI_RF_MGMT_STATUS_EVENTID = 0x1853, |
1043 WMI_THERMAL_THROTTLING_STATUS_EVENTID = 0x1855, | |
1044 WMI_BF_SM_MGMT_DONE_EVENTID = 0x1838, 1045 WMI_RX_MGMT_PACKET_EVENTID = 0x1840, 1046 WMI_TX_MGMT_PACKET_EVENTID = 0x1841, 1047 WMI_LINK_MAINTAIN_CFG_WRITE_DONE_EVENTID = 0x1842, 1048 WMI_LINK_MAINTAIN_CFG_READ_DONE_EVENTID = 0x1843, 1049 WMI_OTP_READ_RESULT_EVENTID = 0x1856, 1050 WMI_LED_CFG_DONE_EVENTID = 0x1858, 1051 /* Performance monitoring events */ --- 33 unchanged lines hidden (view full) --- 1085 /* Not supported yet */ 1086 WMI_PS_MID_CFG_READ_EVENTID = 0x1920, 1087 WMI_RS_CFG_DONE_EVENTID = 0x1921, 1088 WMI_GET_DETAILED_RS_RES_EVENTID = 0x1922, 1089 WMI_AOA_MEAS_EVENTID = 0x1923, 1090 WMI_BRP_SET_ANT_LIMIT_EVENTID = 0x1924, 1091 WMI_SET_MGMT_RETRY_LIMIT_EVENTID = 0x1930, 1092 WMI_GET_MGMT_RETRY_LIMIT_EVENTID = 0x1931, | 1067 WMI_BF_SM_MGMT_DONE_EVENTID = 0x1838, 1068 WMI_RX_MGMT_PACKET_EVENTID = 0x1840, 1069 WMI_TX_MGMT_PACKET_EVENTID = 0x1841, 1070 WMI_LINK_MAINTAIN_CFG_WRITE_DONE_EVENTID = 0x1842, 1071 WMI_LINK_MAINTAIN_CFG_READ_DONE_EVENTID = 0x1843, 1072 WMI_OTP_READ_RESULT_EVENTID = 0x1856, 1073 WMI_LED_CFG_DONE_EVENTID = 0x1858, 1074 /* Performance monitoring events */ --- 33 unchanged lines hidden (view full) --- 1108 /* Not supported yet */ 1109 WMI_PS_MID_CFG_READ_EVENTID = 0x1920, 1110 WMI_RS_CFG_DONE_EVENTID = 0x1921, 1111 WMI_GET_DETAILED_RS_RES_EVENTID = 0x1922, 1112 WMI_AOA_MEAS_EVENTID = 0x1923, 1113 WMI_BRP_SET_ANT_LIMIT_EVENTID = 0x1924, 1114 WMI_SET_MGMT_RETRY_LIMIT_EVENTID = 0x1930, 1115 WMI_GET_MGMT_RETRY_LIMIT_EVENTID = 0x1931, |
1116 WMI_SET_THERMAL_THROTTLING_CFG_EVENTID = 0x1940, 1117 WMI_GET_THERMAL_THROTTLING_CFG_EVENTID = 0x1941, |
|
1093 WMI_TOF_SESSION_END_EVENTID = 0x1991, 1094 WMI_TOF_GET_CAPABILITIES_EVENTID = 0x1992, 1095 WMI_TOF_SET_LCR_EVENTID = 0x1993, 1096 WMI_TOF_SET_LCI_EVENTID = 0x1994, 1097 WMI_TOF_FTM_PER_DEST_RES_EVENTID = 0x1995, 1098 WMI_TOF_CHANNEL_INFO_EVENTID = 0x1996, 1099 WMI_TOF_SET_TX_RX_OFFSET_EVENTID = 0x1997, 1100 WMI_TOF_GET_TX_RX_OFFSET_EVENTID = 0x1998, --- 27 unchanged lines hidden (view full) --- 1128 WMI_RF_DISABLED_HW_SW = 0x03, 1129}; 1130 1131/* WMI_RF_MGMT_STATUS_EVENTID */ 1132struct wmi_rf_mgmt_status_event { 1133 __le32 rf_status; 1134} __packed; 1135 | 1118 WMI_TOF_SESSION_END_EVENTID = 0x1991, 1119 WMI_TOF_GET_CAPABILITIES_EVENTID = 0x1992, 1120 WMI_TOF_SET_LCR_EVENTID = 0x1993, 1121 WMI_TOF_SET_LCI_EVENTID = 0x1994, 1122 WMI_TOF_FTM_PER_DEST_RES_EVENTID = 0x1995, 1123 WMI_TOF_CHANNEL_INFO_EVENTID = 0x1996, 1124 WMI_TOF_SET_TX_RX_OFFSET_EVENTID = 0x1997, 1125 WMI_TOF_GET_TX_RX_OFFSET_EVENTID = 0x1998, --- 27 unchanged lines hidden (view full) --- 1153 WMI_RF_DISABLED_HW_SW = 0x03, 1154}; 1155 1156/* WMI_RF_MGMT_STATUS_EVENTID */ 1157struct wmi_rf_mgmt_status_event { 1158 __le32 rf_status; 1159} __packed; 1160 |
1136/* WMI_THERMAL_THROTTLING_STATUS_EVENTID */ 1137struct wmi_thermal_throttling_status_event { 1138 __le32 time_on_usec; 1139 __le32 time_off_usec; 1140 __le32 max_txop_length_usec; 1141} __packed; 1142 | |
1143/* WMI_GET_STATUS_DONE_EVENTID */ 1144struct wmi_get_status_done_event { 1145 __le32 is_associated; 1146 u8 cid; 1147 u8 reserved0[3]; 1148 u8 bssid[WMI_MAC_LEN]; 1149 u8 channel; 1150 u8 reserved1; --- 1050 unchanged lines hidden (view full) --- 2201 /* maximum supported multi bursts */ 2202 __le16 max_multi_bursts_sessions; 2203 /* maximum supported FTM burst duration , wmi_tof_burst_duration_e */ 2204 __le16 max_ftm_burst_duration; 2205 /* AOA supported types */ 2206 __le32 aoa_supported_types; 2207} __packed; 2208 | 1161/* WMI_GET_STATUS_DONE_EVENTID */ 1162struct wmi_get_status_done_event { 1163 __le32 is_associated; 1164 u8 cid; 1165 u8 reserved0[3]; 1166 u8 bssid[WMI_MAC_LEN]; 1167 u8 channel; 1168 u8 reserved1; --- 1050 unchanged lines hidden (view full) --- 2219 /* maximum supported multi bursts */ 2220 __le16 max_multi_bursts_sessions; 2221 /* maximum supported FTM burst duration , wmi_tof_burst_duration_e */ 2222 __le16 max_ftm_burst_duration; 2223 /* AOA supported types */ 2224 __le32 aoa_supported_types; 2225} __packed; 2226 |
2227/* WMI_SET_THERMAL_THROTTLING_CFG_EVENTID */ 2228struct wmi_set_thermal_throttling_cfg_event { 2229 /* wmi_fw_status */ 2230 u8 status; 2231 u8 reserved[3]; 2232} __packed; 2233 2234/* WMI_GET_THERMAL_THROTTLING_CFG_EVENTID */ 2235struct wmi_get_thermal_throttling_cfg_event { 2236 /* Status data */ 2237 struct wmi_tt_data tt_data; 2238} __packed; 2239 |
|
2209enum wmi_tof_session_end_status { 2210 WMI_TOF_SESSION_END_NO_ERROR = 0x00, 2211 WMI_TOF_SESSION_END_FAIL = 0x01, 2212 WMI_TOF_SESSION_END_PARAMS_ERROR = 0x02, 2213 WMI_TOF_SESSION_END_ABORTED = 0x03, 2214}; 2215 2216/* WMI_TOF_SESSION_END_EVENTID */ --- 370 unchanged lines hidden --- | 2240enum wmi_tof_session_end_status { 2241 WMI_TOF_SESSION_END_NO_ERROR = 0x00, 2242 WMI_TOF_SESSION_END_FAIL = 0x01, 2243 WMI_TOF_SESSION_END_PARAMS_ERROR = 0x02, 2244 WMI_TOF_SESSION_END_ABORTED = 0x03, 2245}; 2246 2247/* WMI_TOF_SESSION_END_EVENTID */ --- 370 unchanged lines hidden --- |