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

Commit 5b3427e4 authored by Linux Build Service Account's avatar Linux Build Service Account
Browse files

Merge 22d8de25 on remote branch

Change-Id: I7a7caa19746cc7b816c9270cc637250c16316e61
parents a8ac6d84 22d8de25
Loading
Loading
Loading
Loading
+274 −268
Original line number Diff line number Diff line
@@ -2075,6 +2075,12 @@ typedef enum {
#define WLAN_MODULE_QBOOST_DBGID_WLAN_PEER_NOT_FOUND      1
#define WLAN_MODULE_QBOOST_DEFINITION_END                 2

/* HPCS DBGID */
#define HPCS_PULSE_START                                  0
#define HPCS_PULSE_LF_TIMER                               1
#define HPCS_PULSE_HF_TIMER                               2
#define HPCS_PULSE_POWER_SAVE                             3

#ifdef __cplusplus
}
#endif
+3 −1
Original line number Diff line number Diff line
@@ -173,9 +173,10 @@
 * 3.56 Fix HTT_RX_RING_SELECTION_CFG_PKT_TYPE_ENABLE bit-mask defs
 * 3.57 Add support for in-band data within HTT_T2H_MSG_TYPE_CFR_DUMP_COMPL_IND
 * 3.58 Add optional MSDU ack RSSI array to end of HTT_T2H TX_COMPL_IND msg
 * 3.59 Add HTT_RXDMA_HOST_BUF_RING2 def
 */
#define HTT_CURRENT_VERSION_MAJOR 3
#define HTT_CURRENT_VERSION_MINOR 58
#define HTT_CURRENT_VERSION_MINOR 59

#define HTT_NUM_TX_FRAG_DESC  1024

@@ -4389,6 +4390,7 @@ enum htt_srng_ring_id {
    HTT_HOST1_TO_FW_RXBUF_RING,    /* (mobile only) used by host to provide remote RX buffers */
    HTT_HOST2_TO_FW_RXBUF_RING,    /* (mobile only) second ring used by host to provide remote RX buffers */
    HTT_RXDMA_NON_MONITOR_DEST_RING, /* Per MDPU indication to host for non-monitor RxDMA traffic upload */
    HTT_RXDMA_HOST_BUF_RING2,      /* Second ring used by FW to feed removed buffers and update removed packets */
    /* Add Other SRING which can't be directly configured by host software above this line */
};

+57 −2
Original line number Diff line number Diff line
@@ -253,12 +253,21 @@ enum htt_dbg_ext_stats_type {
     *      [Bit8 : Bit1]   vdev_id:8
     *          note:0xFF to get all active vdevs based on pdev_mask.
     *      [Bit31 : Bit9]  rsvd:22

     *
     * RESP MSG:
     *   - htt_tx_sounding_stats_t
     */
    HTT_DBG_EXT_STATS_TX_SOUNDING_INFO           = 22,

    /* HTT_DBG_EXT_STATS_PDEV_OBSS_PD_STATS
     * PARAMS:
     *   - config_param0:
     *      No params
     * RESP MSG:
     *   - htt_pdev_obss_pd_stats_t
     */
    HTT_DBG_EXT_STATS_PDEV_OBSS_PD_STATS         = 23,


    /* keep this last */
    HTT_DBG_NUM_EXT_STATS                        =  256,
@@ -353,6 +362,7 @@ typedef enum {
    HTT_STATS_TX_DE_FW2WBM_RING_FULL_HIST_TAG           = 85,    /* htt_tx_de_fw2wbm_ring_full_hist_tlv */
    HTT_STATS_SCHED_TXQ_SCHED_ORDER_SU_TAG              = 86,    /* htt_sched_txq_sched_order_su_tlv */
    HTT_STATS_SCHED_TXQ_SCHED_INELIGIBILITY_TAG         = 87,    /* htt_sched_txq_sched_eligibility_tlv */
    HTT_STATS_PDEV_OBSS_PD_TAG                          = 88,    /* htt_pdev_obss_pd_stats_tlv */

    HTT_STATS_MAX_TAG,
} htt_tlv_tag_t;
@@ -1106,6 +1116,10 @@ typedef struct _htt_rx_peer_rate_stats_tlv {
    /* Counters to track number of rx packets in each GI in each mcs (0-11) */
    A_UINT32 rx_gi[HTT_RX_PEER_STATS_NUM_GI_COUNTERS][HTT_RX_PEER_STATS_NUM_MCS_COUNTERS];

    A_UINT32 rx_ulofdma_non_data_ppdu; /* ppdu level */
    A_UINT32 rx_ulofdma_data_ppdu;     /* ppdu level */
    A_UINT32 rx_ulofdma_mpdu_ok;       /* mpdu level */
    A_UINT32 rx_ulofdma_mpdu_fail;     /* mpdu level */
} htt_rx_peer_rate_stats_tlv;

typedef enum {
@@ -2851,6 +2865,8 @@ typedef struct {
#define HTT_RX_PDEV_STATS_NUM_BW_COUNTERS          4
#define HTT_RX_PDEV_STATS_NUM_SPATIAL_STREAMS      8
#define HTT_RX_PDEV_STATS_NUM_PREAMBLE_TYPES       HTT_STATS_PREAM_COUNT
#define HTT_RX_PDEV_MAX_OFDMA_NUM_USER             8
#define HTT_RX_PDEV_STATS_RXEVM_MAX_PILOTS_PER_NSS 16

#define HTT_RX_PDEV_RATE_STATS_MAC_ID_M     0x000000ff
#define HTT_RX_PDEV_RATE_STATS_MAC_ID_S              0
@@ -2903,6 +2919,31 @@ typedef struct {
    A_UINT32 rx_legacy_ofdm_rate[HTT_RX_PDEV_STATS_NUM_LEGACY_OFDM_STATS];
    A_UINT32 rx_active_dur_us_low;
    A_UINT32 rx_active_dur_us_high;

    A_UINT32 rx_11ax_ul_ofdma;

    A_UINT32 ul_ofdma_rx_mcs[HTT_RX_PDEV_STATS_NUM_MCS_COUNTERS];
    A_UINT32 ul_ofdma_rx_gi[HTT_TX_PDEV_STATS_NUM_GI_COUNTERS][HTT_RX_PDEV_STATS_NUM_MCS_COUNTERS];
    A_UINT32 ul_ofdma_rx_nss[HTT_TX_PDEV_STATS_NUM_SPATIAL_STREAMS];
    A_UINT32 ul_ofdma_rx_bw[HTT_TX_PDEV_STATS_NUM_BW_COUNTERS];
    A_UINT32 ul_ofdma_rx_stbc;
    A_UINT32 ul_ofdma_rx_ldpc;

    /* record the stats for each user index */
    A_UINT32 rx_ulofdma_non_data_ppdu[HTT_RX_PDEV_MAX_OFDMA_NUM_USER]; /* ppdu level */
    A_UINT32 rx_ulofdma_data_ppdu[HTT_RX_PDEV_MAX_OFDMA_NUM_USER];     /* ppdu level */
    A_UINT32 rx_ulofdma_mpdu_ok[HTT_RX_PDEV_MAX_OFDMA_NUM_USER];       /* mpdu level */
    A_UINT32 rx_ulofdma_mpdu_fail[HTT_RX_PDEV_MAX_OFDMA_NUM_USER];     /* mpdu level */

    A_UINT32 nss_count;
    A_UINT32 pilot_count;
    /* RxEVM stats in dB */
    A_INT32  rx_pilot_evm_dB[HTT_RX_PDEV_STATS_NUM_SPATIAL_STREAMS][HTT_RX_PDEV_STATS_RXEVM_MAX_PILOTS_PER_NSS];
    /* rx_pilot_evm_dB_mean:
     * EVM mean across pilots, computed as
     *     mean(10*log10(rx_pilot_evm_linear)) = mean(rx_pilot_evm_dB)
     */
    A_INT32  rx_pilot_evm_dB_mean[HTT_RX_PDEV_STATS_NUM_SPATIAL_STREAMS];
} htt_rx_pdev_rate_stats_tlv;


@@ -3600,5 +3641,19 @@ typedef struct {
    htt_tx_sounding_stats_tlv sounding_tlv;
} htt_tx_sounding_stats_t;

typedef struct {
    htt_tlv_hdr_t   tlv_hdr;

    A_UINT32        num_obss_tx_ppdu_success;
    A_UINT32        num_obss_tx_ppdu_failure;
} htt_pdev_obss_pd_stats_tlv;

/* NOTE:
 * This structure is for documentation, and cannot be safely used directly.
 * Instead, use the constituent TLV structures to fill/parse.
 */
typedef struct {
    htt_pdev_obss_pd_stats_tlv obss_pd_stat;
} htt_pdev_obss_pd_stats_t;

#endif /* __HTT_STATS_H__ */
+8 −0
Original line number Diff line number Diff line
@@ -370,6 +370,14 @@ PREPACK64 struct host_interest_s {
#define HI_OPTION_BE_LATENCY_OPTIMIZE    0x100 /* This bit is to enable BE low latency for some customers. The side effect is TCP DL will be 8Mbps decreased (673Mbps -> 665Mbps).*/
#define HT_OPTION_GPIO_WAKEUP_SUPPORT    0x200 /* GPIO wake up support */

/*
 * If both SDIO_CRASH_DUMP_ENHANCEMENT_HOST and SDIO_CRASH_DUMP_ENHANCEMENT_FW
 * flags are set, then crashdump upload will be done using the BMI host/target
 * communication channel.
 */
#define HI_OPTION_SDIO_CRASH_DUMP_ENHANCEMENT_HOST 0x400 /* HOST to support using BMI dump FW memory when hit assert */
#define HI_OPTION_SDIO_CRASH_DUMP_ENHANCEMENT_FW   0x800 /* FW to support using BMI dump FW memory when hit assert */

#define GPIO_WAKEUP_ENABLED() \
    (HOST_INTEREST->hi_option_flag2 & HT_OPTION_GPIO_WAKEUP_SUPPORT)

+7 −0
Original line number Diff line number Diff line
@@ -525,6 +525,13 @@ typedef struct {
   A_UINT32 ptr;
   /** size of the chunk */
   A_UINT32 size;
    /** ptr_high
     * most significant bits of physical address of the memory chunk
     * Only applicable for addressing more than 32 bit.
     * This will only be non-zero if the target has set
     * WMI_SERVICE_SUPPORT_EXTEND_ADDRESS flag.
     */
   A_UINT32 ptr_high;
} wlan_host_memory_chunk;

#define NUM_UNITS_IS_NUM_VDEVS        0x1
Loading