wl18xx: add diversity statistics
Add diversity statistics and sync the driver statistics acx and debugfs representation with the current fw api. Signed-off-by: Guy Mishol <guym@ti.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
parent
c48276cbbe
commit
fc645df093
|
@ -112,20 +112,6 @@ struct wl18xx_acx_error_stats {
|
|||
u32 tbc_exch_mismatch;
|
||||
} __packed;
|
||||
|
||||
struct wl18xx_acx_debug_stats {
|
||||
u32 debug1;
|
||||
u32 debug2;
|
||||
u32 debug3;
|
||||
u32 debug4;
|
||||
u32 debug5;
|
||||
u32 debug6;
|
||||
} __packed;
|
||||
|
||||
struct wl18xx_acx_ring_stats {
|
||||
u32 prepared_descs;
|
||||
u32 tx_cmplt;
|
||||
} __packed;
|
||||
|
||||
#define NUM_OF_RATES_INDEXES 30
|
||||
struct wl18xx_acx_tx_stats {
|
||||
u32 tx_prepared_descs;
|
||||
|
@ -215,21 +201,6 @@ struct wl18xx_acx_pwr_stats {
|
|||
u32 ap_sleep_counter;
|
||||
} __packed;
|
||||
|
||||
struct wl18xx_acx_event_stats {
|
||||
u32 calibration;
|
||||
u32 rx_mismatch;
|
||||
u32 rx_mem_empty;
|
||||
} __packed;
|
||||
|
||||
struct wl18xx_acx_ps_poll_stats {
|
||||
u32 ps_poll_timeouts;
|
||||
u32 upsd_timeouts;
|
||||
u32 upsd_max_ap_turn;
|
||||
u32 ps_poll_max_ap_turn;
|
||||
u32 ps_poll_utilization;
|
||||
u32 upsd_utilization;
|
||||
} __packed;
|
||||
|
||||
struct wl18xx_acx_rx_filter_stats {
|
||||
u32 beacon_filter;
|
||||
u32 arp_filter;
|
||||
|
@ -260,8 +231,6 @@ struct wl18xx_acx_aggr_stats {
|
|||
struct wl18xx_acx_pipeline_stats {
|
||||
u32 hs_tx_stat_fifo_int;
|
||||
u32 hs_rx_stat_fifo_int;
|
||||
u32 tcp_tx_stat_fifo_int;
|
||||
u32 tcp_rx_stat_fifo_int;
|
||||
u32 enc_tx_stat_fifo_int;
|
||||
u32 enc_rx_stat_fifo_int;
|
||||
u32 rx_complete_stat_fifo_int;
|
||||
|
@ -269,22 +238,19 @@ struct wl18xx_acx_pipeline_stats {
|
|||
u32 post_proc_swi;
|
||||
u32 sec_frag_swi;
|
||||
u32 pre_to_defrag_swi;
|
||||
u32 defrag_to_csum_swi;
|
||||
u32 csum_to_rx_xfer_swi;
|
||||
u32 defrag_to_rx_xfer_swi;
|
||||
u32 dec_packet_in;
|
||||
u32 dec_packet_in_fifo_full;
|
||||
u32 dec_packet_out;
|
||||
u32 cs_rx_packet_in;
|
||||
u32 cs_rx_packet_out;
|
||||
u16 pipeline_fifo_full[PIPE_STATS_HW_FIFO];
|
||||
u16 padding;
|
||||
} __packed;
|
||||
|
||||
struct wl18xx_acx_mem_stats {
|
||||
u32 rx_free_mem_blks;
|
||||
u32 tx_free_mem_blks;
|
||||
u32 fwlog_free_mem_blks;
|
||||
u32 fw_gen_free_mem_blks;
|
||||
#define DIVERSITY_STATS_NUM_OF_ANT 2
|
||||
|
||||
struct wl18xx_acx_diversity_stats {
|
||||
u32 num_of_packets_per_ant[DIVERSITY_STATS_NUM_OF_ANT];
|
||||
u32 total_num_of_toggles;
|
||||
} __packed;
|
||||
|
||||
struct wl18xx_acx_thermal_stats {
|
||||
|
@ -322,6 +288,7 @@ struct wl18xx_acx_statistics {
|
|||
struct wl18xx_acx_rx_rate_stats rx_rate;
|
||||
struct wl18xx_acx_aggr_stats aggr_size;
|
||||
struct wl18xx_acx_pipeline_stats pipeline;
|
||||
struct wl18xx_acx_diversity_stats diversity;
|
||||
struct wl18xx_acx_thermal_stats thermal;
|
||||
struct wl18xx_acx_calib_failure_stats calib;
|
||||
struct wl18xx_roaming_stats roaming;
|
||||
|
|
|
@ -153,8 +153,6 @@ WL18XX_DEBUGFS_FWSTATS_FILE_ARRAY(aggr_size, rx_size,
|
|||
AGGR_STATS_RX_SIZE_LEN);
|
||||
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, hs_tx_stat_fifo_int, "%u");
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, tcp_tx_stat_fifo_int, "%u");
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, tcp_rx_stat_fifo_int, "%u");
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, enc_tx_stat_fifo_int, "%u");
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, enc_rx_stat_fifo_int, "%u");
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, rx_complete_stat_fifo_int, "%u");
|
||||
|
@ -162,17 +160,18 @@ WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, pre_proc_swi, "%u");
|
|||
WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, post_proc_swi, "%u");
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, sec_frag_swi, "%u");
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, pre_to_defrag_swi, "%u");
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, defrag_to_csum_swi, "%u");
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, csum_to_rx_xfer_swi, "%u");
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, defrag_to_rx_xfer_swi, "%u");
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, dec_packet_in, "%u");
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, dec_packet_in_fifo_full, "%u");
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, dec_packet_out, "%u");
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, cs_rx_packet_in, "%u");
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(pipeline, cs_rx_packet_out, "%u");
|
||||
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE_ARRAY(pipeline, pipeline_fifo_full,
|
||||
PIPE_STATS_HW_FIFO);
|
||||
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE_ARRAY(diversity, num_of_packets_per_ant,
|
||||
DIVERSITY_STATS_NUM_OF_ANT);
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(diversity, total_num_of_toggles, "%u");
|
||||
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(thermal, irq_thr_low, "%u");
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(thermal, irq_thr_high, "%u");
|
||||
WL18XX_DEBUGFS_FWSTATS_FILE(thermal, tx_stop, "%u");
|
||||
|
@ -478,8 +477,6 @@ int wl18xx_debugfs_add_files(struct wl1271 *wl,
|
|||
DEBUGFS_FWSTATS_ADD(aggr_size, rx_size);
|
||||
|
||||
DEBUGFS_FWSTATS_ADD(pipeline, hs_tx_stat_fifo_int);
|
||||
DEBUGFS_FWSTATS_ADD(pipeline, tcp_tx_stat_fifo_int);
|
||||
DEBUGFS_FWSTATS_ADD(pipeline, tcp_rx_stat_fifo_int);
|
||||
DEBUGFS_FWSTATS_ADD(pipeline, enc_tx_stat_fifo_int);
|
||||
DEBUGFS_FWSTATS_ADD(pipeline, enc_rx_stat_fifo_int);
|
||||
DEBUGFS_FWSTATS_ADD(pipeline, rx_complete_stat_fifo_int);
|
||||
|
@ -487,15 +484,15 @@ int wl18xx_debugfs_add_files(struct wl1271 *wl,
|
|||
DEBUGFS_FWSTATS_ADD(pipeline, post_proc_swi);
|
||||
DEBUGFS_FWSTATS_ADD(pipeline, sec_frag_swi);
|
||||
DEBUGFS_FWSTATS_ADD(pipeline, pre_to_defrag_swi);
|
||||
DEBUGFS_FWSTATS_ADD(pipeline, defrag_to_csum_swi);
|
||||
DEBUGFS_FWSTATS_ADD(pipeline, csum_to_rx_xfer_swi);
|
||||
DEBUGFS_FWSTATS_ADD(pipeline, defrag_to_rx_xfer_swi);
|
||||
DEBUGFS_FWSTATS_ADD(pipeline, dec_packet_in);
|
||||
DEBUGFS_FWSTATS_ADD(pipeline, dec_packet_in_fifo_full);
|
||||
DEBUGFS_FWSTATS_ADD(pipeline, dec_packet_out);
|
||||
DEBUGFS_FWSTATS_ADD(pipeline, cs_rx_packet_in);
|
||||
DEBUGFS_FWSTATS_ADD(pipeline, cs_rx_packet_out);
|
||||
DEBUGFS_FWSTATS_ADD(pipeline, pipeline_fifo_full);
|
||||
|
||||
DEBUGFS_FWSTATS_ADD(diversity, num_of_packets_per_ant);
|
||||
DEBUGFS_FWSTATS_ADD(diversity, total_num_of_toggles);
|
||||
|
||||
DEBUGFS_FWSTATS_ADD(thermal, irq_thr_low);
|
||||
DEBUGFS_FWSTATS_ADD(thermal, irq_thr_high);
|
||||
DEBUGFS_FWSTATS_ADD(thermal, tx_stop);
|
||||
|
|
Loading…
Reference in New Issue