1 /* 2 * Copyright (c) 2024, Qualcomm Innovation Center, Inc. All rights reserved. 3 * SPDX-License-Identifier: ISC 4 */ 5 6 /* 7 * THIS IS AUTO GENERATED FILE. 8 * DO NOT ALTER MANUALLY 9 */ 10 11 #ifndef __WLAN_CP_STATS_CHIPSET_STATS_EVENTS_H 12 #define __WLAN_CP_STATS_CHIPSET_STATS_EVENTS_H 13 14 #include <qdf_types.h> 15 #include <wmi_unified_param.h> 16 17 #define CSTATS_MAC_LEN 4 18 19 #define CHIPSET_STATS_HDR_VERSION 0x0000001 20 21 enum qca_chipset_stats_event_type { 22 WLAN_CHIPSET_STATS_MGMT_AUTH_EVENT_ID = 0, 23 WLAN_CHIPSET_STATS_MGMT_ASSOC_REQ_EVENT_ID, 24 WLAN_CHIPSET_STATS_MGMT_ASSOC_RESP_EVENT_ID, 25 WLAN_CHIPSET_STATS_MGMT_REASSOC_REQ_EVENT_ID, 26 WLAN_CHIPSET_STATS_MGMT_REASSOC_RESP_EVENT_ID, 27 WLAN_CHIPSET_STATS_MGMT_DEAUTH_EVENT_ID, 28 WLAN_CHIPSET_STATS_MGMT_DISASSOC_EVENT_ID, 29 WLAN_CHIPSET_STATS_STA_CONNECTING_EVENT_ID, 30 WLAN_CHIPSET_STATS_STA_CONNECT_SUCCESS_EVENT_ID, 31 WLAN_CHIPSET_STATS_STA_CONNECT_FAIL_EVENT_ID, 32 WLAN_CHIPSET_STATS_STA_DISCONNECT_REQ_EVENT_ID, 33 WLAN_CHIPSET_STATS_STA_DISCONNECT_DONE_EVENT_ID, 34 WLAN_CHIPSET_STATS_STA_ROAM_SCAN_START_EVENT_ID, 35 WLAN_CHIPSET_STATS_STA_ROAM_SCAN_DONE_EVENT_ID, 36 WLAN_CHIPSET_STATS_STA_ROAM_RESULT_EVENT_ID, 37 WLAN_CHIPSET_STATS_STA_TDLS_DISCOVERY_REQ_EVENT_ID, 38 WLAN_CHIPSET_STATS_STA_TDLS_DISCOVERY_RESP_EVENT_ID, 39 WLAN_CHIPSET_STATS_STA_TDLS_SETUP_REQ_EVENT_ID, 40 WLAN_CHIPSET_STATS_STA_TDLS_SETUP_RESP_EVENT_ID, 41 WLAN_CHIPSET_STATS_STA_TDLS_SETUP_CONFIRM_EVENT_ID, 42 WLAN_CHIPSET_STATS_STA_TDLS_TEARDOWN_EVENT_ID, 43 WLAN_CHIPSET_STATS_SAP_GO_START_EVENT_ID, 44 WLAN_CHIPSET_STATS_SAP_GO_STOP_EVENT_ID, 45 WLAN_CHIPSET_STATS_SAP_GO_CAC_START_EVENT_ID, 46 WLAN_CHIPSET_STATS_SAP_GO_CAC_END_EVENT_ID, 47 WLAN_CHIPSET_STATS_SAP_GO_CAC_INTERRUPTED_EVENT_ID, 48 WLAN_CHIPSET_STATS_SAP_GO_RADAR_DETECTED_EVENT_ID, 49 WLAN_CHIPSET_STATS_SAP_GO_STA_DISASSOC_EVENT_ID, 50 WLAN_CHIPSET_STATS_SAP_GO_STA_ASSOC_REASSOC_EVENT_ID, 51 WLAN_CHIPSET_STATS_NAN_DISCOVERY_ENABLE_REQ_EVENT_ID, 52 WLAN_CHIPSET_STATS_NAN_DISCOVERY_ENABLE_RESP_EVENT_ID, 53 WLAN_CHIPSET_STATS_NAN_DISCOVERY_DISABLE_REQ_EVENT_ID, 54 WLAN_CHIPSET_STATS_NAN_DISCOVERY_DISABLE_RESP_EVENT_ID, 55 WLAN_CHIPSET_STATS_NAN_NDI_CREATE_EVENT_ID, 56 WLAN_CHIPSET_STATS_NAN_NDI_CREATE_RESP_EVENT_ID, 57 WLAN_CHIPSET_STATS_NAN_NDI_DELETE_EVENT_ID, 58 WLAN_CHIPSET_STATS_NAN_NDI_DELETE_RESP_EVENT_ID, 59 WLAN_CHIPSET_STATS_NAN_NDP_INITIATOR_REQ_EVENT_ID, 60 WLAN_CHIPSET_STATS_NAN_NDP_INITIATOR_RSP_EVENT_ID, 61 WLAN_CHIPSET_STATS_NAN_NDP_RESPONDER_REQ_EVENT_ID, 62 WLAN_CHIPSET_STATS_NAN_NDP_RESPONDER_RESP_EVENT_ID, 63 WLAN_CHIPSET_STATS_NAN_NDP_END_REQ_EVENT_ID, 64 WLAN_CHIPSET_STATS_NAN_NDP_END_RESP_EVENT_ID, 65 WLAN_CHIPSET_STATS_NAN_NDP_CONFIRM_EVENT_ID, 66 WLAN_CHIPSET_STATS_NAN_NDP_INDICATION_EVENT_ID, 67 WLAN_CHIPSET_STATS_NAN_NDP_NEW_PEER_EVENT_ID, 68 WLAN_CHIPSET_STATS_DATA_PKT_EVENT_ID, 69 WLAN_CHIPSET_STATS_CSA_EVENT_ID, 70 WLAN_CHIPSET_STATS_MAX_EVENT_ID, 71 }; 72 73 enum cstats_dir { 74 CSTATS_DIR_TX = 0, 75 CSTATS_DIR_RX, 76 CSTATS_DIR_INVAL, 77 }; 78 79 enum cstats_flag { 80 CSTATS_FLAG_HT = 1, 81 CSTATS_FLAG_VHT, 82 CSTATS_FLAG_HE, 83 CSTATS_FLAG_EHT, 84 }; 85 86 enum cstats_pkt_type { 87 CSTATS_PKT_TYPE_INVALID = 0, 88 CSTATS_EAPOL_M1, 89 CSTATS_EAPOL_M2, 90 CSTATS_EAPOL_M3, 91 CSTATS_EAPOL_M4, 92 CSTATS_DHCP_DISCOVER, 93 CSTATS_DHCP_OFFER, 94 CSTATS_DHCP_REQ, 95 CSTATS_DHCP_ACK, 96 CSTATS_DHCP_NACK, 97 CSTATS_DHCP_RELEASE, 98 CSTATS_DHCP_INFORM, 99 CSTATS_DHCP_DECLINE, 100 }; 101 102 enum cstats_pkt_status { 103 CSTATS_STATUS_INVALID = 0, 104 CSTATS_TX_STATUS_OK, 105 CSTATS_TX_STATUS_FW_DISCARD, 106 CSTATS_TX_STATUS_NO_ACK, 107 CSTATS_TX_STATUS_DROP, 108 CSTATS_TX_STATUS_DOWNLOAD_SUCC, 109 CSTATS_TX_STATUS_DEFAULT, 110 }; 111 112 struct cstats_hdr { 113 uint16_t evt_id; 114 uint16_t length; 115 } qdf_packed; 116 117 struct cstats_cmn { 118 struct cstats_hdr hdr; 119 uint8_t opmode; 120 uint8_t vdev_id; 121 uint64_t timestamp_us; 122 uint64_t time_tick; 123 } qdf_packed; 124 125 struct cstats_sta_roam_scan_cancel { 126 uint32_t reason_code; 127 uint8_t data_rssi; 128 uint8_t data_rssi_threshold; 129 uint8_t rx_linkspeed_status; 130 } qdf_packed; 131 132 struct cstats_sta_roam_scan_ap { 133 uint8_t bssid[CSTATS_MAC_LEN]; 134 uint32_t total_score; 135 uint32_t rssi; 136 uint32_t etp; 137 uint16_t freq; 138 uint16_t cu_load; 139 uint8_t is_mlo; 140 uint8_t type; 141 } qdf_packed; 142 143 struct cstats_auth_mgmt_frm { 144 struct cstats_cmn cmn; 145 uint8_t auth_algo; 146 uint8_t auth_seq_num; 147 uint8_t status; 148 uint8_t direction; 149 } qdf_packed; 150 151 struct cstats_assoc_req_mgmt_frm { 152 struct cstats_cmn cmn; 153 uint8_t ssid_len; 154 uint8_t ssid[WLAN_SSID_MAX_LEN + 1]; 155 uint8_t bssid[CSTATS_MAC_LEN]; 156 uint8_t sa[CSTATS_MAC_LEN]; 157 uint16_t freq; 158 uint8_t flags; 159 uint8_t direction; 160 } qdf_packed; 161 162 struct cstats_assoc_resp_mgmt_frm { 163 struct cstats_cmn cmn; 164 uint8_t dest_mac[CSTATS_MAC_LEN]; 165 uint8_t bssid[CSTATS_MAC_LEN]; 166 uint16_t status_code; 167 uint16_t aid; 168 uint8_t direction; 169 uint8_t flags; 170 } qdf_packed; 171 172 struct cstats_deauth_mgmt_frm { 173 struct cstats_cmn cmn; 174 uint16_t reason; 175 uint8_t direction; 176 } qdf_packed; 177 178 struct cstats_disassoc_mgmt_frm { 179 struct cstats_cmn cmn; 180 uint16_t reason; 181 uint8_t direction; 182 } qdf_packed; 183 184 struct cstats_sta_connect_req { 185 struct cstats_cmn cmn; 186 uint8_t ssid_len; 187 uint8_t ssid[WLAN_SSID_MAX_LEN + 1]; 188 uint8_t bssid[CSTATS_MAC_LEN]; 189 uint16_t freq; 190 } qdf_packed; 191 192 struct cstats_sta_connect_resp { 193 struct cstats_cmn cmn; 194 uint8_t bssid[CSTATS_MAC_LEN]; 195 uint8_t ssid_len; 196 uint8_t ssid[WLAN_SSID_MAX_LEN + 1]; 197 uint16_t result_code; 198 uint16_t freq; 199 uint8_t chnl_bw; 200 uint8_t dot11mode; 201 uint8_t qos_capability; 202 uint8_t encryption_type; 203 uint8_t auth_type; 204 } qdf_packed; 205 206 struct cstats_sta_disconnect_req { 207 struct cstats_cmn cmn; 208 uint16_t reason_code; 209 uint8_t is_no_disassoc_disconnect; 210 uint8_t source; 211 uint8_t bssid[CSTATS_MAC_LEN]; 212 } qdf_packed; 213 214 struct cstats_sta_disconnect_resp { 215 struct cstats_cmn cmn; 216 uint32_t cm_id; 217 uint16_t reason_code; 218 uint8_t source; 219 uint8_t bssid[CSTATS_MAC_LEN]; 220 } qdf_packed; 221 222 struct cstats_sta_roam_scan_start { 223 struct cstats_cmn cmn; 224 uint32_t trigger_reason; 225 uint32_t trigger_sub_reason; 226 uint32_t rssi; 227 uint32_t rssi_threshold; 228 uint32_t timestamp; 229 uint16_t cu; 230 uint8_t is_full_scan; 231 struct cstats_sta_roam_scan_cancel abort_roam; 232 } qdf_packed; 233 234 struct cstats_sta_roam_scan_done { 235 struct cstats_cmn cmn; 236 uint32_t timestamp; 237 uint16_t cand_ap_count; 238 uint16_t num_scanned_freq; 239 uint16_t scanned_freq[MAX_ROAM_SCAN_CHAN]; 240 struct cstats_sta_roam_scan_ap ap[MAX_ROAM_CANDIDATE_AP]; 241 uint8_t is_full_scan; 242 } qdf_packed; 243 244 struct cstats_sta_roam_result { 245 struct cstats_cmn cmn; 246 uint8_t bssid[CSTATS_MAC_LEN]; 247 uint32_t timestamp; 248 uint32_t status; 249 uint32_t fail_reason; 250 struct cstats_sta_roam_scan_cancel roam_abort; 251 uint32_t roam_cancel_reason; 252 } qdf_packed; 253 254 struct cstats_tdls_disc_req { 255 struct cstats_cmn cmn; 256 uint8_t bssid[CSTATS_MAC_LEN]; 257 uint8_t init_sta_addr[CSTATS_MAC_LEN]; 258 uint8_t resp_sta_addr[CSTATS_MAC_LEN]; 259 uint8_t act_category; 260 uint8_t act; 261 uint8_t dt; 262 uint8_t direction; 263 } qdf_packed; 264 265 struct cstats_tdls_disc_resp { 266 struct cstats_cmn cmn; 267 uint8_t bssid[CSTATS_MAC_LEN]; 268 uint8_t init_sta_addr[CSTATS_MAC_LEN]; 269 uint8_t resp_sta_addr[CSTATS_MAC_LEN]; 270 uint8_t act_category; 271 uint8_t act; 272 uint8_t dt; 273 uint8_t direction; 274 uint8_t flags; 275 } qdf_packed; 276 277 struct cstats_tdls_setup_req { 278 struct cstats_cmn cmn; 279 uint8_t bssid[CSTATS_MAC_LEN]; 280 uint8_t init_sta_addr[CSTATS_MAC_LEN]; 281 uint8_t resp_sta_addr[CSTATS_MAC_LEN]; 282 uint8_t act_category; 283 uint8_t act; 284 uint8_t dt; 285 uint8_t direction; 286 uint8_t flags; 287 } qdf_packed; 288 289 struct cstats_tdls_setup_resp { 290 struct cstats_cmn cmn; 291 uint8_t bssid[CSTATS_MAC_LEN]; 292 uint8_t init_sta_addr[CSTATS_MAC_LEN]; 293 uint8_t resp_sta_addr[CSTATS_MAC_LEN]; 294 uint16_t status; 295 uint8_t act_category; 296 uint8_t act; 297 uint8_t dt; 298 uint8_t direction; 299 uint8_t flags; 300 } qdf_packed; 301 302 struct cstats_tdls_setup_confirm { 303 struct cstats_cmn cmn; 304 uint8_t bssid[CSTATS_MAC_LEN]; 305 uint8_t init_sta_addr[CSTATS_MAC_LEN]; 306 uint8_t resp_sta_addr[CSTATS_MAC_LEN]; 307 uint16_t status; 308 uint8_t act_category; 309 uint8_t act; 310 uint8_t dt; 311 uint8_t direction; 312 uint8_t flags; 313 } qdf_packed; 314 315 struct cstats_tdls_tear_down { 316 struct cstats_cmn cmn; 317 uint8_t bssid[CSTATS_MAC_LEN]; 318 uint8_t init_sta_addr[CSTATS_MAC_LEN]; 319 uint8_t resp_sta_addr[CSTATS_MAC_LEN]; 320 uint16_t reason; 321 uint8_t act_category; 322 uint8_t act; 323 uint8_t direction; 324 } qdf_packed; 325 326 struct cstats_sap_go_start { 327 struct cstats_cmn cmn; 328 uint8_t status; 329 uint16_t operating_chan_freq; 330 uint8_t ch_width; 331 uint16_t staId; 332 uint8_t ssid_len; 333 uint8_t ssid[WLAN_SSID_MAX_LEN + 1]; 334 uint8_t bssid[CSTATS_MAC_LEN]; 335 } qdf_packed; 336 337 struct cstats_sap_go_stop { 338 struct cstats_cmn cmn; 339 uint8_t status; 340 uint8_t bssid[CSTATS_MAC_LEN]; 341 } qdf_packed; 342 343 struct cstats_sap_go_dfs_evt { 344 struct cstats_cmn cmn; 345 uint8_t bssid[CSTATS_MAC_LEN]; 346 uint8_t cc[CSTATS_MAC_LEN]; 347 uint16_t freq; 348 } qdf_packed; 349 350 struct cstats_sap_go_sta_disassoc { 351 struct cstats_cmn cmn; 352 uint8_t sta_mac[CSTATS_MAC_LEN]; 353 uint8_t bssid[CSTATS_MAC_LEN]; 354 uint8_t sta_id; 355 uint8_t status; 356 uint32_t status_code; 357 uint8_t reason; 358 uint32_t reason_code; 359 } qdf_packed; 360 361 struct cstats_sap_go_sta_assoc_reassoc { 362 struct cstats_cmn cmn; 363 uint8_t sta_mac[CSTATS_MAC_LEN]; 364 uint8_t bssid[CSTATS_MAC_LEN]; 365 uint8_t sta_id; 366 uint8_t status; 367 uint32_t status_code; 368 } qdf_packed; 369 370 struct cstats_nan_disc_enable { 371 struct cstats_cmn cmn; 372 uint16_t social_chan_2g_freq; 373 uint16_t social_chan_5g_freq; 374 uint32_t rtt_cap; 375 uint8_t disable_6g_nan; 376 } qdf_packed; 377 378 struct cstats_nan_disc_enable_resp { 379 struct cstats_cmn cmn; 380 uint8_t is_enable_success; 381 uint8_t mac_id; 382 uint8_t disc_state; 383 } qdf_packed; 384 385 struct cstats_nan_disc_disable_req { 386 struct cstats_cmn cmn; 387 uint8_t disable_2g_discovery; 388 uint8_t disable_5g_discovery; 389 } qdf_packed; 390 391 struct cstats_nan_disc_disable_resp { 392 struct cstats_cmn cmn; 393 uint8_t disc_state; 394 } qdf_packed; 395 396 struct cstats_nan_ndi_create_req { 397 struct cstats_cmn cmn; 398 uint16_t transaction_id; 399 } qdf_packed; 400 401 struct cstats_nan_ndi_create_resp { 402 struct cstats_cmn cmn; 403 uint16_t transaction_id; 404 uint8_t status; 405 uint8_t reason; 406 } qdf_packed; 407 408 struct cstats_nan_ndi_delete_req { 409 struct cstats_cmn cmn; 410 uint16_t transaction_id; 411 } qdf_packed; 412 413 struct cstats_nan_ndi_delete_resp { 414 struct cstats_cmn cmn; 415 uint16_t transaction_id; 416 uint8_t status; 417 uint8_t reason; 418 } qdf_packed; 419 420 struct cstats_nan_ndp_initiator_req { 421 struct cstats_cmn cmn; 422 uint16_t transaction_id; 423 uint16_t channel; 424 uint32_t channel_cfg; 425 uint16_t service_instance_id; 426 uint8_t self_ndi_mac_addr[CSTATS_MAC_LEN]; 427 uint8_t peer_discovery_mac_addr[CSTATS_MAC_LEN]; 428 } qdf_packed; 429 430 struct cstats_nan_ndp_initiator_resp { 431 struct cstats_cmn cmn; 432 uint8_t status; 433 uint8_t reason; 434 uint16_t transaction_id; 435 uint16_t service_instance_id; 436 } qdf_packed; 437 438 struct cstats_nan_ndp_responder_req { 439 struct cstats_cmn cmn; 440 uint16_t transaction_id; 441 uint16_t ndp_instance_id; 442 uint8_t ndp_rsp; 443 uint32_t ncs_sk_type; 444 } qdf_packed; 445 446 struct cstats_nan_ndp_responder_resp { 447 struct cstats_cmn cmn; 448 uint16_t transaction_id; 449 uint8_t status; 450 uint8_t reason; 451 } qdf_packed; 452 453 struct cstats_nan_ndp_end_req { 454 struct cstats_cmn cmn; 455 uint16_t transaction_id; 456 uint8_t num_ndp_instances; 457 } qdf_packed; 458 459 struct cstats_nan_ndp_end_resp { 460 struct cstats_cmn cmn; 461 uint8_t status; 462 uint8_t reason; 463 uint16_t transaction_id; 464 } qdf_packed; 465 466 struct cstats_nan_ndp_confirm_ind { 467 struct cstats_cmn cmn; 468 uint32_t instance_id; 469 uint16_t reason_code; 470 uint8_t peer_addr[CSTATS_MAC_LEN]; 471 uint8_t rsp_code; 472 } qdf_packed; 473 474 struct cstats_nan_ndp_ind { 475 struct cstats_cmn cmn; 476 uint8_t peer_mac[CSTATS_MAC_LEN]; 477 uint8_t peer_discovery_mac_addr[CSTATS_MAC_LEN]; 478 uint16_t ndp_instance_id; 479 uint32_t service_instance_id; 480 } qdf_packed; 481 482 struct cstats_nan_ndp_new_peer_ind { 483 struct cstats_cmn cmn; 484 uint8_t peer_mac[CSTATS_MAC_LEN]; 485 uint16_t sta_id; 486 } qdf_packed; 487 488 struct cstats_pkt_info { 489 struct cstats_cmn cmn; 490 uint8_t src_mac[CSTATS_MAC_LEN]; 491 uint8_t dst_mac[CSTATS_MAC_LEN]; 492 uint8_t type; 493 uint8_t dir; 494 uint8_t status; 495 } qdf_packed; 496 497 struct cstats_csa_evt { 498 struct cstats_cmn cmn; 499 uint8_t direction; 500 uint16_t target_freq; 501 uint8_t target_ch_width; 502 uint16_t current_freq; 503 uint8_t current_ch_width; 504 uint8_t switch_mode; 505 } qdf_packed; 506 507 #endif /* __WLAN_CP_STATS_CHIPSET_STATS_EVENTS_H */ 508