Loading fw/htt_stats.h +5 −2 Original line number Diff line number Diff line Loading @@ -3867,12 +3867,15 @@ typedef struct { A_UINT32 num_obss_tx_ppdu_success; A_UINT32 num_obss_tx_ppdu_failure; /* num_sr_tx_tranmissions: /* num_sr_tx_transmissions: * Counter of TX done by aborting other BSS RX with spatial reuse * (for cases where rx RSSI from other BSS is below the packet-detection * threshold for doing spatial reuse) */ A_UINT32 num_sr_tx_tranmissions; union { A_UINT32 num_sr_tx_transmissions; /* CORRECTED - use this one */ A_UINT32 num_sr_tx_tranmissions; /* DEPRECATED - has typo in name */ }; /* num_sr_rx_ge_pd_rssi_thr * counter of rx from other BSS for which RSSI was above the * packet-detection threshold specified for enabling spatial reuse Loading fw/wmi_services.h +3 −0 Original line number Diff line number Diff line Loading @@ -402,6 +402,9 @@ typedef enum { WMI_SERVICE_WMI_CHAN_RF_CHARACTERIZATION_INFO_EVENT= 217, /* target will send WMI_CHAN_RF_CHARACTERIZATION_INFO_EVENT */ WMI_SERVICE_RX_FSE_SUPPORT = 218, /* target supports flow search through RxOLE FSE hw block */ WMI_SERVICE_FREQINFO_IN_METADATA = 219, /* FW provides freq_info during spectral scan */ WMI_SERVICE_EXT2_MSG = 220, /* WMI_SERVICE_READY_EXT2 msg is sent by target */ WMI_SERVICE_WPA3_SAE_ROAM_SUPPORT = 221, /* Indicates FW supports WPA3 SAE roaming */ WMI_SERVICE_WPA3_OWE_ROAM_SUPPORT = 222, /* Indicates FW supports WPA3 OWE roaming */ /******* ADD NEW SERVICES HERE *******/ Loading fw/wmi_tlv_defs.h +54 −0 Original line number Diff line number Diff line Loading @@ -994,6 +994,13 @@ typedef enum { WMITLV_TAG_STRUC_wmi_chan_rf_characterization_info_event_fixed_param, WMITLV_TAG_STRUC_wmi_oem_data_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_roam_enable_disable_trigger_reason_fixed_param, WMITLV_TAG_STRUC_wmi_service_ready_ext2_event_fixed_param, WMITLV_TAG_STRUC_wmi_roam_preauth_status_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_roam_preauth_start_event_fixed_param, WMITLV_TAG_STRUC_wmi_set_elna_bypass_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_get_elna_bypass_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_get_elna_bypass_event_fixed_param, WMITLV_TAG_STRUC_wmi_roam_pmkid_request_event_fixed_param, } WMITLV_TAG_ID; /* Loading Loading @@ -1398,6 +1405,9 @@ typedef enum { OP(WMI_VDEV_DELETE_ALL_PEER_CMDID) \ OP(WMI_OEM_DATA_CMDID) \ OP(WMI_ROAM_ENABLE_DISABLE_TRIGGER_REASON_CMDID) \ OP(WMI_ROAM_PREAUTH_STATUS_CMDID) \ OP(WMI_SET_ELNA_BYPASS_CMDID) \ OP(WMI_GET_ELNA_BYPASS_CMDID) \ /* add new CMD_LIST elements above this line */ Loading @@ -1408,6 +1418,7 @@ typedef enum { #define WMITLV_ALL_EVT_LIST(OP) \ OP(WMI_SERVICE_READY_EVENTID) \ OP(WMI_SERVICE_READY_EXT_EVENTID) \ OP(WMI_SERVICE_READY_EXT2_EVENTID) \ OP(WMI_READY_EVENTID) \ OP(WMI_SCAN_EVENTID) \ OP(WMI_PDEV_TPC_CONFIG_EVENTID) \ Loading Loading @@ -1630,6 +1641,9 @@ typedef enum { OP(WMI_TWT_BTWT_REMOVE_STA_COMPLETE_EVENTID) \ OP(WMI_VDEV_DELETE_ALL_PEER_RESP_EVENTID) \ OP(WMI_CHAN_RF_CHARACTERIZATION_INFO_EVENTID) \ OP(WMI_ROAM_PREAUTH_START_EVENTID) \ OP(WMI_GET_ELNA_BYPASS_EVENTID) \ OP(WMI_ROAM_PMKID_REQUEST_EVENTID) \ /* add new EVT_LIST elements above this line */ Loading Loading @@ -3076,6 +3090,18 @@ WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_DEAUTH_CONFIG_CMDID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_roam_idle_config_cmd_fixed_param, wmi_roam_idle_config_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_IDLE_CONFIG_CMDID); /* Roam Pre-Authentication completion status */ #define WMITLV_TABLE_WMI_ROAM_PREAUTH_STATUS_CMDID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_roam_preauth_status_cmd_fixed_param, wmi_roam_preauth_status_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, pmkid, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_PREAUTH_STATUS_CMDID); /** Roam PMKID request event */ #define WMITLV_TABLE_WMI_ROAM_PMKID_REQUEST_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_roam_pmkid_request_event_fixed_param, wmi_roam_pmkid_request_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_roam_pmkid_request_tlv_param, pmkid_request, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_PMKID_REQUEST_EVENTID); /* Screen Status Command parameters */ #define WMITLV_TABLE_WMI_IDLE_TRIGGER_MONITOR_CMDID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_idle_trigger_monitor_cmd_fixed_param, wmi_idle_trigger_monitor_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) Loading @@ -3097,6 +3123,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_DSM_FILTER_CMDID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_roam_blacklist_with_timeout_tlv_param, blacklist_with_timeout, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_BLACKLIST_EVENTID); /* Roam Pre-Authentication Start Event */ #define WMITLV_TABLE_WMI_ROAM_PREAUTH_START_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_roam_preauth_start_event_fixed_param, wmi_roam_preauth_start_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_PREAUTH_START_EVENTID); #define WMITLV_TABLE_WMI_LPI_RESULT_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_lpi_result_event_fixed_param, wmi_lpi_result_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, data, WMITLV_SIZE_VAR) Loading Loading @@ -4025,6 +4056,16 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_SET_RAP_CONFIG_CMDID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, oem_data, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_OEM_DATA_CMDID); /* Set ELNA BYPASS cmd */ #define WMITLV_TABLE_WMI_SET_ELNA_BYPASS_CMDID(id,op,buf,len) \ WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_set_elna_bypass_cmd_fixed_param, wmi_set_elna_bypass_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_SET_ELNA_BYPASS_CMDID); /* Get ELNA BYPASS cmd */ #define WMITLV_TABLE_WMI_GET_ELNA_BYPASS_CMDID(id,op,buf,len) \ WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_get_elna_bypass_cmd_fixed_param, wmi_get_elna_bypass_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_GET_ELNA_BYPASS_CMDID); /************************** TLV definitions of WMI events *******************************/ Loading Loading @@ -4059,6 +4100,13 @@ WMITLV_CREATE_PARAM_STRUC(WMI_SERVICE_AVAILABLE_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_CHAN_RF_CHARACTERIZATION_INFO, wmi_chan_rf_characterization_info, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_SERVICE_READY_EXT_EVENTID); /* SERVICE_READY_EXT2 event */ #define WMITLV_TABLE_WMI_SERVICE_READY_EXT2_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_service_ready_ext2_event_fixed_param, wmi_service_ready_ext2_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_DMA_RING_CAPABILITIES, dma_ring_caps, WMITLV_SIZE_VAR) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_spectral_bin_scaling_params, wmi_bin_scaling_params, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_SERVICE_READY_EXT2_EVENTID); #define WMITLV_TABLE_WMI_CHAN_RF_CHARACTERIZATION_INFO_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_chan_rf_characterization_info_event_fixed_param, wmi_chan_rf_characterization_info_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_CHAN_RF_CHARACTERIZATION_INFO, wmi_chan_rf_characterization_info, WMITLV_SIZE_VAR) Loading Loading @@ -5453,6 +5501,12 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_RAP_INFO_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, bufp, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_MGMT_OFFLOAD_EVENTID); /* get ELNA BYPASS status event */ #define WMITLV_TABLE_WMI_GET_ELNA_BYPASS_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_get_elna_bypass_event_fixed_param, wmi_get_elna_bypass_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_GET_ELNA_BYPASS_EVENTID); #ifdef __cplusplus } #endif Loading fw/wmi_unified.h +102 −5 Original line number Diff line number Diff line Loading @@ -708,6 +708,8 @@ typedef enum { DEPRECATED__WMI_ROAM_DSM_FILTER_CMDID, /** Enable or disable roaming triggers */ WMI_ROAM_ENABLE_DISABLE_TRIGGER_REASON_CMDID, /** Pre-Authentication completion status command */ WMI_ROAM_PREAUTH_STATUS_CMDID, /** offload scan specific commands */ /** set offload scan AP profile */ Loading Loading @@ -985,6 +987,10 @@ typedef enum { WMI_GET_TPC_POWER_CMDID, /* Specify when to start monitoring for idle state */ WMI_IDLE_TRIGGER_MONITOR_CMDID, /** set ELNA BYPASS status */ WMI_SET_ELNA_BYPASS_CMDID, /** get ELNA BYPASS status */ WMI_GET_ELNA_BYPASS_CMDID, /* Offload 11k related requests */ WMI_11K_OFFLOAD_REPORT_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_11K_OFFLOAD), Loading Loading @@ -1345,6 +1351,9 @@ typedef enum { WMI_CHAN_RF_CHARACTERIZATION_INFO_EVENTID, /** 2nd extension of SERVICE_READY msg with extra target capability info */ WMI_SERVICE_READY_EXT2_EVENTID, /* VDEV specific events */ /** VDEV started event in response to VDEV_START request */ WMI_VDEV_START_RESP_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_VDEV), Loading Loading @@ -1529,6 +1538,10 @@ typedef enum { WMI_ROAM_SCAN_STATS_EVENTID, /** Blacklisted AP information event */ WMI_ROAM_BLACKLIST_EVENTID, /** Roam Pre-Authentication start event */ WMI_ROAM_PREAUTH_START_EVENTID, /** Roaming PMKID request event */ WMI_ROAM_PMKID_REQUEST_EVENTID, /** P2P disc found */ WMI_P2P_DISC_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_P2P), Loading Loading @@ -1731,6 +1744,9 @@ typedef enum { /** event to provide MU-EDCA Parameters (to update host's beacon config) */ WMI_MUEDCA_PARAMS_CONFIG_EVENTID, /** event to get ELNA BYPASS status */ WMI_GET_ELNA_BYPASS_EVENTID, /* GPIO Event */ WMI_GPIO_INPUT_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_GPIO), /** upload H_CV info WMI event Loading Loading @@ -2542,6 +2558,10 @@ typedef struct { */ } wmi_service_ready_ext_event_fixed_param; typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_service_ready_ext2_event_fixed_param.*/ } wmi_service_ready_ext2_event_fixed_param; typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_chan_rf_characterization_info_event_fixed_param */ /* Loading Loading @@ -8462,6 +8482,11 @@ typedef struct { * added to AST table for traffic flow between mesh stations */ #define WMI_UNIFIED_VDEV_SUBTYPE_MESH_11S 0x6 /* Subtype to indicate that the AP VAP is in smart monitor mode * This is needed to differentiate in firmware betweem normal AP mode * with smart monitor AP mode */ #define WMI_UNIFIED_VDEV_SUBTYPE_SMART_MON 0x7 /** values for vdev_start_request flags */ /** Indicates that AP VDEV uses hidden ssid. only valid for Loading Loading @@ -12191,7 +12216,7 @@ typedef struct { /** unique id identifying the VDEV, generated by the caller */ A_UINT32 vdev_id; /** roam scan period value */ A_UINT32 roam_scan_period; A_UINT32 roam_scan_period; /* units = milliseconds */ /** Aging for Roam scans */ A_UINT32 roam_scan_age; /** Inactivity monitoring time to consider device is in inactive state with data count is less than roam_inactive_count */ Loading @@ -12200,6 +12225,8 @@ typedef struct { A_UINT32 roam_inactive_count; /** New roam scan period after device is in inactivity state */ A_UINT32 roam_scan_period_after_inactivity; /* units = milliseconds */ /** roam full scan period value */ A_UINT32 roam_full_scan_period; /* units = milliseconds */ } wmi_roam_scan_period_fixed_param; /** Loading Loading @@ -12270,6 +12297,8 @@ enum { WMI_AUTH_FT_RSNA_SUITE_B_8021X_SHA384, WMI_AUTH_FT_RSNA_FILS_SHA256, WMI_AUTH_FT_RSNA_FILS_SHA384, WMI_AUTH_WPA3_SAE, WMI_AUTH_WPA3_OWE, }; typedef enum { Loading Loading @@ -12893,6 +12922,21 @@ typedef struct { */ } wmi_roam_blacklist_event_fixed_param; typedef struct { A_UINT32 tlv_header; /** candidate AP mac address */ wmi_mac_addr bssid; } wmi_roam_pmkid_request_tlv_param; /** WMI_ROAM_PMKID_REQUEST_EVENT: generated whenever FW needs the PMKID while roaming **/ typedef struct { A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_roam_pmkid_request_event_fixed_param */ A_UINT32 vdev_id; /* This TLV is followed by further TLVs: * wmi_roam_pmkid_request_tlv_param pmkid_request[] */ } wmi_roam_pmkid_request_event_fixed_param; /** WMI_ROAM_EVENT: roam event triggering the host roam logic. * generated when ever a better AP is found in the recent roam scan (or) * when beacon miss is detected (or) when a DEAUTH/DISASSOC is received Loading Loading @@ -24289,6 +24333,9 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command) WMI_RETURN_STRING(WMI_TWT_BTWT_INVITE_STA_CMDID); WMI_RETURN_STRING(WMI_TWT_BTWT_REMOVE_STA_CMDID); WMI_RETURN_STRING(WMI_OEM_DATA_CMDID); WMI_RETURN_STRING(WMI_ROAM_PREAUTH_STATUS_CMDID); WMI_RETURN_STRING(WMI_SET_ELNA_BYPASS_CMDID); WMI_RETURN_STRING(WMI_GET_ELNA_BYPASS_CMDID); } return "Invalid WMI cmd"; Loading Loading @@ -25657,6 +25704,30 @@ typedef enum { */ #define WLAN_PDEV_MAX_NUM_BSSID_DISALLOW_LIST 28 /** Roam Pre-Authentication completion status */ typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_roam_preauth_status_cmd_fixed_param */ A_UINT32 vdev_id; /* preauth_status, 0 - Success, Non Zero - Failure * Refer to IEEE Std 802.11-2016 Table 9-46 for meaning of status values. */ A_UINT32 preauth_status; /* AP BSSID for which pre-authentication is completed */ wmi_mac_addr candidate_ap_bssid; /** * PMKID computed after successful pre-authentication. This is valid only if preauth_status is success * A_UINT8 pmkid[]; */ } wmi_roam_preauth_status_cmd_fixed_param; /** Roam Pre-Authentication start event */ typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_roam_preauth_start_event_fixed_param */ A_UINT32 vdev_id; /* AP BSSID for which host needs to start pre-authentication */ wmi_mac_addr candidate_ap_bssid; } wmi_roam_preauth_start_event_fixed_param; typedef struct { /* * The timestamp is in units of ticks of a 19.2MHz clock. Loading Loading @@ -27281,6 +27352,32 @@ typedef struct { A_UINT32 valid_fields; } wlanfw_iface_combination; typedef struct { /** TLV tag and len; tag equals * WMITLV_TAG_STRUC_wmi_set_elna_bypass_cmd_fixed_param */ A_UINT32 tlv_header; /* VDEV identifier */ A_UINT32 vdev_id; /** 1-Enable, 0-Disable */ A_UINT32 en_dis; } wmi_set_elna_bypass_cmd_fixed_param; typedef struct { /** TLV tag and len; tag equals * WMITLV_TAG_STRUC_wmi_get_elna_bypass_cmd_fixed_param */ A_UINT32 tlv_header; /* VDEV identifier */ A_UINT32 vdev_id; } wmi_get_elna_bypass_cmd_fixed_param; typedef struct { A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_get_elna_bypass_event_fixed_param */ /* VDEV identifier */ A_UINT32 vdev_id; /** 1-Enable, 0-Disable */ A_UINT32 en_dis; } wmi_get_elna_bypass_event_fixed_param; /* ADD NEW DEFS HERE */ fw/wmi_version.h +1 −1 Original line number Diff line number Diff line Loading @@ -36,7 +36,7 @@ #define __WMI_VER_MINOR_ 0 /** WMI revision number has to be incremented when there is a * change that may or may not break compatibility. */ #define __WMI_REVISION_ 692 #define __WMI_REVISION_ 699 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work Loading Loading
fw/htt_stats.h +5 −2 Original line number Diff line number Diff line Loading @@ -3867,12 +3867,15 @@ typedef struct { A_UINT32 num_obss_tx_ppdu_success; A_UINT32 num_obss_tx_ppdu_failure; /* num_sr_tx_tranmissions: /* num_sr_tx_transmissions: * Counter of TX done by aborting other BSS RX with spatial reuse * (for cases where rx RSSI from other BSS is below the packet-detection * threshold for doing spatial reuse) */ A_UINT32 num_sr_tx_tranmissions; union { A_UINT32 num_sr_tx_transmissions; /* CORRECTED - use this one */ A_UINT32 num_sr_tx_tranmissions; /* DEPRECATED - has typo in name */ }; /* num_sr_rx_ge_pd_rssi_thr * counter of rx from other BSS for which RSSI was above the * packet-detection threshold specified for enabling spatial reuse Loading
fw/wmi_services.h +3 −0 Original line number Diff line number Diff line Loading @@ -402,6 +402,9 @@ typedef enum { WMI_SERVICE_WMI_CHAN_RF_CHARACTERIZATION_INFO_EVENT= 217, /* target will send WMI_CHAN_RF_CHARACTERIZATION_INFO_EVENT */ WMI_SERVICE_RX_FSE_SUPPORT = 218, /* target supports flow search through RxOLE FSE hw block */ WMI_SERVICE_FREQINFO_IN_METADATA = 219, /* FW provides freq_info during spectral scan */ WMI_SERVICE_EXT2_MSG = 220, /* WMI_SERVICE_READY_EXT2 msg is sent by target */ WMI_SERVICE_WPA3_SAE_ROAM_SUPPORT = 221, /* Indicates FW supports WPA3 SAE roaming */ WMI_SERVICE_WPA3_OWE_ROAM_SUPPORT = 222, /* Indicates FW supports WPA3 OWE roaming */ /******* ADD NEW SERVICES HERE *******/ Loading
fw/wmi_tlv_defs.h +54 −0 Original line number Diff line number Diff line Loading @@ -994,6 +994,13 @@ typedef enum { WMITLV_TAG_STRUC_wmi_chan_rf_characterization_info_event_fixed_param, WMITLV_TAG_STRUC_wmi_oem_data_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_roam_enable_disable_trigger_reason_fixed_param, WMITLV_TAG_STRUC_wmi_service_ready_ext2_event_fixed_param, WMITLV_TAG_STRUC_wmi_roam_preauth_status_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_roam_preauth_start_event_fixed_param, WMITLV_TAG_STRUC_wmi_set_elna_bypass_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_get_elna_bypass_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_get_elna_bypass_event_fixed_param, WMITLV_TAG_STRUC_wmi_roam_pmkid_request_event_fixed_param, } WMITLV_TAG_ID; /* Loading Loading @@ -1398,6 +1405,9 @@ typedef enum { OP(WMI_VDEV_DELETE_ALL_PEER_CMDID) \ OP(WMI_OEM_DATA_CMDID) \ OP(WMI_ROAM_ENABLE_DISABLE_TRIGGER_REASON_CMDID) \ OP(WMI_ROAM_PREAUTH_STATUS_CMDID) \ OP(WMI_SET_ELNA_BYPASS_CMDID) \ OP(WMI_GET_ELNA_BYPASS_CMDID) \ /* add new CMD_LIST elements above this line */ Loading @@ -1408,6 +1418,7 @@ typedef enum { #define WMITLV_ALL_EVT_LIST(OP) \ OP(WMI_SERVICE_READY_EVENTID) \ OP(WMI_SERVICE_READY_EXT_EVENTID) \ OP(WMI_SERVICE_READY_EXT2_EVENTID) \ OP(WMI_READY_EVENTID) \ OP(WMI_SCAN_EVENTID) \ OP(WMI_PDEV_TPC_CONFIG_EVENTID) \ Loading Loading @@ -1630,6 +1641,9 @@ typedef enum { OP(WMI_TWT_BTWT_REMOVE_STA_COMPLETE_EVENTID) \ OP(WMI_VDEV_DELETE_ALL_PEER_RESP_EVENTID) \ OP(WMI_CHAN_RF_CHARACTERIZATION_INFO_EVENTID) \ OP(WMI_ROAM_PREAUTH_START_EVENTID) \ OP(WMI_GET_ELNA_BYPASS_EVENTID) \ OP(WMI_ROAM_PMKID_REQUEST_EVENTID) \ /* add new EVT_LIST elements above this line */ Loading Loading @@ -3076,6 +3090,18 @@ WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_DEAUTH_CONFIG_CMDID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_roam_idle_config_cmd_fixed_param, wmi_roam_idle_config_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_IDLE_CONFIG_CMDID); /* Roam Pre-Authentication completion status */ #define WMITLV_TABLE_WMI_ROAM_PREAUTH_STATUS_CMDID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_roam_preauth_status_cmd_fixed_param, wmi_roam_preauth_status_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, pmkid, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_PREAUTH_STATUS_CMDID); /** Roam PMKID request event */ #define WMITLV_TABLE_WMI_ROAM_PMKID_REQUEST_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_roam_pmkid_request_event_fixed_param, wmi_roam_pmkid_request_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_roam_pmkid_request_tlv_param, pmkid_request, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_PMKID_REQUEST_EVENTID); /* Screen Status Command parameters */ #define WMITLV_TABLE_WMI_IDLE_TRIGGER_MONITOR_CMDID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_idle_trigger_monitor_cmd_fixed_param, wmi_idle_trigger_monitor_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) Loading @@ -3097,6 +3123,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_DSM_FILTER_CMDID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_roam_blacklist_with_timeout_tlv_param, blacklist_with_timeout, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_BLACKLIST_EVENTID); /* Roam Pre-Authentication Start Event */ #define WMITLV_TABLE_WMI_ROAM_PREAUTH_START_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_roam_preauth_start_event_fixed_param, wmi_roam_preauth_start_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_PREAUTH_START_EVENTID); #define WMITLV_TABLE_WMI_LPI_RESULT_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_lpi_result_event_fixed_param, wmi_lpi_result_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, data, WMITLV_SIZE_VAR) Loading Loading @@ -4025,6 +4056,16 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_SET_RAP_CONFIG_CMDID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, oem_data, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_OEM_DATA_CMDID); /* Set ELNA BYPASS cmd */ #define WMITLV_TABLE_WMI_SET_ELNA_BYPASS_CMDID(id,op,buf,len) \ WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_set_elna_bypass_cmd_fixed_param, wmi_set_elna_bypass_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_SET_ELNA_BYPASS_CMDID); /* Get ELNA BYPASS cmd */ #define WMITLV_TABLE_WMI_GET_ELNA_BYPASS_CMDID(id,op,buf,len) \ WMITLV_ELEM(id, op, buf, len, WMITLV_TAG_STRUC_wmi_get_elna_bypass_cmd_fixed_param, wmi_get_elna_bypass_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_GET_ELNA_BYPASS_CMDID); /************************** TLV definitions of WMI events *******************************/ Loading Loading @@ -4059,6 +4100,13 @@ WMITLV_CREATE_PARAM_STRUC(WMI_SERVICE_AVAILABLE_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_CHAN_RF_CHARACTERIZATION_INFO, wmi_chan_rf_characterization_info, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_SERVICE_READY_EXT_EVENTID); /* SERVICE_READY_EXT2 event */ #define WMITLV_TABLE_WMI_SERVICE_READY_EXT2_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_service_ready_ext2_event_fixed_param, wmi_service_ready_ext2_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_DMA_RING_CAPABILITIES, dma_ring_caps, WMITLV_SIZE_VAR) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_spectral_bin_scaling_params, wmi_bin_scaling_params, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_SERVICE_READY_EXT2_EVENTID); #define WMITLV_TABLE_WMI_CHAN_RF_CHARACTERIZATION_INFO_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_chan_rf_characterization_info_event_fixed_param, wmi_chan_rf_characterization_info_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, WMI_CHAN_RF_CHARACTERIZATION_INFO, wmi_chan_rf_characterization_info, WMITLV_SIZE_VAR) Loading Loading @@ -5453,6 +5501,12 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_RAP_INFO_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_BYTE, A_UINT8, bufp, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_VDEV_MGMT_OFFLOAD_EVENTID); /* get ELNA BYPASS status event */ #define WMITLV_TABLE_WMI_GET_ELNA_BYPASS_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_get_elna_bypass_event_fixed_param, wmi_get_elna_bypass_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_GET_ELNA_BYPASS_EVENTID); #ifdef __cplusplus } #endif Loading
fw/wmi_unified.h +102 −5 Original line number Diff line number Diff line Loading @@ -708,6 +708,8 @@ typedef enum { DEPRECATED__WMI_ROAM_DSM_FILTER_CMDID, /** Enable or disable roaming triggers */ WMI_ROAM_ENABLE_DISABLE_TRIGGER_REASON_CMDID, /** Pre-Authentication completion status command */ WMI_ROAM_PREAUTH_STATUS_CMDID, /** offload scan specific commands */ /** set offload scan AP profile */ Loading Loading @@ -985,6 +987,10 @@ typedef enum { WMI_GET_TPC_POWER_CMDID, /* Specify when to start monitoring for idle state */ WMI_IDLE_TRIGGER_MONITOR_CMDID, /** set ELNA BYPASS status */ WMI_SET_ELNA_BYPASS_CMDID, /** get ELNA BYPASS status */ WMI_GET_ELNA_BYPASS_CMDID, /* Offload 11k related requests */ WMI_11K_OFFLOAD_REPORT_CMDID = WMI_CMD_GRP_START_ID(WMI_GRP_11K_OFFLOAD), Loading Loading @@ -1345,6 +1351,9 @@ typedef enum { WMI_CHAN_RF_CHARACTERIZATION_INFO_EVENTID, /** 2nd extension of SERVICE_READY msg with extra target capability info */ WMI_SERVICE_READY_EXT2_EVENTID, /* VDEV specific events */ /** VDEV started event in response to VDEV_START request */ WMI_VDEV_START_RESP_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_VDEV), Loading Loading @@ -1529,6 +1538,10 @@ typedef enum { WMI_ROAM_SCAN_STATS_EVENTID, /** Blacklisted AP information event */ WMI_ROAM_BLACKLIST_EVENTID, /** Roam Pre-Authentication start event */ WMI_ROAM_PREAUTH_START_EVENTID, /** Roaming PMKID request event */ WMI_ROAM_PMKID_REQUEST_EVENTID, /** P2P disc found */ WMI_P2P_DISC_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_P2P), Loading Loading @@ -1731,6 +1744,9 @@ typedef enum { /** event to provide MU-EDCA Parameters (to update host's beacon config) */ WMI_MUEDCA_PARAMS_CONFIG_EVENTID, /** event to get ELNA BYPASS status */ WMI_GET_ELNA_BYPASS_EVENTID, /* GPIO Event */ WMI_GPIO_INPUT_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_GPIO), /** upload H_CV info WMI event Loading Loading @@ -2542,6 +2558,10 @@ typedef struct { */ } wmi_service_ready_ext_event_fixed_param; typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_service_ready_ext2_event_fixed_param.*/ } wmi_service_ready_ext2_event_fixed_param; typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_chan_rf_characterization_info_event_fixed_param */ /* Loading Loading @@ -8462,6 +8482,11 @@ typedef struct { * added to AST table for traffic flow between mesh stations */ #define WMI_UNIFIED_VDEV_SUBTYPE_MESH_11S 0x6 /* Subtype to indicate that the AP VAP is in smart monitor mode * This is needed to differentiate in firmware betweem normal AP mode * with smart monitor AP mode */ #define WMI_UNIFIED_VDEV_SUBTYPE_SMART_MON 0x7 /** values for vdev_start_request flags */ /** Indicates that AP VDEV uses hidden ssid. only valid for Loading Loading @@ -12191,7 +12216,7 @@ typedef struct { /** unique id identifying the VDEV, generated by the caller */ A_UINT32 vdev_id; /** roam scan period value */ A_UINT32 roam_scan_period; A_UINT32 roam_scan_period; /* units = milliseconds */ /** Aging for Roam scans */ A_UINT32 roam_scan_age; /** Inactivity monitoring time to consider device is in inactive state with data count is less than roam_inactive_count */ Loading @@ -12200,6 +12225,8 @@ typedef struct { A_UINT32 roam_inactive_count; /** New roam scan period after device is in inactivity state */ A_UINT32 roam_scan_period_after_inactivity; /* units = milliseconds */ /** roam full scan period value */ A_UINT32 roam_full_scan_period; /* units = milliseconds */ } wmi_roam_scan_period_fixed_param; /** Loading Loading @@ -12270,6 +12297,8 @@ enum { WMI_AUTH_FT_RSNA_SUITE_B_8021X_SHA384, WMI_AUTH_FT_RSNA_FILS_SHA256, WMI_AUTH_FT_RSNA_FILS_SHA384, WMI_AUTH_WPA3_SAE, WMI_AUTH_WPA3_OWE, }; typedef enum { Loading Loading @@ -12893,6 +12922,21 @@ typedef struct { */ } wmi_roam_blacklist_event_fixed_param; typedef struct { A_UINT32 tlv_header; /** candidate AP mac address */ wmi_mac_addr bssid; } wmi_roam_pmkid_request_tlv_param; /** WMI_ROAM_PMKID_REQUEST_EVENT: generated whenever FW needs the PMKID while roaming **/ typedef struct { A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_roam_pmkid_request_event_fixed_param */ A_UINT32 vdev_id; /* This TLV is followed by further TLVs: * wmi_roam_pmkid_request_tlv_param pmkid_request[] */ } wmi_roam_pmkid_request_event_fixed_param; /** WMI_ROAM_EVENT: roam event triggering the host roam logic. * generated when ever a better AP is found in the recent roam scan (or) * when beacon miss is detected (or) when a DEAUTH/DISASSOC is received Loading Loading @@ -24289,6 +24333,9 @@ static INLINE A_UINT8 *wmi_id_to_name(A_UINT32 wmi_command) WMI_RETURN_STRING(WMI_TWT_BTWT_INVITE_STA_CMDID); WMI_RETURN_STRING(WMI_TWT_BTWT_REMOVE_STA_CMDID); WMI_RETURN_STRING(WMI_OEM_DATA_CMDID); WMI_RETURN_STRING(WMI_ROAM_PREAUTH_STATUS_CMDID); WMI_RETURN_STRING(WMI_SET_ELNA_BYPASS_CMDID); WMI_RETURN_STRING(WMI_GET_ELNA_BYPASS_CMDID); } return "Invalid WMI cmd"; Loading Loading @@ -25657,6 +25704,30 @@ typedef enum { */ #define WLAN_PDEV_MAX_NUM_BSSID_DISALLOW_LIST 28 /** Roam Pre-Authentication completion status */ typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_roam_preauth_status_cmd_fixed_param */ A_UINT32 vdev_id; /* preauth_status, 0 - Success, Non Zero - Failure * Refer to IEEE Std 802.11-2016 Table 9-46 for meaning of status values. */ A_UINT32 preauth_status; /* AP BSSID for which pre-authentication is completed */ wmi_mac_addr candidate_ap_bssid; /** * PMKID computed after successful pre-authentication. This is valid only if preauth_status is success * A_UINT8 pmkid[]; */ } wmi_roam_preauth_status_cmd_fixed_param; /** Roam Pre-Authentication start event */ typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_roam_preauth_start_event_fixed_param */ A_UINT32 vdev_id; /* AP BSSID for which host needs to start pre-authentication */ wmi_mac_addr candidate_ap_bssid; } wmi_roam_preauth_start_event_fixed_param; typedef struct { /* * The timestamp is in units of ticks of a 19.2MHz clock. Loading Loading @@ -27281,6 +27352,32 @@ typedef struct { A_UINT32 valid_fields; } wlanfw_iface_combination; typedef struct { /** TLV tag and len; tag equals * WMITLV_TAG_STRUC_wmi_set_elna_bypass_cmd_fixed_param */ A_UINT32 tlv_header; /* VDEV identifier */ A_UINT32 vdev_id; /** 1-Enable, 0-Disable */ A_UINT32 en_dis; } wmi_set_elna_bypass_cmd_fixed_param; typedef struct { /** TLV tag and len; tag equals * WMITLV_TAG_STRUC_wmi_get_elna_bypass_cmd_fixed_param */ A_UINT32 tlv_header; /* VDEV identifier */ A_UINT32 vdev_id; } wmi_get_elna_bypass_cmd_fixed_param; typedef struct { A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_get_elna_bypass_event_fixed_param */ /* VDEV identifier */ A_UINT32 vdev_id; /** 1-Enable, 0-Disable */ A_UINT32 en_dis; } wmi_get_elna_bypass_event_fixed_param; /* ADD NEW DEFS HERE */
fw/wmi_version.h +1 −1 Original line number Diff line number Diff line Loading @@ -36,7 +36,7 @@ #define __WMI_VER_MINOR_ 0 /** WMI revision number has to be incremented when there is a * change that may or may not break compatibility. */ #define __WMI_REVISION_ 692 #define __WMI_REVISION_ 699 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work Loading