12e99ea80SHyong Youb Kim /* SPDX-License-Identifier: BSD-3-Clause 22e99ea80SHyong Youb Kim * Copyright 2008-2017 Cisco Systems, Inc. All rights reserved. 372f3de30SBruce Richardson * Copyright 2007 Nuova Systems, Inc. All rights reserved. 472f3de30SBruce Richardson */ 572f3de30SBruce Richardson 672f3de30SBruce Richardson #ifndef _VNIC_STATS_H_ 772f3de30SBruce Richardson #define _VNIC_STATS_H_ 872f3de30SBruce Richardson 972f3de30SBruce Richardson /* Tx statistics */ 1072f3de30SBruce Richardson struct vnic_tx_stats { 11*04e8ec74SJohn Daley uint64_t tx_frames_ok; 12*04e8ec74SJohn Daley uint64_t tx_unicast_frames_ok; 13*04e8ec74SJohn Daley uint64_t tx_multicast_frames_ok; 14*04e8ec74SJohn Daley uint64_t tx_broadcast_frames_ok; 15*04e8ec74SJohn Daley uint64_t tx_bytes_ok; 16*04e8ec74SJohn Daley uint64_t tx_unicast_bytes_ok; 17*04e8ec74SJohn Daley uint64_t tx_multicast_bytes_ok; 18*04e8ec74SJohn Daley uint64_t tx_broadcast_bytes_ok; 19*04e8ec74SJohn Daley uint64_t tx_drops; 20*04e8ec74SJohn Daley uint64_t tx_errors; 21*04e8ec74SJohn Daley uint64_t tx_tso; 22*04e8ec74SJohn Daley uint64_t rsvd[16]; 2372f3de30SBruce Richardson }; 2472f3de30SBruce Richardson 2572f3de30SBruce Richardson /* Rx statistics */ 2672f3de30SBruce Richardson struct vnic_rx_stats { 27*04e8ec74SJohn Daley uint64_t rx_frames_ok; 28*04e8ec74SJohn Daley uint64_t rx_frames_total; 29*04e8ec74SJohn Daley uint64_t rx_unicast_frames_ok; 30*04e8ec74SJohn Daley uint64_t rx_multicast_frames_ok; 31*04e8ec74SJohn Daley uint64_t rx_broadcast_frames_ok; 32*04e8ec74SJohn Daley uint64_t rx_bytes_ok; 33*04e8ec74SJohn Daley uint64_t rx_unicast_bytes_ok; 34*04e8ec74SJohn Daley uint64_t rx_multicast_bytes_ok; 35*04e8ec74SJohn Daley uint64_t rx_broadcast_bytes_ok; 36*04e8ec74SJohn Daley uint64_t rx_drop; 37*04e8ec74SJohn Daley uint64_t rx_no_bufs; 38*04e8ec74SJohn Daley uint64_t rx_errors; 39*04e8ec74SJohn Daley uint64_t rx_rss; 40*04e8ec74SJohn Daley uint64_t rx_crc_errors; 41*04e8ec74SJohn Daley uint64_t rx_frames_64; 42*04e8ec74SJohn Daley uint64_t rx_frames_127; 43*04e8ec74SJohn Daley uint64_t rx_frames_255; 44*04e8ec74SJohn Daley uint64_t rx_frames_511; 45*04e8ec74SJohn Daley uint64_t rx_frames_1023; 46*04e8ec74SJohn Daley uint64_t rx_frames_1518; 47*04e8ec74SJohn Daley uint64_t rx_frames_to_max; 48*04e8ec74SJohn Daley uint64_t rsvd[16]; 4972f3de30SBruce Richardson }; 5072f3de30SBruce Richardson 5172f3de30SBruce Richardson struct vnic_stats { 5272f3de30SBruce Richardson struct vnic_tx_stats tx; 5372f3de30SBruce Richardson struct vnic_rx_stats rx; 5472f3de30SBruce Richardson }; 5572f3de30SBruce Richardson 5672f3de30SBruce Richardson #endif /* _VNIC_STATS_H_ */ 57