/** WMI_ROAM_BTM_SET_NON_MATCHING_CNDS_ACTION definition: When BTM candidate is not matched with cache by WMI_ROAM_BTM_SET_CNDS_MATCH_CONDITION, determine what to do */
#define WMI_ROAM_BTM_NON_MATCHING_CNDS_SCAN_CONSUME 0 /** Invoke roam scan and consume within firmware. Applicable only when ROAM_SCAN_MODE is enabled. If ROAM_SCAN_MODE is disabled, firmware won't scan and forward it to host */
@@ -11508,6 +11511,13 @@ typedef struct {
* disregarded.
*/
A_UINT32 disassoc_timer_threshold;
/*
* Bitmask (with enum WMI_ROAM_TRIGGER_REASON_ID identifying the bit
* positions) showing for which roam_trigger_reasons the
* btm query needs to be sent.
* If roam trigger reasons are unspecified, btm_bitmap will be 0x0.
*/
A_UINT32 btm_bitmap;
} wmi_btm_config_fixed_param;
#define WMI_ROAM_5G_BOOST_PENALIZE_ALGO_FIXED 0x0
@@ -11606,6 +11616,8 @@ enum {
WMI_AUTH_RSNA_FILS_SHA384,
WMI_AUTH_RSNA_SUITE_B_8021X_SHA256,
WMI_AUTH_RSNA_SUITE_B_8021X_SHA384,
WMI_AUTH_FT_RSNA_SAE,
WMI_AUTH_FT_RSNA_SUITE_B_8021X_SHA384,
};
typedef enum {
@@ -12169,6 +12181,8 @@ typedef struct {
A_UINT32 r0kh_id_len;
A_UINT32 psk_msk[ROAM_OFFLOAD_PSK_MSK_BYTES>>2]; /* psk/msk offload. As this 4 byte aligned, we don't declare it as tlv array */
A_UINT32 psk_msk_len; /**length of psk_msk*/
A_UINT32 psk_msk_ext_len; /**length of psk_msk_ext*/
(2) data/mgmt frame is received from roamed AP, which needs to return to host
*/
#define GTK_OFFLOAD_KCK_EXTENDED_BYTES 32
typedef struct {
/** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_key_material */
A_UINT32 tlv_header;
@@ -17691,6 +17707,12 @@ typedef struct {
A_UINT8 replay_counter[GTK_REPLAY_COUNTER_BYTES];
} wmi_key_material;
typedef struct {
/** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_key_material_ext */
A_UINT32 tlv_header;
A_UINT8 key_buffer[GTK_OFFLOAD_KEK_EXTENDED_BYTES+GTK_OFFLOAD_KCK_EXTENDED_BYTES+GTK_REPLAY_COUNTER_BYTES]; /*the split of kck, kek should be known to host based on akmp*/
} wmi_key_material_ext;
typedef struct {
A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_roam_synch_event_fixed_param */
/** Unique id identifying the VDEV on which roaming is done by firmware */
@@ -17726,7 +17748,7 @@ typedef struct {
* A_UINT32 status; subnet changed status not being used currently.
* will pass the information using roam_status.
* A_UINT8 reassoc_req_frame[]; length identified by reassoc_req_len