Merge "fw-api: CL 20071754 - update fw common interface files"
Cette révision appartient à :

révisé par
Gerrit - the friendly Code Review server

révision
d94ac76152
45
fw/htt.h
45
fw/htt.h
@@ -421,7 +421,7 @@ PREPACK struct htt_option_tlv_ll_bus_addr_size_t {
|
||||
* downloads over the host --> target bus are as slow as or slower than
|
||||
* the transmissions over the WLAN PHY. For cases where the bus is faster
|
||||
* than the WLAN PHY, the target will transmit relatively large A-MPDUs,
|
||||
* and consquently will send one TX_COMPL_IND message that covers several
|
||||
* and consequently will send one TX_COMPL_IND message that covers several
|
||||
* tx frames. For cases where the WLAN PHY is faster than the bus,
|
||||
* the target will end up transmitting very short A-MPDUs, and consequently
|
||||
* sending many TX_COMPL_IND messages, which each cover a very small number
|
||||
@@ -464,7 +464,7 @@ PREPACK struct htt_option_tlv_hl_suppress_tx_compl_ind_t {
|
||||
* The MAX_TX_QUEUE_GROUPS TLV can be sent from the target to the host as
|
||||
* a suffix to the VERSION_CONF message. If the host has specified in the
|
||||
* VER_REQ message a limit on the number of tx queue groups the host can
|
||||
* supprt, the target shall limit its specification of the maximum tx groups
|
||||
* support, the target shall limit its specification of the maximum tx groups
|
||||
* to be no larger than this host-specified limit.
|
||||
*
|
||||
* If the target does not provide a MAX_TX_QUEUE_GROUPS TLV, then the host
|
||||
@@ -1135,7 +1135,7 @@ PREPACK struct htt_tx_msdu_desc ## _paddr_bits_ ## _t \
|
||||
A_UINT16 chanfreq; \
|
||||
\
|
||||
/* Reason reserved is commented is increasing the htt structure size \
|
||||
* leads to some wierd issues. Contact Raj/Kyeyoon for more info \
|
||||
* leads to some weird issues. \
|
||||
* A_UINT32 reserved_dword3_bits0_31; \
|
||||
*/ \
|
||||
} POSTPACK
|
||||
@@ -2720,7 +2720,7 @@ typedef enum {
|
||||
/**
|
||||
* @brief HTT TX WBM Completion from firmware to host
|
||||
* @details
|
||||
* This structure is passed from firmware to host overlayed on wbm_release_ring
|
||||
* This structure is passed from firmware to host overlaid on wbm_release_ring
|
||||
* DWORD 3 and 4 for software based completions (Exception frames and
|
||||
* TQM bypass frames)
|
||||
* For software based completions, wbm_release_ring->release_source_module will
|
||||
@@ -2813,7 +2813,7 @@ PREPACK struct htt_tx_wbm_completion {
|
||||
* @details
|
||||
* This structure applies only to WLAN chips that contain WLAN Buffer Mgmt
|
||||
* (WBM) offload HW.
|
||||
* This structure is passed from firmware to host overlayed on wbm_release_ring
|
||||
* This structure is passed from firmware to host overlaid on wbm_release_ring
|
||||
* For software based completions, release_source_module will
|
||||
* be set to WIFIRELEASE_SOURCE_FW_E. Host SW is expected to inspect using
|
||||
* struct wbm_release_ring and then switch to this after looking at
|
||||
@@ -2892,7 +2892,7 @@ PREPACK struct htt_tx_wbm_completion_v2 {
|
||||
* @details
|
||||
* This structure applies only to WLAN chips that contain WLAN Buffer Mgmt
|
||||
* (WBM) offload HW.
|
||||
* This structure is passed from firmware to host overlayed on wbm_release_ring
|
||||
* This structure is passed from firmware to host overlaid on wbm_release_ring
|
||||
* For software based completions, release_source_module will
|
||||
* be set to WIFIRELEASE_SOURCE_FW_E. Host SW is expected to inspect using
|
||||
* struct wbm_release_ring and then switch to this after looking at
|
||||
@@ -2979,7 +2979,7 @@ typedef enum {
|
||||
* @details
|
||||
* This structure applies only to WLAN chips that contain WLAN Buffer Mgmt
|
||||
* (WBM) offload HW.
|
||||
* This structure is passed from firmware to host overlayed on wbm_release_ring.
|
||||
* This structure is passed from firmware to host overlaid on wbm_release_ring.
|
||||
* used only if tx_status is HTT_TX_FW2WBM_TX_STATUS_OK or HTT_TX_FW2WBM_TX_STATUS_DROP
|
||||
* or HTT_TX_FW2WBM_TX_STATUS_TTL
|
||||
*/
|
||||
@@ -3110,7 +3110,7 @@ PREPACK struct htt_tx_wbm_transmit_status {
|
||||
* @details
|
||||
* This structure applies only to WLAN chips that contain WLAN Buffer Mgmt
|
||||
* (WBM) offload HW.
|
||||
* This structure is passed from firmware to host overlayed on wbm_release_ring.
|
||||
* This structure is passed from firmware to host overlaid on wbm_release_ring.
|
||||
* used only if tx_status is HTT_TX_FW2WBM_TX_STATUS_REINJECT.
|
||||
*/
|
||||
PREPACK struct htt_tx_wbm_reinject_status {
|
||||
@@ -3127,7 +3127,7 @@ PREPACK struct htt_tx_wbm_reinject_status {
|
||||
* @details
|
||||
* This structure applies only to WLAN chips that contain WLAN Buffer Mgmt
|
||||
* (WBM) offload HW.
|
||||
* This structure is passed from firmware to host overlayed on wbm_release_ring.
|
||||
* This structure is passed from firmware to host overlaid on wbm_release_ring.
|
||||
* used only if tx_status is HTT_TX_FW2WBM_TX_STATUS_MEC_NOTIFY.
|
||||
* FW sends SA addresses to host for all multicast/broadcast packets received on
|
||||
* STA side.
|
||||
@@ -5134,7 +5134,7 @@ enum htt_msi_setup_type {
|
||||
* 3'b010: 4 usec
|
||||
* 3'b011: 8 usec (default)
|
||||
* 3'b100: 16 usec
|
||||
* Others: Reserverd
|
||||
* Others: Reserved
|
||||
* b'19 - response_required:
|
||||
* Host needs HTT_T2H_MSG_TYPE_SRING_SETUP_DONE as response
|
||||
* b'20 - ipa_drop_flag:
|
||||
@@ -8317,7 +8317,7 @@ enum htt_ip_da_sa_prefix {
|
||||
* b'9 - DISABLE_TA_CHECK: 1- Disable TA check for MPDU Sequence
|
||||
* num jump
|
||||
* b'10 - DISABLE_QOS_CHECK: 1- Disable checking if qos/nonqos
|
||||
* data type switch has happend for MPDU Sequence num jump
|
||||
* data type switch has happened for MPDU Sequence num jump
|
||||
* b'11 - DISABLE_RAW_CHECK: 1- Disable checking for raw packet type
|
||||
* for MPDU Sequence num jump
|
||||
* b'12 - DISABLE_DECRYPT_ERR_CHECK: 1- Disable fisa cache commands
|
||||
@@ -12112,7 +12112,7 @@ PREPACK struct htt_tx_offload_deliver_ind_hdr_t
|
||||
* In certain generations of chips, the peer map message also contains
|
||||
* a HW peer ID. This HW peer ID is used during rx --> tx frame forwarding
|
||||
* to identify which peer the frame needs to be forwarded to (i.e. the
|
||||
* peer assocated with the Destination MAC Address within the packet),
|
||||
* peer associated with the Destination MAC Address within the packet),
|
||||
* and particularly which vdev needs to transmit the frame (for cases
|
||||
* of inter-vdev rx --> tx forwarding). The HW peer id here is the same
|
||||
* meaning as AST_INDEX_0.
|
||||
@@ -12255,7 +12255,7 @@ PREPACK struct htt_tx_offload_deliver_ind_hdr_t
|
||||
*
|
||||
* The peer map v2 message also contains a HW peer ID. This HW peer ID
|
||||
* is used during rx --> tx frame forwarding to identify which peer the
|
||||
* frame needs to be forwarded to (i.e. the peer assocated with the
|
||||
* frame needs to be forwarded to (i.e. the peer associated with the
|
||||
* Destination MAC Address within the packet), and particularly which vdev
|
||||
* needs to transmit the frame (for cases of inter-vdev rx --> tx forwarding).
|
||||
* This DA-based peer ID that is provided for certain rx frames
|
||||
@@ -13891,7 +13891,7 @@ PREPACK struct htt_txq_group {
|
||||
* Purpose: Indicate whether data ACK RSSI is appended for each MSDU in
|
||||
* TX_COMP_IND message. The order of the per-MSDU ACK RSSI report
|
||||
* matches the order of the MSDU IDs. Although the ACK RSSI is the
|
||||
* same for all MSDUs witin a single PPDU, the RSSI is duplicated
|
||||
* same for all MSDUs within a single PPDU, the RSSI is duplicated
|
||||
* for each MSDU, for convenience.
|
||||
* The ACK RSSI values are valid when status is COMPLETE_OK (and
|
||||
* this append2 bit is set).
|
||||
@@ -14526,7 +14526,7 @@ typedef struct {
|
||||
* Purpose: indicate how many 32-bit integers follow the message header
|
||||
* - NUM_CHARS
|
||||
* Bits 31:16
|
||||
* Purpose: indicate how many 8-bit charaters follow the series of integers
|
||||
* Purpose: indicate how many 8-bit characters follow the series of integers
|
||||
*/
|
||||
#define HTT_RX_TEST_NUM_INTS_M 0xff00
|
||||
#define HTT_RX_TEST_NUM_INTS_S 8
|
||||
@@ -14729,7 +14729,7 @@ struct rx_reorder_stats {
|
||||
A_UINT32 rxdesc_bmc_msdus_inv_peer;
|
||||
/* Number of MSDUs dropped due to no first MSDU flag */
|
||||
A_UINT32 rxdesc_no_1st_msdu;
|
||||
/* Number of MSDUs droped due to ring overflow */
|
||||
/* Number of MSDUs dropped due to ring overflow */
|
||||
A_UINT32 msdu_drop_ring_ov;
|
||||
/* Number of MSDUs dropped due to FC mismatch */
|
||||
A_UINT32 msdu_drop_fc_mismatch;
|
||||
@@ -16678,7 +16678,7 @@ typedef enum {
|
||||
*
|
||||
* b'0:15 - flow pool ID: Existing flow pool ID
|
||||
*
|
||||
* b'16:31 - flow pool new size: new pool size for exisiting flow pool ID
|
||||
* b'16:31 - flow pool new size: new pool size for existing flow pool ID
|
||||
*
|
||||
*/
|
||||
|
||||
@@ -17307,7 +17307,7 @@ PREPACK struct htt_cfr_dump_compl_ind {
|
||||
* subsequent period (100 ms) as long as the backpressure remains unabated.
|
||||
* This message indicates the ring id along with current head and tail index
|
||||
* locations (i.e. write and read indices).
|
||||
* The backpressure time indicates the time in ms for which continous
|
||||
* The backpressure time indicates the time in ms for which continuous
|
||||
* backpressure has been observed in the ring.
|
||||
*
|
||||
* The message format is as follows:
|
||||
@@ -17326,11 +17326,12 @@ PREPACK struct htt_cfr_dump_compl_ind {
|
||||
* (HTT_T2H_MSG_TYPE_BKPRESSURE_EVENT_IND)
|
||||
* b'8:15 - pdev_id: 0 indicates msg is for UMAC ring.
|
||||
* 1, 2, 3 indicates pdev_id 0,1,2 and
|
||||
the msg is for LMAC ring.
|
||||
* the msg is for LMAC ring.
|
||||
* b'16:23 - ring_type: Refer to enum htt_backpressure_ring_type.
|
||||
* b'24:31 - ring_id: Refer enum htt_backpressure_umac_ring_id/
|
||||
* htt_backpressure_lmac_ring_id. This represents
|
||||
* the ring id for which continous backpressure is seen
|
||||
* the ring id for which continuous backpressure
|
||||
* is seen
|
||||
*
|
||||
* dword1 - b'0:15 - head_idx: This indicates the current head index of
|
||||
* the ring indicated by the ring_id
|
||||
@@ -17338,7 +17339,7 @@ PREPACK struct htt_cfr_dump_compl_ind {
|
||||
* dword1 - b'16:31 - tail_idx: This indicates the current tail index of
|
||||
* the ring indicated by the ring id
|
||||
*
|
||||
* dword2 - b'0:31 - backpressure_time_ms: Indicates how long continous
|
||||
* dword2 - b'0:31 - backpressure_time_ms: Indicates how long continuous
|
||||
* backpressure has been seen in the ring
|
||||
* indicated by the ring_id.
|
||||
* Units = milliseconds
|
||||
@@ -17846,7 +17847,7 @@ enum HTT_UL_OFDMA_TRIG_TYPE {
|
||||
* Bits 31:16
|
||||
* Purpose: indicates the secondary channel center frequency,
|
||||
* only for 11acvht 80plus80 mode
|
||||
* Value: secondary channel center frequeny, in MHz units, if applicable
|
||||
* Value: secondary channel center frequency, in MHz units, if applicable
|
||||
*
|
||||
* checksum field
|
||||
* - CHECK_SUM
|
||||
|
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2012-2016, 2020 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
|
||||
*
|
||||
@@ -62,7 +63,7 @@ enum htt_rx_ind_mpdu_status {
|
||||
HTT_RX_IND_MPDU_STATUS_ERR_INV_PEER,
|
||||
HTT_RX_IND_MPDU_STATUS_UNAUTH_PEER, /* only accept EAPOL frames */
|
||||
HTT_RX_IND_MPDU_STATUS_OUT_OF_SYNC,
|
||||
HTT_RX_IND_MPDU_STATUS_MGMT_CTRL, /* Non-data in promiscous mode */
|
||||
HTT_RX_IND_MPDU_STATUS_MGMT_CTRL, /* Non-data in promiscuous mode */
|
||||
HTT_RX_IND_MPDU_STATUS_TKIP_MIC_ERR,
|
||||
HTT_RX_IND_MPDU_STATUS_DECRYPT_ERR,
|
||||
HTT_RX_IND_MPDU_STATUS_MPDU_LENGTH_ERR,
|
||||
|
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2012-2014 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
|
||||
*
|
||||
@@ -237,7 +238,7 @@ enum {
|
||||
* - RMF_ENABLED (R)
|
||||
* Bit 6
|
||||
* Purpose: specify whether the peer in question has enable robust
|
||||
* management frames, to encrypt certain managment frames
|
||||
* management frames, to encrypt certain management frames
|
||||
* Value: HTT_ISOC_RMF enum
|
||||
* Value: HTT_ISOC_NON_QOS or HTT_ISOC_QOS
|
||||
* - VDEV_ID
|
||||
|
@@ -2732,7 +2732,7 @@ typedef struct {
|
||||
* The size of the actual mgmt payload (in bytes) can be obtained from
|
||||
* the frame_length field.
|
||||
* The size of entire payload including the padding for alignment
|
||||
* (in bytes) can be derived from the length in tlv parametes,
|
||||
* (in bytes) can be derived from the length in tlv parameters,
|
||||
* minus the 12 bytes of the above fields.
|
||||
*/
|
||||
A_UINT32 payload[1];
|
||||
@@ -2774,7 +2774,7 @@ typedef struct {
|
||||
* The size of the actual mgmt payload (in bytes) can be obtained from
|
||||
* the frame_length field.
|
||||
* The size of entire payload including the padding for alignment
|
||||
* (in bytes) can be derived from the length in tlv parametes,
|
||||
* (in bytes) can be derived from the length in tlv parameters,
|
||||
* minus the 12 bytes of the above fields.
|
||||
*/
|
||||
A_UINT32 payload[1];
|
||||
|
@@ -1954,7 +1954,7 @@ typedef struct {
|
||||
A_UINT32 mu_mimo_mpdus_failed_usr;
|
||||
/** 11AC DL MU MIMO number of mpdus re-queued to HW, per user */
|
||||
A_UINT32 mu_mimo_mpdus_requeued_usr;
|
||||
/** 11AC DL MU MIMO BA not receieved, per user */
|
||||
/** 11AC DL MU MIMO BA not received, per user */
|
||||
A_UINT32 mu_mimo_err_no_ba_usr;
|
||||
/** 11AC DL MU MIMO mpdu underrun encountered, per user */
|
||||
A_UINT32 mu_mimo_mpdu_underrun_usr;
|
||||
@@ -2097,7 +2097,7 @@ typedef struct {
|
||||
A_UINT32 mpdu_ack_fail_cnt;
|
||||
/** This will include sched cmd flush and time based discard */
|
||||
A_UINT32 mpdu_filt_cnt;
|
||||
/** Number of MPDUs for which ACK was sucessful but no Tx happened */
|
||||
/** Number of MPDUs for which ACK was successful but no Tx happened */
|
||||
A_UINT32 false_mpdu_ack_count;
|
||||
|
||||
/** Number of times txq timeout happened */
|
||||
@@ -2169,7 +2169,7 @@ typedef struct {
|
||||
* completing the burst, we identify the txop used in the burst and
|
||||
* incr the corresponding bin.
|
||||
* Each bin represents 1ms & we have 10 bins in this histogram.
|
||||
* they are deined in FW using the following macros
|
||||
* they are defined in FW using the following macros
|
||||
* #define WAL_MAX_TXOP_USED_CNT_HISTOGRAM 10
|
||||
* #define WAL_TXOP_USED_HISTOGRAM_INTERVAL 1000 ( 1 ms )
|
||||
*
|
||||
@@ -3336,7 +3336,7 @@ typedef struct {
|
||||
A_UINT32 mu_mimo_mpdus_failed_usr;
|
||||
/** 11AC DL MU MIMO number of mpdus re-queued to HW, per user */
|
||||
A_UINT32 mu_mimo_mpdus_requeued_usr;
|
||||
/** 11AC DL MU MIMO BA not receieved, per user */
|
||||
/** 11AC DL MU MIMO BA not received, per user */
|
||||
A_UINT32 mu_mimo_err_no_ba_usr;
|
||||
/** 11AC DL MU MIMO mpdu underrun encountered, per user */
|
||||
A_UINT32 mu_mimo_mpdu_underrun_usr;
|
||||
@@ -3351,7 +3351,7 @@ typedef struct {
|
||||
A_UINT32 ax_mu_mimo_mpdus_failed_usr;
|
||||
/** 11AX DL MU MIMO number of mpdus re-queued to HW, per user */
|
||||
A_UINT32 ax_mu_mimo_mpdus_requeued_usr;
|
||||
/** 11AX DL MU MIMO BA not receieved, per user */
|
||||
/** 11AX DL MU MIMO BA not received, per user */
|
||||
A_UINT32 ax_mu_mimo_err_no_ba_usr;
|
||||
/** 11AX DL MU MIMO mpdu underrun encountered, per user */
|
||||
A_UINT32 ax_mu_mimo_mpdu_underrun_usr;
|
||||
@@ -3366,7 +3366,7 @@ typedef struct {
|
||||
A_UINT32 ax_ofdma_mpdus_failed_usr;
|
||||
/** 11AX MU OFDMA number of mpdus re-queued to HW, per user */
|
||||
A_UINT32 ax_ofdma_mpdus_requeued_usr;
|
||||
/** 11AX MU OFDMA BA not receieved, per user */
|
||||
/** 11AX MU OFDMA BA not received, per user */
|
||||
A_UINT32 ax_ofdma_err_no_ba_usr;
|
||||
/** 11AX MU OFDMA mpdu underrun encountered, per user */
|
||||
A_UINT32 ax_ofdma_mpdu_underrun_usr;
|
||||
@@ -3498,7 +3498,7 @@ typedef enum {
|
||||
HTT_SCHED_TID_SKIP_UL_TWT_PAUSED, /* Skip ul tid if twt txq is paused */
|
||||
HTT_SCHED_TID_SKIP_PEER_UL_RX_NOT_ACTIVE, /* Skip ul tid if peer ul rx is not active */
|
||||
HTT_SCHED_TID_SKIP_NO_FORCE_TRIGGER, /* Skip ul tid if there is no force triggers */
|
||||
HTT_SCHED_TID_SKIP_SMART_BASIC_TRIGGER, /* Skip ul tid if smart basic trigger doesnot have enough data */
|
||||
HTT_SCHED_TID_SKIP_SMART_BASIC_TRIGGER, /* Skip ul tid if smart basic trigger doesn't have enough data */
|
||||
|
||||
|
||||
HTT_SCHED_INELIGIBILITY_MAX,
|
||||
@@ -3520,7 +3520,7 @@ typedef struct {
|
||||
} htt_sched_txq_sched_ineligibility_tlv_v;
|
||||
|
||||
typedef enum {
|
||||
HTT_SCHED_SUPERCYCLE_TRIGGER_NONE = 0, /* Supercycle not triggerd */
|
||||
HTT_SCHED_SUPERCYCLE_TRIGGER_NONE = 0, /* Supercycle not triggered */
|
||||
HTT_SCHED_SUPERCYCLE_TRIGGER_FORCED, /* forced supercycle trigger */
|
||||
HTT_SCHED_SUPERCYCLE_TRIGGER_LESS_NUM_TIDQ_ENTRIES, /* Num tidq entries is less than max_client threshold */
|
||||
HTT_SCHED_SUPERCYCLE_TRIGGER_LESS_NUM_ACTIVE_TIDS, /* Num active tids is less than max_client threshold */
|
||||
@@ -6314,7 +6314,7 @@ typedef enum {
|
||||
HTT_EXPLICIT_TXBF_MU_SIFS_STEER_STATS = 3,
|
||||
/* Multi user random back off steer stats */
|
||||
HTT_EXPLICIT_TXBF_MU_RBO_STEER_STATS = 4,
|
||||
/* For backward compatability new modes cannot be added */
|
||||
/* For backward compatibility new modes cannot be added */
|
||||
HTT_TXBF_MAX_NUM_OF_MODES = 5
|
||||
} htt_txbf_sound_steer_modes;
|
||||
|
||||
@@ -6486,7 +6486,7 @@ typedef struct {
|
||||
* 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.
|
||||
* transmission happens.
|
||||
*/
|
||||
A_UINT32 num_non_srg_ppdu_tried;
|
||||
/**
|
||||
@@ -6507,7 +6507,7 @@ typedef struct {
|
||||
* 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.
|
||||
* then SRG transmission happens.
|
||||
*/
|
||||
A_UINT32 num_srg_ppdu_tried;
|
||||
/**
|
||||
@@ -6585,15 +6585,15 @@ typedef struct {
|
||||
* histogram showing how many times different degrees of backpressure
|
||||
* duration occurred:
|
||||
* Index 0 indicates the number of times ring was
|
||||
* continously in backpressure state for 100 - 200ms.
|
||||
* continuously in backpressure state for 100 - 200ms.
|
||||
* Index 1 indicates the number of times ring was
|
||||
* continously in backpressure state for 200 - 300ms.
|
||||
* continuously in backpressure state for 200 - 300ms.
|
||||
* Index 2 indicates the number of times ring was
|
||||
* continously in backpressure state for 300 - 400ms.
|
||||
* continuously in backpressure state for 300 - 400ms.
|
||||
* Index 3 indicates the number of times ring was
|
||||
* continously in backpressure state for 400 - 500ms.
|
||||
* continuously in backpressure state for 400 - 500ms.
|
||||
* Index 4 indicates the number of times ring was
|
||||
* continously in backpressure state beyond 500ms.
|
||||
* continuously in backpressure state beyond 500ms.
|
||||
*/
|
||||
A_UINT32 backpressure_hist[5];
|
||||
} htt_ring_backpressure_stats_tlv;
|
||||
@@ -7323,27 +7323,27 @@ typedef enum {
|
||||
|
||||
typedef enum {
|
||||
HTT_STATS_RESET_CAUSE_FIRST_RESET = 0x00000001, /* First reset by application */
|
||||
HTT_STATS_RESET_CAUSE_ERROR = 0x00000002, /* Trigered due to error */
|
||||
HTT_STATS_RESET_CAUSE_ERROR = 0x00000002, /* Triggered due to error */
|
||||
HTT_STATS_RESET_CAUSE_DEEP_SLEEP = 0x00000004, /* Reset after deep sleep */
|
||||
HTT_STATS_RESET_CAUSE_FULL_RESET = 0x00000008, /* Full reset without any optimizations */
|
||||
HTT_STATS_RESET_CAUSE_CHANNEL_CHANGE = 0x00000010, /* For normal channel change */
|
||||
HTT_STATS_RESET_CAUSE_BAND_CHANGE = 0x00000020, /* Trigered due to band change */
|
||||
HTT_STATS_RESET_CAUSE_DO_CAL = 0x00000040, /* Trigered due to calibrations */
|
||||
HTT_STATS_RESET_CAUSE_BAND_CHANGE = 0x00000020, /* Triggered due to band change */
|
||||
HTT_STATS_RESET_CAUSE_DO_CAL = 0x00000040, /* Triggered due to calibrations */
|
||||
HTT_STATS_RESET_CAUSE_MCI_ERROR = 0x00000080, /* Triggered due to MCI ERROR */
|
||||
HTT_STATS_RESET_CAUSE_CHWIDTH_CHANGE = 0x00000100, /* Trigered due to channel width change */
|
||||
HTT_STATS_RESET_CAUSE_WARM_RESTORE_CAL = 0x00000200, /* Trigered due to warm reset we want to just restore calibrations */
|
||||
HTT_STATS_RESET_CAUSE_COLD_RESTORE_CAL = 0x00000400, /* Trigered due to cold reset we want to just restore calibrations */
|
||||
HTT_STATS_RESET_CAUSE_PHY_WARM_RESET = 0x00000800, /* Trigered due to phy warm reset we want to just restore calibrations */
|
||||
HTT_STATS_RESET_CAUSE_M3_SSR = 0x00001000, /* Trigered due to SSR Restart */
|
||||
HTT_STATS_RESET_CAUSE_CHWIDTH_CHANGE = 0x00000100, /* Triggered due to channel width change */
|
||||
HTT_STATS_RESET_CAUSE_WARM_RESTORE_CAL = 0x00000200, /* Triggered due to warm reset we want to just restore calibrations */
|
||||
HTT_STATS_RESET_CAUSE_COLD_RESTORE_CAL = 0x00000400, /* Triggered due to cold reset we want to just restore calibrations */
|
||||
HTT_STATS_RESET_CAUSE_PHY_WARM_RESET = 0x00000800, /* Triggered due to phy warm reset we want to just restore calibrations */
|
||||
HTT_STATS_RESET_CAUSE_M3_SSR = 0x00001000, /* Triggered due to SSR Restart */
|
||||
HTT_STATS_RESET_CAUSE_FORCE_CAL = 0x00002000, /* Reset to force the calibration */
|
||||
/* 0x00004000, 0x00008000 reserved */
|
||||
HTT_STATS_NO_RESET_CHANNEL_CHANGE = 0x00010000, /* No reset, normal channel change */
|
||||
HTT_STATS_NO_RESET_BAND_CHANGE = 0x00020000, /* No reset, channel change across band */
|
||||
HTT_STATS_NO_RESET_CHWIDTH_CHANGE = 0x00040000, /* No reset, channel change across channel width */
|
||||
HTT_STATS_NO_RESET_CHAINMASK_CHANGE = 0x00080000, /* No reset, chainmask change */
|
||||
HTT_STATS_RESET_CAUSE_PHY_WARM_RESET_UCODE_TRIG = 0x00100000, /* Trigered due to phy warm reset we want to just restore calibrations */
|
||||
HTT_STATS_RESET_CAUSE_PHY_WARM_RESET_UCODE_TRIG = 0x00100000, /* Triggered due to phy warm reset we want to just restore calibrations */
|
||||
HTT_STATS_RESET_CAUSE_PHY_OFF_TIMEOUT_RESET = 0x00200000, /* Reset ucode because phy off ack timeout*/
|
||||
HTT_STATS_RESET_CAUSE_LMAC_RESET_UMAC_NOC_ERR = 0x00400000, /* LMAC reset trigered due to NOC Address/Slave error originating at LMAC */
|
||||
HTT_STATS_RESET_CAUSE_LMAC_RESET_UMAC_NOC_ERR = 0x00400000, /* LMAC reset triggered due to NOC Address/Slave error originating at LMAC */
|
||||
HTT_STATS_NO_RESET_SCAN_BACK_TO_SAME_HOME_CHANNEL_CHANGE = 0x00800000, /* No reset, scan to home channel change */
|
||||
} HTT_STATS_RESET_CAUSE;
|
||||
|
||||
@@ -7395,7 +7395,7 @@ typedef struct {
|
||||
A_UINT32 phytx_abort_cnt;
|
||||
/** number of times rx abort initiated by phy */
|
||||
A_UINT32 phyrx_abort_cnt;
|
||||
/** number of rx defered count initiated by phy */
|
||||
/** number of rx deferred count initiated by phy */
|
||||
A_UINT32 phyrx_defer_abort_cnt;
|
||||
/** number of sizing events generated at LSTF */
|
||||
A_UINT32 rx_gain_adj_lstf_event_cnt; /* a.k.a sizing1 */
|
||||
@@ -8337,7 +8337,7 @@ typedef struct _htt_ml_peer_stats {
|
||||
} htt_ml_peer_stats_t;
|
||||
|
||||
/*
|
||||
* ODD Mandatory Stats are grouped together from all the exisitng different
|
||||
* ODD Mandatory Stats are grouped together from all the existing different
|
||||
* stats, to form a set of stats that will be used by the ODD application to
|
||||
* post the stats to the cloud instead of polling for the individual stats.
|
||||
* This is done to avoid non-mandatory stats to be polled as the data will not
|
||||
|
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2011-2017 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
|
||||
*
|
||||
@@ -408,7 +409,7 @@ A_COMPILE_TIME_ASSERT(verify_Pkt_pool_sz,
|
||||
* Purpose: Specify length Ethernet Packet
|
||||
* - VDEV_ID
|
||||
* Bits 23:16
|
||||
* Purpose: Specify the VDEV ID corrsponding the the packet
|
||||
* Purpose: Specify the VDEV ID corresponding to the packet
|
||||
*/
|
||||
|
||||
|
||||
|
@@ -106,7 +106,7 @@
|
||||
*/
|
||||
#define MAX_SPATIAL_STREAM_ANY MAX_SPATIAL_STREAM_ANY_V2 /* DEPRECATED */
|
||||
|
||||
/* defines to set Packet extension values whic can be 0 us, 8 usec or 16 usec */
|
||||
/* defines to set Packet extension values which can be 0, 8, or 16 usec */
|
||||
/* NOTE: Below values cannot be changed without breaking WMI Compatibility */
|
||||
#define MAX_HE_NSS 8
|
||||
#define MAX_HE_MODULATION 8
|
||||
@@ -477,8 +477,8 @@ typedef struct {
|
||||
|
||||
/*
|
||||
* Used to update rate-control logic with the status of the tx-completion.
|
||||
* In host-based implementation of the rate-control feature, this struture is used to
|
||||
* create the payload for HTT message/s from target to host.
|
||||
* In host-based implementation of the rate-control feature, this structure
|
||||
* is used to create the payload for HTT message/s from target to host.
|
||||
*/
|
||||
#ifndef CONFIG_MOVE_RC_STRUCT_TO_MACCORE
|
||||
#if (NUM_SPATIAL_STREAM > 3)
|
||||
@@ -680,7 +680,7 @@ typedef struct {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* strucutre describing host memory chunk.
|
||||
* structure describing host memory chunk.
|
||||
*/
|
||||
typedef struct {
|
||||
A_UINT32 tlv_header; /* TLV tag and len; tag equals WMITLV_TAG_STRUC_wlan_host_memory_chunk */
|
||||
@@ -809,9 +809,9 @@ struct wlan_dbg_tx_stats_v1 {
|
||||
A_UINT32 sw_retry_failure;
|
||||
/* illegal rate phy errors */
|
||||
A_UINT32 illgl_rate_phy_err;
|
||||
/* wal pdev continous xretry */
|
||||
/* wal pdev continuous xretry */
|
||||
A_UINT32 pdev_cont_xretry;
|
||||
/* wal pdev continous xretry */
|
||||
/* wal pdev continuous xretry */
|
||||
A_UINT32 pdev_tx_timeout;
|
||||
/* wal pdev resets */
|
||||
A_UINT32 pdev_resets;
|
||||
@@ -861,9 +861,9 @@ struct wlan_dbg_tx_stats_v2 {
|
||||
A_UINT32 sw_retry_failure;
|
||||
/* illegal rate phy errors */
|
||||
A_UINT32 illgl_rate_phy_err;
|
||||
/* wal pdev continous xretry */
|
||||
/* wal pdev continuous xretry */
|
||||
A_UINT32 pdev_cont_xretry;
|
||||
/* wal pdev continous xretry */
|
||||
/* wal pdev continuous xretry */
|
||||
A_UINT32 pdev_tx_timeout;
|
||||
/* wal pdev resets */
|
||||
A_UINT32 pdev_resets;
|
||||
@@ -1733,7 +1733,7 @@ typedef struct {
|
||||
*/
|
||||
A_UINT32 link_info;
|
||||
/* This TLV is followed by array of mlo_glb_link:
|
||||
* mlo_glb_link will have mutiple instances equal to num of hw links
|
||||
* mlo_glb_link will have multiple instances equal to num of hw links
|
||||
* received by no_of_link
|
||||
* mlo_glb_link glb_link_info[];
|
||||
*/
|
||||
@@ -1779,7 +1779,7 @@ typedef struct {
|
||||
*/
|
||||
A_UINT32 chip_info;
|
||||
/* This TLV is followed by array of mlo_glb_per_chip_crash_info:
|
||||
* mlo_glb_per_chip_crash_info will have mutiple instances equal to num of partner chips
|
||||
* mlo_glb_per_chip_crash_info will have multiple instances equal to num of partner chips
|
||||
* received by no_of_chips
|
||||
* mlo_glb_per_chip_crash_info per_chip_crash_info[];
|
||||
*/
|
||||
|
5
fw/wmi.h
5
fw/wmi.h
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2010-2017 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
*
|
||||
* Previously licensed under the ISC license by Qualcomm Atheros, Inc.
|
||||
*
|
||||
@@ -111,7 +112,7 @@ typedef PREPACK struct {
|
||||
#define WMI_CMD_HDR_PLT_PRIV_OFFSET 0x00000000
|
||||
|
||||
/*
|
||||
* List of Commnands
|
||||
* List of Commands
|
||||
*/
|
||||
typedef enum {
|
||||
WMI_EXTENSION_CMDID, //used in wmi_svc.c /* Non-wireless extensions */
|
||||
@@ -168,7 +169,7 @@ typedef enum {
|
||||
} WMI_PHY_CAPABILITY;
|
||||
|
||||
|
||||
/* Deprectated, need clean up */
|
||||
/* Deprecated, need clean up */
|
||||
#define WMI_MAX_RX_META_SZ (12)
|
||||
|
||||
typedef PREPACK struct {
|
||||
|
@@ -65,10 +65,10 @@ typedef enum {
|
||||
WMI_SERVICE_GPIO=25, /* GPIO service */
|
||||
WMI_SERVICE_STA_DTIM_PS_MODULATED_DTIM=26, /* Modulated DTIM support */
|
||||
WMI_STA_UAPSD_BASIC_AUTO_TRIG=27, /* Basic version of station UAPSD AC Trigger Generation Method with
|
||||
* variable tigger periods (service, delay, and suspend intervals) */
|
||||
* variable trigger periods (service, delay, and suspend intervals) */
|
||||
WMI_STA_UAPSD_VAR_AUTO_TRIG=28, /* Station UAPSD AC Trigger Generation Method with variable
|
||||
* trigger periods (service, delay, and suspend intervals) */
|
||||
WMI_SERVICE_STA_KEEP_ALIVE=29, /* Serivce to support the STA KEEP ALIVE mechanism */
|
||||
WMI_SERVICE_STA_KEEP_ALIVE=29, /* Service to support the STA KEEP ALIVE mechanism */
|
||||
WMI_SERVICE_TX_ENCAP=30, /* Packet type for TX encapsulation */
|
||||
WMI_SERVICE_AP_PS_DETECT_OUT_OF_SYNC=31, /* detect out-of-sync sleeping stations */
|
||||
WMI_SERVICE_EARLY_RX=32, /* adaptive early-rx feature */
|
||||
@@ -523,8 +523,8 @@ typedef enum {
|
||||
WMI_SERVICE_WAPI_CONCURRENCY_SUPPORTED = 277, /* Indicates FW support for WAPI concurrency */
|
||||
WMI_SERVICE_SAP_CONNECTED_D3WOW = 278, /* Indicates FW support for D3WoW for SAP connected case */
|
||||
WMI_SERVICE_GO_CONNECTED_D3WOW = 279, /* Indicates FW support for D3WoW for P2P GO connected case */
|
||||
WMI_SERVICE_EXT_TPC_REG_SUPPORT = 280, /* Support for new 6G TPC power limits */
|
||||
WMI_SERVICE_REG_CC_EXT_EVENT_SUPPORT = 281, /* Support for Extended REG_CC Event with additional params for 6G */
|
||||
WMI_SERVICE_EXT_TPC_REG_SUPPORT = 280, /* Support for new 6 GHz TPC power limits */
|
||||
WMI_SERVICE_REG_CC_EXT_EVENT_SUPPORT = 281, /* Support for Extended REG_CC Event with additional params for 6 GHz */
|
||||
WMI_SERVICE_NDI_TXBF_SUPPORT = 282, /* Indicates FW support for Tx beamforming with NDI VDEV */
|
||||
WMI_SERVICE_ENABLE_LOWER_6G_EDGE_CH_SUPP = 283, /* Indicates FW support for enabling lower 6 GHz edge channel 5935 */
|
||||
WMI_SERVICE_DISABLE_UPPER_6G_EDGE_CH_SUPP = 284, /* Indicates FW support for disabling upper 6 GHz edge channel 7115 */
|
||||
@@ -602,7 +602,7 @@ typedef enum {
|
||||
WMI_SERVICE_MULTIPLE_VDEV_RESTART_BITMAP_SUPPORT = 349, /* Extended Multiple VDEV Restart with Bitmap Support */
|
||||
WMI_SERVICE_WMI_SERVICE_WPA3_SHA384_ROAM_SUPPORT = 350, /* Indicates FW supports WPA3 SHA384 roaming */
|
||||
WMI_SERVICE_ODD_LIVEDUMP_SUPPORT = 351, /* Support for ODD Livedump from the FW */
|
||||
WMI_SERVICE_EIRP_PREFERRED_SUPPORT = 352, /* Support for OOBE feature where only EIRP powers will be sent in 6G TPC WMI */
|
||||
WMI_SERVICE_EIRP_PREFERRED_SUPPORT = 352, /* Support for OOBE feature where only EIRP powers will be sent in 6 GHz TPC WMI */
|
||||
|
||||
|
||||
WMI_MAX_EXT2_SERVICE
|
||||
|
@@ -3208,7 +3208,7 @@ WMITLV_CREATE_PARAM_STRUC(WMI_DFS_PHYERR_FILTER_DIS_CMDID);
|
||||
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_PDEV_DFS_PHYERR_OFFLOAD_ENABLE_CMDID);
|
||||
|
||||
/* DFS phyerr processing offload disble cmd */
|
||||
/* DFS phyerr processing offload disable cmd */
|
||||
#define WMITLV_TABLE_WMI_PDEV_DFS_PHYERR_OFFLOAD_DISABLE_CMDID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_pdev_dfs_phyerr_offload_disable_cmd_fixed_param, wmi_pdev_dfs_phyerr_offload_disable_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
|
||||
@@ -4419,7 +4419,7 @@ WMITLV_CREATE_PARAM_STRUC(WMI_PEER_REORDER_QUEUE_SETUP_CMDID);
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_peer_reorder_queue_remove_cmd_fixed_param, wmi_peer_reorder_queue_remove_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_PEER_REORDER_QUEUE_REMOVE_CMDID);
|
||||
|
||||
/* Filter in monitor mode paramters Cmd */
|
||||
/* Filter in monitor mode parameters Cmd */
|
||||
#define WMITLV_TABLE_WMI_MNT_FILTER_CMDID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_mnt_filter_cmd_fixed_param, wmi_mnt_filter_cmd_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_MNT_FILTER_CMDID);
|
||||
@@ -5637,7 +5637,7 @@ WMITLV_CREATE_PARAM_STRUC(WMI_DIAG_EVENTID);
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_WMI_GTK_OFFLOAD_STATUS_EVENT_fixed_param, WMI_GTK_OFFLOAD_STATUS_EVENT_fixed_param, fixed_param, WMITLV_SIZE_FIX)
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_GTK_OFFLOAD_STATUS_EVENTID);
|
||||
|
||||
/* DCA interferance Event */
|
||||
/* DCA interference Event */
|
||||
#define WMITLV_TABLE_WMI_DCS_INTERFERENCE_EVENTID(id,op,buf,len) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_STRUC_wmi_dcs_interference_event_fixed_param, wmi_dcs_interference_event_fixed_param, fixed_param, WMITLV_SIZE_FIX) \
|
||||
WMITLV_ELEM(id,op,buf,len, WMITLV_TAG_ARRAY_STRUC, wlan_dcs_cw_int, cw_int, WMITLV_SIZE_VAR) \
|
||||
@@ -6066,7 +6066,7 @@ WMITLV_CREATE_PARAM_STRUC(WMI_NDP_CONFIRM_EVENTID);
|
||||
WMITLV_CREATE_PARAM_STRUC(WMI_NDP_END_INDICATION_EVENTID);
|
||||
|
||||
/** NDL schedule update event
|
||||
* TLV (tag lenght value ) parameters follow the ndl_schedule_update
|
||||
* TLV (tag length value) parameters follow the ndl_schedule_update
|
||||
* structure. The TLV's are:
|
||||
* A_UINT32 ndp_instance_list[];
|
||||
* wmi_channel ndl_channel_list[];
|
||||
|
378
fw/wmi_unified.h
378
fw/wmi_unified.h
Fichier diff supprimé car celui-ci est trop grand
Voir la Diff
Référencer dans un nouveau ticket
Bloquer un utilisateur