1c8806b6cSNarsimhulu Musini /* 2c8806b6cSNarsimhulu Musini * Copyright 2014 Cisco Systems, Inc. All rights reserved. 3c8806b6cSNarsimhulu Musini * 4c8806b6cSNarsimhulu Musini * This program is free software; you may redistribute it and/or modify 5c8806b6cSNarsimhulu Musini * it under the terms of the GNU General Public License as published by 6c8806b6cSNarsimhulu Musini * the Free Software Foundation; version 2 of the License. 7c8806b6cSNarsimhulu Musini * 8c8806b6cSNarsimhulu Musini * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 9c8806b6cSNarsimhulu Musini * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 10c8806b6cSNarsimhulu Musini * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 11c8806b6cSNarsimhulu Musini * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS 12c8806b6cSNarsimhulu Musini * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN 13c8806b6cSNarsimhulu Musini * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 14c8806b6cSNarsimhulu Musini * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 15c8806b6cSNarsimhulu Musini * SOFTWARE. 16c8806b6cSNarsimhulu Musini */ 17c8806b6cSNarsimhulu Musini 18c8806b6cSNarsimhulu Musini #ifndef _VNIC_STATS_H_ 19c8806b6cSNarsimhulu Musini #define _VNIC_STATS_H_ 20c8806b6cSNarsimhulu Musini 21c8806b6cSNarsimhulu Musini /* Tx statistics */ 22c8806b6cSNarsimhulu Musini struct vnic_tx_stats { 23c8806b6cSNarsimhulu Musini u64 tx_frames_ok; 24c8806b6cSNarsimhulu Musini u64 tx_unicast_frames_ok; 25c8806b6cSNarsimhulu Musini u64 tx_multicast_frames_ok; 26c8806b6cSNarsimhulu Musini u64 tx_broadcast_frames_ok; 27c8806b6cSNarsimhulu Musini u64 tx_bytes_ok; 28c8806b6cSNarsimhulu Musini u64 tx_unicast_bytes_ok; 29c8806b6cSNarsimhulu Musini u64 tx_multicast_bytes_ok; 30c8806b6cSNarsimhulu Musini u64 tx_broadcast_bytes_ok; 31c8806b6cSNarsimhulu Musini u64 tx_drops; 32c8806b6cSNarsimhulu Musini u64 tx_errors; 33c8806b6cSNarsimhulu Musini u64 tx_tso; 34c8806b6cSNarsimhulu Musini u64 rsvd[16]; 35c8806b6cSNarsimhulu Musini }; 36c8806b6cSNarsimhulu Musini 37c8806b6cSNarsimhulu Musini /* Rx statistics */ 38c8806b6cSNarsimhulu Musini struct vnic_rx_stats { 39c8806b6cSNarsimhulu Musini u64 rx_frames_ok; 40c8806b6cSNarsimhulu Musini u64 rx_frames_total; 41c8806b6cSNarsimhulu Musini u64 rx_unicast_frames_ok; 42c8806b6cSNarsimhulu Musini u64 rx_multicast_frames_ok; 43c8806b6cSNarsimhulu Musini u64 rx_broadcast_frames_ok; 44c8806b6cSNarsimhulu Musini u64 rx_bytes_ok; 45c8806b6cSNarsimhulu Musini u64 rx_unicast_bytes_ok; 46c8806b6cSNarsimhulu Musini u64 rx_multicast_bytes_ok; 47c8806b6cSNarsimhulu Musini u64 rx_broadcast_bytes_ok; 48c8806b6cSNarsimhulu Musini u64 rx_drop; 49c8806b6cSNarsimhulu Musini u64 rx_no_bufs; 50c8806b6cSNarsimhulu Musini u64 rx_errors; 51c8806b6cSNarsimhulu Musini u64 rx_rss; 52c8806b6cSNarsimhulu Musini u64 rx_crc_errors; 53c8806b6cSNarsimhulu Musini u64 rx_frames_64; 54c8806b6cSNarsimhulu Musini u64 rx_frames_127; 55c8806b6cSNarsimhulu Musini u64 rx_frames_255; 56c8806b6cSNarsimhulu Musini u64 rx_frames_511; 57c8806b6cSNarsimhulu Musini u64 rx_frames_1023; 58c8806b6cSNarsimhulu Musini u64 rx_frames_1518; 59c8806b6cSNarsimhulu Musini u64 rx_frames_to_max; 60c8806b6cSNarsimhulu Musini u64 rsvd[16]; 61c8806b6cSNarsimhulu Musini }; 62c8806b6cSNarsimhulu Musini 63c8806b6cSNarsimhulu Musini struct vnic_stats { 64c8806b6cSNarsimhulu Musini struct vnic_tx_stats tx; 65c8806b6cSNarsimhulu Musini struct vnic_rx_stats rx; 66c8806b6cSNarsimhulu Musini }; 67c8806b6cSNarsimhulu Musini 68c8806b6cSNarsimhulu Musini #endif /* _VNIC_STATS_H_ */ 69