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

Commit 3e97faa4 authored by spuligil's avatar spuligil Committed by Ravindra Konda
Browse files

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

HTT stats: modify latency_prof_cal_stats struct
Change-Id: Id5df11299388b367101eb38bd52b2941c87fc348
CRs-Fixed: 2262693
parent 67b196d1
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -790,7 +790,7 @@ typedef enum {
    HTT_STATS_PDEV_SCHED_ALGO_OFDMA_STATS_TAG      = 165, /* htt_pdev_sched_algo_ofdma_stats_tlv, PUBLISH_FUNC=create_json_response_for_htt_pdev_sched_algo_ofdma_stats */
    HTT_DBG_ODD_MANDATORY_MUMIMO_TAG               = 166, /* htt_odd_mandatory_mumimo_pdev_stats_tlv */
    HTT_DBG_ODD_MANDATORY_MUOFDMA_TAG              = 167, /* htt_odd_mandatory_muofdma_pdev_stats_tlv */
    HTT_STATS_LATENCY_PROF_CAL_STATS_TAG           = 168, /* htt_latency_prof_cal_stats_tlv */
    HTT_STATS_LATENCY_PROF_CAL_STATS_TAG           = 168, /* htt_latency_prof_cal_stats_tlv - DEPRECATED */
    HTT_STATS_TX_PDEV_MUEDCA_PARAMS_STATS_TAG      = 169, /* htt_tx_pdev_muedca_params_stats_tlv_v - DEPRECATED */
    HTT_STATS_PDEV_BW_MGR_STATS_TAG                = 170, /* htt_pdev_bw_mgr_stats_tlv */
    HTT_STATS_TX_PDEV_AP_EDCA_PARAMS_STATS_TAG     = 171, /* htt_tx_pdev_ap_edca_params_stats_tlv_v, TOPIC=advanced */
@@ -815,6 +815,7 @@ typedef enum {
    HTT_STATS_MLO_SCHED_STATS_TAG                  = 190, /* htt_mlo_sched_stats_tlv */
    HTT_STATS_PDEV_MLO_IPC_STATS_TAG               = 191, /* htt_pdev_mlo_ipc_stats_tlv */
    HTT_STATS_WHAL_WSI_TAG                         = 192, /* htt_stats_whal_wsi_tlv */
    HTT_STATS_LATENCY_PROF_CAL_DATA_TAG            = 193, /* htt_stats_latency_prof_cal_data_tlv */
    HTT_STATS_MAX_TAG,
+74 −4
Original line number Diff line number Diff line
@@ -500,7 +500,7 @@ enum htt_dbg_ext_stats_type {
     * params:
     *          None
     * Response MSG:
     *          htt_latency_prof_cal_stats_tlv
     *          htt_stats_latency_prof_cal_data_tlv
     */
    HTT_DBG_EXT_PHY_PROF_CAL_STATS = 52,

@@ -8726,7 +8726,7 @@ enum {
};

#define HTT_STATS_MAX_CAL_IDX_CNT 8
typedef struct {
typedef struct { /* DEPRECATED */

    htt_tlv_hdr_t tlv_hdr;

@@ -8781,9 +8781,77 @@ typedef struct {

    /** No of indices invoked per each cal profile */
    A_UINT32 CalCnt[HTT_STATS_MAX_PROF_CAL];
} htt_stats_latency_prof_cal_stats_tlv;
} htt_stats_latency_prof_cal_stats_tlv; /* DEPRECATED */
/* preserve old name alias for new name consistent with the tag name */
typedef htt_stats_latency_prof_cal_stats_tlv htt_latency_prof_cal_stats_tlv;
typedef htt_stats_latency_prof_cal_stats_tlv htt_latency_prof_cal_stats_tlv; /* DEPRECATED */

typedef struct {
    /** The cnt is incremented when each time the calindex takes place */
    A_UINT32 cnt;

    /** Minimum time taken to complete the calibration - in us */
    A_UINT32 min;

    /** Maximum time taken to complete the calibration -in us */
    A_UINT32 max;

    /** Time taken by the cal for its final time execution - in us */
    A_UINT32 last;

    /** Total time taken - in us */
    A_UINT32 tot;

    /** hist_intvl - in us, by default will be set to 2000 us */
    A_UINT32 hist_intvl;

    /**
     * If last is less than hist_intvl, then hist[0]++,
     * If last is less than hist_intvl << 1, then hist[1]++,
     * otherwise hist[2]++.
     */
    A_UINT32 hist[HTT_INTERRUPTS_LATENCY_PROFILE_MAX_HIST];

    /** pf_last will log the current no of page faults */
    A_UINT32 pf_last;

    /** Sum of all page faults happened */
    A_UINT32 pf_tot;

    /** If pf_last > pf_max then pf_max = pf_last */
    A_UINT32 pf_max;

    /**
     * For each cal profile, only certain no of cal indices were invoked,
     * this member will store what all the indices got invoked per each
     * cal profile
     */
    A_UINT32 enabled_cal_idx;

/*
 * NOTE: due to backwards-compatibility requirements,
 * no fields can be added to this struct.
 */
} htt_stats_latency_prof_cal_data;

typedef struct {

    htt_tlv_hdr_t tlv_hdr;

    /** To verify whether prof cal is enabled or not */
    A_UINT32 enable;

    /** current pdev_id */
    A_UINT32 pdev_id;

    /** No of indices invoked per each cal profile */
    A_UINT32 cal_cnt[HTT_STATS_MAX_PROF_CAL];

    /** Latency Cal Profile name */
    A_UINT8 latency_prof_name[HTT_STATS_MAX_PROF_CAL][HTT_STATS_MAX_PROF_STATS_NAME_LEN];

    /** Latency Cal data */
    htt_stats_latency_prof_cal_data latency_data[HTT_STATS_MAX_PROF_CAL][HTT_STATS_MAX_CAL_IDX_CNT];
} htt_stats_latency_prof_cal_data_tlv;

#define HTT_ML_PEER_EXT_DETAILS_PEER_ASSOC_IPC_RECVD_M          0x0000003F
#define HTT_ML_PEER_EXT_DETAILS_PEER_ASSOC_IPC_RECVD_S          0
@@ -10508,6 +10576,7 @@ typedef enum {
    HTT_CTRL_PATH_STATS_CAL_TYPE_PEF                     = 0x16,
    HTT_CTRL_PATH_STATS_CAL_TYPE_PADROOP                 = 0x17,
    HTT_CTRL_PATH_STATS_CAL_TYPE_SELFCALTPC              = 0x18,
    HTT_CTRL_PATH_STATS_CAL_TYPE_RXSPUR                  = 0x19,

    /* add new cal types above this line */
    HTT_CTRL_PATH_STATS_CAL_TYPE_INVALID                 = 0xFF
@@ -10556,6 +10625,7 @@ static INLINE A_UINT8 *htt_ctrl_path_cal_type_id_to_name(A_UINT32 cal_type_id)
        HTT_RETURN_STRING(HTT_CTRL_PATH_STATS_CAL_TYPE_PEF);
        HTT_RETURN_STRING(HTT_CTRL_PATH_STATS_CAL_TYPE_PADROOP);
        HTT_RETURN_STRING(HTT_CTRL_PATH_STATS_CAL_TYPE_SELFCALTPC);
        HTT_RETURN_STRING(HTT_CTRL_PATH_STATS_CAL_TYPE_RXSPUR);
    }

    return (A_UINT8 *) "HTT_CTRL_PATH_STATS_CAL_TYPE_UNKNOWN";