Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit eaf17f06 authored by spuligil's avatar spuligil Committed by Madan Koyyalamudi
Browse files

fw-api: CL 14682792 - update fw common interface files

HTT stats: add SU SW RTS fields

Change-Id: I99868e5f3b1c673238aba6ef42749eb694daa5ca
CRs-Fixed: 2262693
parent 829112c4
Loading
Loading
Loading
Loading
+30 −3
Original line number Diff line number Diff line
@@ -972,12 +972,19 @@ typedef struct {
     * is_buffer_addr_info_valid : This will be set whenever a MSDU is sent as
     * a singleton (single-MSDU PPDU) for FW use-cases or as indicated by host
     * via send_as_standalone in TCL_DATA_CMD.
     *
     * The fields is_sw_rts_enabled, is_hw_rts_enabled, is_sfm_war_enabled
     * indicate whether SW RTS, HW RTS, SFM WAR are enabled for the
     * current Tx-sequence respectively.
     */
    A_UINT32 host_opaque_cookie:        16,
             is_host_opaque_valid:       1,
             is_standalone:              1,
             is_buffer_addr_info_valid:  1,
             reserved1:                 13;
             is_sw_rts_enabled:          1,
             is_hw_rts_enabled:          1,
             is_sfm_war_enabled:         1,
             reserved1:                 10;

    /* qdepth bytes : Contains Number of bytes of TIDQ depth */
    A_UINT32 qdepth_bytes;
@@ -988,6 +995,12 @@ typedef struct {
     * Note - this is valid in case delayed BA processing specifically for
     * BAR frames*/
    A_UINT32 data_frm_ppdu_id;

    /* sw_rts_prot_dur_us:
     * SW RTS protection duration in micro sec.
     * Note - this is valid if SW RTS was used instead of HW RTS.
     */
    A_UINT32 sw_rts_prot_dur_us;
} htt_ppdu_stats_user_common_tlv;

#define HTT_PPDU_STATS_USER_RATE_TLV_TID_NUM_M     0x000000ff
@@ -1926,8 +1939,8 @@ typedef struct {
     * BIT [ 8 :   8]   :- is_ampdu
     * BIT [ 12:   9]   :- resp_type
     * BIT [ 15:  13]   :- medium protection type
     * BIT [ 16:  16]   :- rts_success
     * BIT [ 17:  17]   :- rts_failure
     * BIT [ 16:  16]   :- rts_success (HW RTS)
     * BIT [ 17:  17]   :- rts_failure (HW RTS)
     * BIT [ 18:  18]   :- pream_punc_tx
     * BIT [ 31:  19]   :- reserved
     */
@@ -1979,6 +1992,20 @@ typedef struct {

    /* PER of the last transmission to the peer-TID (in percent) */
    A_UINT32 current_rate_per;

    /*
     * For SW RTS
     * BIT [0]    :- Whether SW RTS successfully sent OTA.
     * BIT [1]    :- Whether SW RTS successful completion.
     * BIT [2]    :- Whether SW RTS failed completion.
     * BIT [3]    :- Whether SW RTS response with different BW.
     * BIT [31:4] :- reserved2
     */
    A_UINT32 sw_rts_tried:      1,
             sw_rts_success:    1,
             sw_rts_failure:    1,
             cts_rcvd_diff_bw:  1,
             reserved2:        28;
} htt_ppdu_stats_user_cmpltn_common_tlv;

#define HTT_PPDU_STATS_USER_CMPLTN_BA_BITMAP_TLV_TID_NUM_M     0x000000ff
+5 −0
Original line number Diff line number Diff line
@@ -1929,6 +1929,11 @@ typedef struct {
    A_UINT32 delayed_bar_7; /* BAR sent for MU user 7 */
    A_UINT32 bar_with_tqm_head_seq_num;
    A_UINT32 bar_with_tid_seq_num;
    A_UINT32 su_sw_rts_queued;  /* SW generated RTS frame queued to the HW */
    A_UINT32 su_sw_rts_tried;   /* SW generated RTS frame sent over the air */
    A_UINT32 su_sw_rts_err;     /* SW generated RTS frame completed with error */
    A_UINT32 su_sw_rts_flushed; /* SW generated RTS frame flushed */
    A_UINT32 su_sw_rts_rcvd_cts_diff_bw; /* CTS (RTS response) received in different BW */
} htt_tx_selfgen_cmn_stats_tlv;

typedef struct {