1*dfb99b05SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 2*dfb99b05SThomas Gleixner /* Copyright 2014 Cisco Systems, Inc. All rights reserved. */ 3c8806b6cSNarsimhulu Musini 4c8806b6cSNarsimhulu Musini #ifndef _VNIC_STATS_H_ 5c8806b6cSNarsimhulu Musini #define _VNIC_STATS_H_ 6c8806b6cSNarsimhulu Musini 7c8806b6cSNarsimhulu Musini /* Tx statistics */ 8c8806b6cSNarsimhulu Musini struct vnic_tx_stats { 9c8806b6cSNarsimhulu Musini u64 tx_frames_ok; 10c8806b6cSNarsimhulu Musini u64 tx_unicast_frames_ok; 11c8806b6cSNarsimhulu Musini u64 tx_multicast_frames_ok; 12c8806b6cSNarsimhulu Musini u64 tx_broadcast_frames_ok; 13c8806b6cSNarsimhulu Musini u64 tx_bytes_ok; 14c8806b6cSNarsimhulu Musini u64 tx_unicast_bytes_ok; 15c8806b6cSNarsimhulu Musini u64 tx_multicast_bytes_ok; 16c8806b6cSNarsimhulu Musini u64 tx_broadcast_bytes_ok; 17c8806b6cSNarsimhulu Musini u64 tx_drops; 18c8806b6cSNarsimhulu Musini u64 tx_errors; 19c8806b6cSNarsimhulu Musini u64 tx_tso; 20c8806b6cSNarsimhulu Musini u64 rsvd[16]; 21c8806b6cSNarsimhulu Musini }; 22c8806b6cSNarsimhulu Musini 23c8806b6cSNarsimhulu Musini /* Rx statistics */ 24c8806b6cSNarsimhulu Musini struct vnic_rx_stats { 25c8806b6cSNarsimhulu Musini u64 rx_frames_ok; 26c8806b6cSNarsimhulu Musini u64 rx_frames_total; 27c8806b6cSNarsimhulu Musini u64 rx_unicast_frames_ok; 28c8806b6cSNarsimhulu Musini u64 rx_multicast_frames_ok; 29c8806b6cSNarsimhulu Musini u64 rx_broadcast_frames_ok; 30c8806b6cSNarsimhulu Musini u64 rx_bytes_ok; 31c8806b6cSNarsimhulu Musini u64 rx_unicast_bytes_ok; 32c8806b6cSNarsimhulu Musini u64 rx_multicast_bytes_ok; 33c8806b6cSNarsimhulu Musini u64 rx_broadcast_bytes_ok; 34c8806b6cSNarsimhulu Musini u64 rx_drop; 35c8806b6cSNarsimhulu Musini u64 rx_no_bufs; 36c8806b6cSNarsimhulu Musini u64 rx_errors; 37c8806b6cSNarsimhulu Musini u64 rx_rss; 38c8806b6cSNarsimhulu Musini u64 rx_crc_errors; 39c8806b6cSNarsimhulu Musini u64 rx_frames_64; 40c8806b6cSNarsimhulu Musini u64 rx_frames_127; 41c8806b6cSNarsimhulu Musini u64 rx_frames_255; 42c8806b6cSNarsimhulu Musini u64 rx_frames_511; 43c8806b6cSNarsimhulu Musini u64 rx_frames_1023; 44c8806b6cSNarsimhulu Musini u64 rx_frames_1518; 45c8806b6cSNarsimhulu Musini u64 rx_frames_to_max; 46c8806b6cSNarsimhulu Musini u64 rsvd[16]; 47c8806b6cSNarsimhulu Musini }; 48c8806b6cSNarsimhulu Musini 49c8806b6cSNarsimhulu Musini struct vnic_stats { 50c8806b6cSNarsimhulu Musini struct vnic_tx_stats tx; 51c8806b6cSNarsimhulu Musini struct vnic_rx_stats rx; 52c8806b6cSNarsimhulu Musini }; 53c8806b6cSNarsimhulu Musini 54c8806b6cSNarsimhulu Musini #endif /* _VNIC_STATS_H_ */ 55