mirror of
https://xff.cz/git/u-boot/
synced 2025-09-01 08:42:12 +02:00
drivers/net/vsc9953: Add command to show/clear port counters
The new added command: ethsw [port <port_no>] statistics { [help] | [clear] } will print counters like the number of Rx/Tx frames, number of Rx/Tx bytes, number of Rx/Tx unicast frames, etc. This patch also adds this commnd in the genereric ethsw parser from cmd_ethsw.c Signed-off-by: Codrin Ciubotariu <codrin.ciubotariu@freescale.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com> Reviewed-by: York Sun <yorksun@freescale.com>
This commit is contained in:
committed by
York Sun
parent
24a23deb90
commit
86719f0cd5
@@ -77,6 +77,11 @@
|
||||
/* Macros for vsc9953_sys_pause_cfgtot_tail_drop_lvl register */
|
||||
#define VSC9953_TOT_TAIL_DROP_LVL 0x000003ff
|
||||
|
||||
/* Macros for vsc9953_sys_sys.stat_cfg register */
|
||||
#define VSC9953_STAT_CLEAR_RX 0x00000400
|
||||
#define VSC9953_STAT_CLEAR_TX 0x00000800
|
||||
#define VSC9953_STAT_CLEAR_DR 0x00001000
|
||||
|
||||
/* Macros for vsc9953_vcap_core_cfg.vcap_mv_cfg register */
|
||||
#define VSC9953_VCAP_MV_CFG 0x0000ffff
|
||||
#define VSC9953_VCAP_UPDATE_CTRL 0x01000004
|
||||
@@ -332,10 +337,115 @@ struct vsc9953_qsys_reg {
|
||||
|
||||
/* VSC9953 SYS structure */
|
||||
|
||||
struct vsc9953_rx_cntrs {
|
||||
u32 c_rx_oct;
|
||||
u32 c_rx_uc;
|
||||
u32 c_rx_mc;
|
||||
u32 c_rx_bc;
|
||||
u32 c_rx_short;
|
||||
u32 c_rx_frag;
|
||||
u32 c_rx_jabber;
|
||||
u32 c_rx_crc;
|
||||
u32 c_rx_symbol_err;
|
||||
u32 c_rx_sz_64;
|
||||
u32 c_rx_sz_65_127;
|
||||
u32 c_rx_sz_128_255;
|
||||
u32 c_rx_sz_256_511;
|
||||
u32 c_rx_sz_512_1023;
|
||||
u32 c_rx_sz_1024_1526;
|
||||
u32 c_rx_sz_jumbo;
|
||||
u32 c_rx_pause;
|
||||
u32 c_rx_control;
|
||||
u32 c_rx_long;
|
||||
u32 c_rx_cat_drop;
|
||||
u32 c_rx_red_prio_0;
|
||||
u32 c_rx_red_prio_1;
|
||||
u32 c_rx_red_prio_2;
|
||||
u32 c_rx_red_prio_3;
|
||||
u32 c_rx_red_prio_4;
|
||||
u32 c_rx_red_prio_5;
|
||||
u32 c_rx_red_prio_6;
|
||||
u32 c_rx_red_prio_7;
|
||||
u32 c_rx_yellow_prio_0;
|
||||
u32 c_rx_yellow_prio_1;
|
||||
u32 c_rx_yellow_prio_2;
|
||||
u32 c_rx_yellow_prio_3;
|
||||
u32 c_rx_yellow_prio_4;
|
||||
u32 c_rx_yellow_prio_5;
|
||||
u32 c_rx_yellow_prio_6;
|
||||
u32 c_rx_yellow_prio_7;
|
||||
u32 c_rx_green_prio_0;
|
||||
u32 c_rx_green_prio_1;
|
||||
u32 c_rx_green_prio_2;
|
||||
u32 c_rx_green_prio_3;
|
||||
u32 c_rx_green_prio_4;
|
||||
u32 c_rx_green_prio_5;
|
||||
u32 c_rx_green_prio_6;
|
||||
u32 c_rx_green_prio_7;
|
||||
u32 reserved[20];
|
||||
};
|
||||
|
||||
struct vsc9953_tx_cntrs {
|
||||
u32 c_tx_oct;
|
||||
u32 c_tx_uc;
|
||||
u32 c_tx_mc;
|
||||
u32 c_tx_bc;
|
||||
u32 c_tx_col;
|
||||
u32 c_tx_drop;
|
||||
u32 c_tx_pause;
|
||||
u32 c_tx_sz_64;
|
||||
u32 c_tx_sz_65_127;
|
||||
u32 c_tx_sz_128_255;
|
||||
u32 c_tx_sz_256_511;
|
||||
u32 c_tx_sz_512_1023;
|
||||
u32 c_tx_sz_1024_1526;
|
||||
u32 c_tx_sz_jumbo;
|
||||
u32 c_tx_yellow_prio_0;
|
||||
u32 c_tx_yellow_prio_1;
|
||||
u32 c_tx_yellow_prio_2;
|
||||
u32 c_tx_yellow_prio_3;
|
||||
u32 c_tx_yellow_prio_4;
|
||||
u32 c_tx_yellow_prio_5;
|
||||
u32 c_tx_yellow_prio_6;
|
||||
u32 c_tx_yellow_prio_7;
|
||||
u32 c_tx_green_prio_0;
|
||||
u32 c_tx_green_prio_1;
|
||||
u32 c_tx_green_prio_2;
|
||||
u32 c_tx_green_prio_3;
|
||||
u32 c_tx_green_prio_4;
|
||||
u32 c_tx_green_prio_5;
|
||||
u32 c_tx_green_prio_6;
|
||||
u32 c_tx_green_prio_7;
|
||||
u32 c_tx_aged;
|
||||
u32 reserved[33];
|
||||
};
|
||||
|
||||
struct vsc9953_drop_cntrs {
|
||||
u32 c_dr_local;
|
||||
u32 c_dr_tail;
|
||||
u32 c_dr_yellow_prio_0;
|
||||
u32 c_dr_yellow_prio_1;
|
||||
u32 c_dr_yellow_prio_2;
|
||||
u32 c_dr_yellow_prio_3;
|
||||
u32 c_dr_yellow_prio_4;
|
||||
u32 c_dr_yellow_prio_5;
|
||||
u32 c_dr_yellow_prio_6;
|
||||
u32 c_dr_yellow_prio_7;
|
||||
u32 c_dr_green_prio_0;
|
||||
u32 c_dr_green_prio_1;
|
||||
u32 c_dr_green_prio_2;
|
||||
u32 c_dr_green_prio_3;
|
||||
u32 c_dr_green_prio_4;
|
||||
u32 c_dr_green_prio_5;
|
||||
u32 c_dr_green_prio_6;
|
||||
u32 c_dr_green_prio_7;
|
||||
u32 reserved[46];
|
||||
};
|
||||
|
||||
struct vsc9953_sys_stat {
|
||||
u32 rx_cntrs[64];
|
||||
u32 tx_cntrs[64];
|
||||
u32 drop_cntrs[64];
|
||||
struct vsc9953_rx_cntrs rx_cntrs;
|
||||
struct vsc9953_tx_cntrs tx_cntrs;
|
||||
struct vsc9953_drop_cntrs drop_cntrs;
|
||||
u32 reserved1[6];
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user