Loading fw/htt_stats.h +83 −0 Original line number Diff line number Diff line Loading @@ -357,6 +357,17 @@ enum htt_dbg_ext_stats_type { */ HTT_DBG_EXT_STA_11AX_UL_STATS = 33, /* HTT_DBG_EXT_VDEV_RTT_RESP_STATS * PARAMS: * - config_param0: * [Bit7 : Bit0] vdev_id:8 * [Bit31 : Bit8] rsvd:24 * RESP MSG: * - */ HTT_DBG_EXT_VDEV_RTT_RESP_STATS = 34, /* keep this last */ HTT_DBG_NUM_EXT_STATS = 256, }; Loading Loading @@ -499,6 +510,7 @@ typedef enum { HTT_STATS_TXBF_OFDMA_BRP_STATS_TAG = 115, /* htt_txbf_ofdma_brp_stats_tlv */ HTT_STATS_TXBF_OFDMA_STEER_STATS_TAG = 116, /* htt_txbf_ofdma_steer_stats_tlv */ HTT_STATS_STA_UL_OFDMA_STATS_TAG = 117, /* htt_sta_ul_ofdma_stats_tlv */ HTT_STATS_VDEV_RTT_RESP_STATS_TAG = 118, /* htt_vdev_rtt_resp_stats_tlv */ HTT_STATS_MAX_TAG, } htt_tlv_tag_t; Loading Loading @@ -759,6 +771,10 @@ typedef struct { A_UINT32 num_mu_peer_blacklisted; /* Num of times mu_ofdma seq posted */ A_UINT32 mu_ofdma_seq_posted; /* Num of times UL MU MIMO seq posted */ A_UINT32 ul_mumimo_seq_posted; /* Num of times UL OFDMA seq posted */ A_UINT32 ul_ofdma_seq_posted; } htt_tx_pdev_stats_cmn_tlv; #define HTT_TX_PDEV_STATS_URRN_TLV_SZ(_num_elems) (sizeof(A_UINT32) * (_num_elems)) Loading Loading @@ -2657,6 +2673,9 @@ typedef struct { A_UINT32 desc_threshold; A_UINT32 hwsch_tqm_invalid_status; A_UINT32 missed_tqm_gen_mpdus; A_UINT32 tqm_active_tids; A_UINT32 tqm_inactive_tids; A_UINT32 tqm_active_msduq_flows; } htt_tx_tqm_cmn_stats_tlv; typedef struct { Loading Loading @@ -4619,6 +4638,48 @@ typedef struct { */ A_UINT32 num_sr_rx_ge_pd_rssi_thr; }; /* * Count of number of times OBSS frames were aborted and non-SRG * opportunities were created. Non-SRG opportunities are created when * incoming OBSS RSSI is lesser than the global configured non-SRG RSSI * threshold and non-SRG OBSS color / non-SRG OBSS BSSID registers * allow non-SRG TX. */ A_UINT32 num_non_srg_opportunities; /* * Count of number of times TX PPDU were transmitted using non-SRG * opportunities created. Incoming OBSS frame RSSI is compared with per * PPDU non-SRG RSSI threshold configured in each PPDU. If incoming OBSS * RSSI < non-SRG RSSI threshold configured in each PPDU, then non-SRG * tranmission happens. */ A_UINT32 num_non_srg_ppdu_tried; /* * Count of number of times non-SRG based TX transmissions were successful */ A_UINT32 num_non_srg_ppdu_success; /* * Count of number of times OBSS frames were aborted and SRG opportunities * were created. Srg opportunities are created when incoming OBSS RSSI * is less than the global configured SRG RSSI threshold and SRC OBSS * color / SRG OBSS BSSID / SRG partial bssid / SRG BSS color bitmap * registers allow SRG TX. */ A_UINT32 num_srg_opportunities; /* * Count of number of times TX PPDU were transmitted using SRG * opportunities created. * Incoming OBSS frame RSSI is compared with per PPDU SRG RSSI * threshold configured in each PPDU. * If incoming OBSS RSSI < SRG RSSI threshold configured in each PPDU, * then SRG tranmission happens. */ A_UINT32 num_srg_ppdu_tried; /* * Count of number of times SRG based TX transmissions were successful */ A_UINT32 num_srg_ppdu_success; } htt_pdev_obss_pd_stats_tlv; /* NOTE: Loading Loading @@ -4988,5 +5049,27 @@ typedef struct { htt_sta_ul_ofdma_stats_tlv ul_ofdma_sta_stats; } htt_sta_11ax_ul_stats_t; typedef struct { htt_tlv_hdr_t tlv_hdr; /* No of Fine Timing Measurement frames transmitted successfully */ A_UINT32 tx_ftm_suc; /* No of Fine Timing Measurement frames transmitted successfully after retry */ A_UINT32 tx_ftm_suc_retry; /* No of Fine Timing Measurement frames not transmitted successfully */ A_UINT32 tx_ftm_fail; /* No of Fine Timing Measurement Request frames received, including initial, non-initial, and duplicates */ A_UINT32 rx_ftmr_cnt; /* No of duplicate Fine Timing Measurement Request frames received, including both initial and non-initial */ A_UINT32 rx_ftmr_dup_cnt; /* No of initial Fine Timing Measurement Request frames received */ A_UINT32 rx_iftmr_cnt; /* No of duplicate initial Fine Timing Measurement Request frames received */ A_UINT32 rx_iftmr_dup_cnt; } htt_vdev_rtt_resp_stats_tlv; typedef struct { htt_vdev_rtt_resp_stats_tlv vdev_rtt_resp_stats; } htt_vdev_rtt_resp_stats_t; #endif /* __HTT_STATS_H__ */ fw/wmi_tlv_defs.h +7 −0 Original line number Diff line number Diff line Loading @@ -1075,6 +1075,7 @@ typedef enum { WMITLV_TAG_STRUC_wmi_pdev_srg_obss_bssid_enable_bitmap_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_pdev_non_srg_obss_color_enable_bitmap_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_pdev_non_srg_obss_bssid_enable_bitmap_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_roam_capability_report_event_fixed_param, } WMITLV_TAG_ID; /* Loading Loading @@ -1768,6 +1769,7 @@ typedef enum { OP(WMI_VDEV_SEND_BIG_DATA_P2_EVENTID) \ OP(WMI_AUDIO_AGGR_REPORT_STATISTICS_EVENTID) \ OP(WMI_PDEV_SSCAN_FW_PARAM_EVENTID) \ OP(WMI_ROAM_CAPABILITY_REPORT_EVENTID) \ /* add new EVT_LIST elements above this line */ Loading Loading @@ -5933,6 +5935,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_AUDIO_AGGR_REPORT_STATISTICS_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_pdev_sscan_fft_bin_index, fft_bin_index, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_SSCAN_FW_PARAM_EVENTID); /* Roam capability report event */ #define WMITLV_TABLE_WMI_ROAM_CAPABILITY_REPORT_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_roam_capability_report_event_fixed_param, wmi_roam_capability_report_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_CAPABILITY_REPORT_EVENTID); #ifdef __cplusplus } Loading fw/wmi_unified.h +91 −0 Original line number Diff line number Diff line Loading @@ -1649,6 +1649,8 @@ typedef enum { WMI_ROAM_STATS_EVENTID, /** Roam scan channels list */ WMI_ROAM_SCAN_CHANNEL_LIST_EVENTID, /** Firmware roam capability information */ WMI_ROAM_CAPABILITY_REPORT_EVENTID, /** P2P disc found */ WMI_P2P_DISC_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_P2P), Loading Loading @@ -2810,6 +2812,12 @@ typedef struct { * are not specified. */ A_UINT32 hw_min_max_tx_power_5g; /* * Number of peers supported per WMI_PEER_CHAN_WIDTH_SWITCH_CMDID * 0 - not enabled */ A_UINT32 chwidth_num_peer_caps; } wmi_service_ready_ext2_event_fixed_param; typedef struct { Loading Loading @@ -5385,6 +5393,35 @@ typedef struct { A_UINT32 conformance_test_limit_2G; A_UINT32 conformance_test_limit_5G; A_UINT32 dfs_domain; /** * The below conformance_test_limit index fields are for supporting the * 5G sub-band CTL feature. * Conformance test limits (CTLs) are the product-specific * regulatory-compliant powers stored in the board data file (BDF). * These CTLs within the BDF are identified by CTL index values. * For example, the BDF file is expected to contain CTL data for * FCC (CTL index = 0x10), ETSI (CTL index = 0x30), * Japan/MKK (CTL index = 0x40), Korea (CTL index = 0x50), * and China (CTL index = 0x60) CTL regions. * The target FW will use the CTL indices specified in this message to * find a BDF CTL entry with a matching CTL index value, and then use * that CTL as one of the inputs into the tx power limit computation. * A CTL index value of 0x0 is invalid, and will be ignored by the FW. */ A_UINT32 conformance_test_limit_5G_subband_UNII1; A_UINT32 conformance_test_limit_5G_subband_UNII2a; A_UINT32 conformance_test_limit_5G_subband_UNII2c; A_UINT32 conformance_test_limit_5G_subband_UNII3; A_UINT32 conformance_test_limit_5G_subband_UNII4; /** * The below conformance_test_limit index fields are like the above, * but are for supporting the 6G sub-band CTL feature. */ A_UINT32 conformance_test_limit_6G_subband_UNII5; A_UINT32 conformance_test_limit_6G_subband_UNII6; A_UINT32 conformance_test_limit_6G_subband_UNII7; A_UINT32 conformance_test_limit_6G_subband_UNII8; } wmi_pdev_set_regdomain_cmd_fixed_param; typedef struct { Loading Loading @@ -9914,6 +9951,15 @@ typedef struct { A_UINT32 vdev_id; } wmi_vdev_delete_cmd_fixed_param; enum WMI_VDEV_UP_FLAGS { /** EMA_MBSSID_AP * Valid only for STA VDEV. * This flag will be set when STA connected MBSSID AP is EMA capable. * EMA - Enhanced Multiple BSS Advertisemet. */ WMI_VDEV_UP_FLAG_EMA_MBSSID_AP = 0x00000001, }; typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_up_cmdid_fixed_param */ /** unique id identifying the VDEV, generated by the caller */ Loading @@ -9934,6 +9980,8 @@ typedef struct { A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_stop_cmd_fixed_param */ /** unique id identifying the VDEV, generated by the caller */ A_UINT32 vdev_id; /** flags - this is a bitwise-or combination of WMI_VDEV_UP_FLAGS values */ A_UINT32 flags; } wmi_vdev_stop_cmd_fixed_param; typedef struct { Loading Loading @@ -11678,6 +11726,12 @@ WMI_STA_PS_PARAM_QPOWER_SPEC_MAX_SPEC_NODATA_PSPOLL = 9, * after AP has set the TIM bit */ WMI_STA_PS_PARAM_MAX_RESET_ITO_COUNT_ON_TIM_NO_TXRX = 10, /** * Flag to enable/disable Powersave Optimization * in WOW */ WMI_STA_PS_PARAM_ENABLE_PS_OPT_IN_WOW = 11, }; typedef struct { Loading Loading @@ -16394,6 +16448,7 @@ typedef enum { RECOVERY_SIM_INFINITE_LOOP = 0x06, RECOVERY_SIM_PCIE_LINKDOWN = 0x07, RECOVERY_SIM_SELF_RECOVERY = 0x08, RECOVERY_SIM_BT_RECOVERY = 0x09, } RECOVERY_SIM_TYPE; /* WMI_FORCE_FW_HANG_CMDID */ Loading Loading @@ -18798,6 +18853,13 @@ typedef struct { A_UINT32 vdev_id; /** Actual length in byte of data[]. */ A_UINT32 data_len; /** * pdev_vdev_flag - 0 follow old method (vdev_id is valid, ignore pdev_id) * pdev_vdev_flag - 1 pdev_id is valid */ A_UINT32 pdev_vdev_flag; /** Unique id identifying the PDEV */ A_UINT32 pdev_id; /** This structure is used to send OEM DATA binary blobs from * application/service to firmware where Host driver is pass through. * The OEM-specific commands from OEM-specific userspace applications Loading Loading @@ -27840,6 +27902,35 @@ typedef struct { */ } wmi_roam_scan_channel_list_event_fixed_param; typedef enum { WMI_ROAM_CND_RSSI_SCORING = 0x00000001, /* FW considers RSSI scoring */ WMI_ROAM_CND_HT_SCORING = 0x00000002, /* FW considers HT scoring */ WMI_ROAM_CND_VHT_SCORING = 0x00000004, /* FW considers VHT scoring */ WMI_ROAM_CND_HE_SCORING = 0x00000008, /* FW considers 11ax scoring */ WMI_ROAM_CND_BW_SCORING = 0x00000010, /* FW considers Bandwidth scoring */ WMI_ROAM_CND_BAND_SCORING = 0x00000020, /* FW considers Band(2G/5G) scoring */ WMI_ROAM_CND_NSS_SCORING = 0x00000040, /* FW considers NSS(1x1 / 2x2) scoring */ WMI_ROAM_CND_CHAN_CONGESTION_SCORING = 0x00000080, /* FW considers ESP/QBSS scoring */ WMI_ROAM_CND_BEAMFORMING_SCORING = 0x00000100, /* FW considers Beamforming scoring */ WMI_ROAM_CND_PCL_SCORING = 0x00000200, /* FW considers PCL scoring */ WMI_ROAM_CND_OCE_WAN_SCORING = 0x00000400, /* FW considers OCE WAN metrics scoring */ WMI_ROAM_CND_OCE_AP_TX_PWR_SCORING = 0x00000800, /* FW considers OCE AP Tx power scoring */ WMI_ROAM_CND_OCE_AP_SUBNET_ID_SCORING = 0x00001000, /* FW considers OCE AP subnet id scoring */ } WMI_ROAM_CND_SCORING_PARAMS; typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_roam_capability_report_event_fixed_param */ /* * This event is sent asynchronously during FW init. * It indicates FW roam related capabilites to host. * * scoring_capability_bitmap = Indicates firmware candidate scoring * capabilities. It's a bitmap of values * from enum WMI_ROAM_CND_SCORING_PARAMS. */ A_UINT32 scoring_capability_bitmap; } wmi_roam_capability_report_event_fixed_param; typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_get_big_data_cmd_fixed_param */ A_UINT32 vdev_id; 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_ 829 #define __WMI_REVISION_ 836 /** 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 +83 −0 Original line number Diff line number Diff line Loading @@ -357,6 +357,17 @@ enum htt_dbg_ext_stats_type { */ HTT_DBG_EXT_STA_11AX_UL_STATS = 33, /* HTT_DBG_EXT_VDEV_RTT_RESP_STATS * PARAMS: * - config_param0: * [Bit7 : Bit0] vdev_id:8 * [Bit31 : Bit8] rsvd:24 * RESP MSG: * - */ HTT_DBG_EXT_VDEV_RTT_RESP_STATS = 34, /* keep this last */ HTT_DBG_NUM_EXT_STATS = 256, }; Loading Loading @@ -499,6 +510,7 @@ typedef enum { HTT_STATS_TXBF_OFDMA_BRP_STATS_TAG = 115, /* htt_txbf_ofdma_brp_stats_tlv */ HTT_STATS_TXBF_OFDMA_STEER_STATS_TAG = 116, /* htt_txbf_ofdma_steer_stats_tlv */ HTT_STATS_STA_UL_OFDMA_STATS_TAG = 117, /* htt_sta_ul_ofdma_stats_tlv */ HTT_STATS_VDEV_RTT_RESP_STATS_TAG = 118, /* htt_vdev_rtt_resp_stats_tlv */ HTT_STATS_MAX_TAG, } htt_tlv_tag_t; Loading Loading @@ -759,6 +771,10 @@ typedef struct { A_UINT32 num_mu_peer_blacklisted; /* Num of times mu_ofdma seq posted */ A_UINT32 mu_ofdma_seq_posted; /* Num of times UL MU MIMO seq posted */ A_UINT32 ul_mumimo_seq_posted; /* Num of times UL OFDMA seq posted */ A_UINT32 ul_ofdma_seq_posted; } htt_tx_pdev_stats_cmn_tlv; #define HTT_TX_PDEV_STATS_URRN_TLV_SZ(_num_elems) (sizeof(A_UINT32) * (_num_elems)) Loading Loading @@ -2657,6 +2673,9 @@ typedef struct { A_UINT32 desc_threshold; A_UINT32 hwsch_tqm_invalid_status; A_UINT32 missed_tqm_gen_mpdus; A_UINT32 tqm_active_tids; A_UINT32 tqm_inactive_tids; A_UINT32 tqm_active_msduq_flows; } htt_tx_tqm_cmn_stats_tlv; typedef struct { Loading Loading @@ -4619,6 +4638,48 @@ typedef struct { */ A_UINT32 num_sr_rx_ge_pd_rssi_thr; }; /* * Count of number of times OBSS frames were aborted and non-SRG * opportunities were created. Non-SRG opportunities are created when * incoming OBSS RSSI is lesser than the global configured non-SRG RSSI * threshold and non-SRG OBSS color / non-SRG OBSS BSSID registers * allow non-SRG TX. */ A_UINT32 num_non_srg_opportunities; /* * Count of number of times TX PPDU were transmitted using non-SRG * opportunities created. Incoming OBSS frame RSSI is compared with per * PPDU non-SRG RSSI threshold configured in each PPDU. If incoming OBSS * RSSI < non-SRG RSSI threshold configured in each PPDU, then non-SRG * tranmission happens. */ A_UINT32 num_non_srg_ppdu_tried; /* * Count of number of times non-SRG based TX transmissions were successful */ A_UINT32 num_non_srg_ppdu_success; /* * Count of number of times OBSS frames were aborted and SRG opportunities * were created. Srg opportunities are created when incoming OBSS RSSI * is less than the global configured SRG RSSI threshold and SRC OBSS * color / SRG OBSS BSSID / SRG partial bssid / SRG BSS color bitmap * registers allow SRG TX. */ A_UINT32 num_srg_opportunities; /* * Count of number of times TX PPDU were transmitted using SRG * opportunities created. * Incoming OBSS frame RSSI is compared with per PPDU SRG RSSI * threshold configured in each PPDU. * If incoming OBSS RSSI < SRG RSSI threshold configured in each PPDU, * then SRG tranmission happens. */ A_UINT32 num_srg_ppdu_tried; /* * Count of number of times SRG based TX transmissions were successful */ A_UINT32 num_srg_ppdu_success; } htt_pdev_obss_pd_stats_tlv; /* NOTE: Loading Loading @@ -4988,5 +5049,27 @@ typedef struct { htt_sta_ul_ofdma_stats_tlv ul_ofdma_sta_stats; } htt_sta_11ax_ul_stats_t; typedef struct { htt_tlv_hdr_t tlv_hdr; /* No of Fine Timing Measurement frames transmitted successfully */ A_UINT32 tx_ftm_suc; /* No of Fine Timing Measurement frames transmitted successfully after retry */ A_UINT32 tx_ftm_suc_retry; /* No of Fine Timing Measurement frames not transmitted successfully */ A_UINT32 tx_ftm_fail; /* No of Fine Timing Measurement Request frames received, including initial, non-initial, and duplicates */ A_UINT32 rx_ftmr_cnt; /* No of duplicate Fine Timing Measurement Request frames received, including both initial and non-initial */ A_UINT32 rx_ftmr_dup_cnt; /* No of initial Fine Timing Measurement Request frames received */ A_UINT32 rx_iftmr_cnt; /* No of duplicate initial Fine Timing Measurement Request frames received */ A_UINT32 rx_iftmr_dup_cnt; } htt_vdev_rtt_resp_stats_tlv; typedef struct { htt_vdev_rtt_resp_stats_tlv vdev_rtt_resp_stats; } htt_vdev_rtt_resp_stats_t; #endif /* __HTT_STATS_H__ */
fw/wmi_tlv_defs.h +7 −0 Original line number Diff line number Diff line Loading @@ -1075,6 +1075,7 @@ typedef enum { WMITLV_TAG_STRUC_wmi_pdev_srg_obss_bssid_enable_bitmap_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_pdev_non_srg_obss_color_enable_bitmap_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_pdev_non_srg_obss_bssid_enable_bitmap_cmd_fixed_param, WMITLV_TAG_STRUC_wmi_roam_capability_report_event_fixed_param, } WMITLV_TAG_ID; /* Loading Loading @@ -1768,6 +1769,7 @@ typedef enum { OP(WMI_VDEV_SEND_BIG_DATA_P2_EVENTID) \ OP(WMI_AUDIO_AGGR_REPORT_STATISTICS_EVENTID) \ OP(WMI_PDEV_SSCAN_FW_PARAM_EVENTID) \ OP(WMI_ROAM_CAPABILITY_REPORT_EVENTID) \ /* add new EVT_LIST elements above this line */ Loading Loading @@ -5933,6 +5935,11 @@ WMITLV_CREATE_PARAM_STRUC(WMI_AUDIO_AGGR_REPORT_STATISTICS_EVENTID); WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wmi_pdev_sscan_fft_bin_index, fft_bin_index, WMITLV_SIZE_VAR) WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_SSCAN_FW_PARAM_EVENTID); /* Roam capability report event */ #define WMITLV_TABLE_WMI_ROAM_CAPABILITY_REPORT_EVENTID(id,op,buf,len) \ WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_roam_capability_report_event_fixed_param, wmi_roam_capability_report_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) WMITLV_CREATE_PARAM_STRUC(WMI_ROAM_CAPABILITY_REPORT_EVENTID); #ifdef __cplusplus } Loading
fw/wmi_unified.h +91 −0 Original line number Diff line number Diff line Loading @@ -1649,6 +1649,8 @@ typedef enum { WMI_ROAM_STATS_EVENTID, /** Roam scan channels list */ WMI_ROAM_SCAN_CHANNEL_LIST_EVENTID, /** Firmware roam capability information */ WMI_ROAM_CAPABILITY_REPORT_EVENTID, /** P2P disc found */ WMI_P2P_DISC_EVENTID = WMI_EVT_GRP_START_ID(WMI_GRP_P2P), Loading Loading @@ -2810,6 +2812,12 @@ typedef struct { * are not specified. */ A_UINT32 hw_min_max_tx_power_5g; /* * Number of peers supported per WMI_PEER_CHAN_WIDTH_SWITCH_CMDID * 0 - not enabled */ A_UINT32 chwidth_num_peer_caps; } wmi_service_ready_ext2_event_fixed_param; typedef struct { Loading Loading @@ -5385,6 +5393,35 @@ typedef struct { A_UINT32 conformance_test_limit_2G; A_UINT32 conformance_test_limit_5G; A_UINT32 dfs_domain; /** * The below conformance_test_limit index fields are for supporting the * 5G sub-band CTL feature. * Conformance test limits (CTLs) are the product-specific * regulatory-compliant powers stored in the board data file (BDF). * These CTLs within the BDF are identified by CTL index values. * For example, the BDF file is expected to contain CTL data for * FCC (CTL index = 0x10), ETSI (CTL index = 0x30), * Japan/MKK (CTL index = 0x40), Korea (CTL index = 0x50), * and China (CTL index = 0x60) CTL regions. * The target FW will use the CTL indices specified in this message to * find a BDF CTL entry with a matching CTL index value, and then use * that CTL as one of the inputs into the tx power limit computation. * A CTL index value of 0x0 is invalid, and will be ignored by the FW. */ A_UINT32 conformance_test_limit_5G_subband_UNII1; A_UINT32 conformance_test_limit_5G_subband_UNII2a; A_UINT32 conformance_test_limit_5G_subband_UNII2c; A_UINT32 conformance_test_limit_5G_subband_UNII3; A_UINT32 conformance_test_limit_5G_subband_UNII4; /** * The below conformance_test_limit index fields are like the above, * but are for supporting the 6G sub-band CTL feature. */ A_UINT32 conformance_test_limit_6G_subband_UNII5; A_UINT32 conformance_test_limit_6G_subband_UNII6; A_UINT32 conformance_test_limit_6G_subband_UNII7; A_UINT32 conformance_test_limit_6G_subband_UNII8; } wmi_pdev_set_regdomain_cmd_fixed_param; typedef struct { Loading Loading @@ -9914,6 +9951,15 @@ typedef struct { A_UINT32 vdev_id; } wmi_vdev_delete_cmd_fixed_param; enum WMI_VDEV_UP_FLAGS { /** EMA_MBSSID_AP * Valid only for STA VDEV. * This flag will be set when STA connected MBSSID AP is EMA capable. * EMA - Enhanced Multiple BSS Advertisemet. */ WMI_VDEV_UP_FLAG_EMA_MBSSID_AP = 0x00000001, }; typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_up_cmdid_fixed_param */ /** unique id identifying the VDEV, generated by the caller */ Loading @@ -9934,6 +9980,8 @@ typedef struct { A_UINT32 tlv_header; /** TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_stop_cmd_fixed_param */ /** unique id identifying the VDEV, generated by the caller */ A_UINT32 vdev_id; /** flags - this is a bitwise-or combination of WMI_VDEV_UP_FLAGS values */ A_UINT32 flags; } wmi_vdev_stop_cmd_fixed_param; typedef struct { Loading Loading @@ -11678,6 +11726,12 @@ WMI_STA_PS_PARAM_QPOWER_SPEC_MAX_SPEC_NODATA_PSPOLL = 9, * after AP has set the TIM bit */ WMI_STA_PS_PARAM_MAX_RESET_ITO_COUNT_ON_TIM_NO_TXRX = 10, /** * Flag to enable/disable Powersave Optimization * in WOW */ WMI_STA_PS_PARAM_ENABLE_PS_OPT_IN_WOW = 11, }; typedef struct { Loading Loading @@ -16394,6 +16448,7 @@ typedef enum { RECOVERY_SIM_INFINITE_LOOP = 0x06, RECOVERY_SIM_PCIE_LINKDOWN = 0x07, RECOVERY_SIM_SELF_RECOVERY = 0x08, RECOVERY_SIM_BT_RECOVERY = 0x09, } RECOVERY_SIM_TYPE; /* WMI_FORCE_FW_HANG_CMDID */ Loading Loading @@ -18798,6 +18853,13 @@ typedef struct { A_UINT32 vdev_id; /** Actual length in byte of data[]. */ A_UINT32 data_len; /** * pdev_vdev_flag - 0 follow old method (vdev_id is valid, ignore pdev_id) * pdev_vdev_flag - 1 pdev_id is valid */ A_UINT32 pdev_vdev_flag; /** Unique id identifying the PDEV */ A_UINT32 pdev_id; /** This structure is used to send OEM DATA binary blobs from * application/service to firmware where Host driver is pass through. * The OEM-specific commands from OEM-specific userspace applications Loading Loading @@ -27840,6 +27902,35 @@ typedef struct { */ } wmi_roam_scan_channel_list_event_fixed_param; typedef enum { WMI_ROAM_CND_RSSI_SCORING = 0x00000001, /* FW considers RSSI scoring */ WMI_ROAM_CND_HT_SCORING = 0x00000002, /* FW considers HT scoring */ WMI_ROAM_CND_VHT_SCORING = 0x00000004, /* FW considers VHT scoring */ WMI_ROAM_CND_HE_SCORING = 0x00000008, /* FW considers 11ax scoring */ WMI_ROAM_CND_BW_SCORING = 0x00000010, /* FW considers Bandwidth scoring */ WMI_ROAM_CND_BAND_SCORING = 0x00000020, /* FW considers Band(2G/5G) scoring */ WMI_ROAM_CND_NSS_SCORING = 0x00000040, /* FW considers NSS(1x1 / 2x2) scoring */ WMI_ROAM_CND_CHAN_CONGESTION_SCORING = 0x00000080, /* FW considers ESP/QBSS scoring */ WMI_ROAM_CND_BEAMFORMING_SCORING = 0x00000100, /* FW considers Beamforming scoring */ WMI_ROAM_CND_PCL_SCORING = 0x00000200, /* FW considers PCL scoring */ WMI_ROAM_CND_OCE_WAN_SCORING = 0x00000400, /* FW considers OCE WAN metrics scoring */ WMI_ROAM_CND_OCE_AP_TX_PWR_SCORING = 0x00000800, /* FW considers OCE AP Tx power scoring */ WMI_ROAM_CND_OCE_AP_SUBNET_ID_SCORING = 0x00001000, /* FW considers OCE AP subnet id scoring */ } WMI_ROAM_CND_SCORING_PARAMS; typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_roam_capability_report_event_fixed_param */ /* * This event is sent asynchronously during FW init. * It indicates FW roam related capabilites to host. * * scoring_capability_bitmap = Indicates firmware candidate scoring * capabilities. It's a bitmap of values * from enum WMI_ROAM_CND_SCORING_PARAMS. */ A_UINT32 scoring_capability_bitmap; } wmi_roam_capability_report_event_fixed_param; typedef struct { A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wmi_vdev_get_big_data_cmd_fixed_param */ A_UINT32 vdev_id;
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_ 829 #define __WMI_REVISION_ 836 /** The Version Namespace should not be normally changed. Only * host and firmware of the same WMI namespace will work Loading