blob: 40dad25e40e75d09758cca66e3385514d261b1ec [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Vitaly Kuzmichev24fcb472011-02-11 18:18:32 +03002/*
3 * INET An implementation of the TCP/IP protocol suite for the LINUX
4 * operating system. INET is implemented using the BSD Socket
5 * interface as the means of communication with the user level.
6 *
7 * Definitions for the Interfaces handler.
8 *
9 * Version: @(#)dev.h 1.0.10 08/12/93
10 *
11 * Authors: Ross Biro
12 * Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
13 * Corey Minyard <wf-rch!minyard@relay.EU.net>
14 * Donald J. Becker, <becker@cesdis.gsfc.nasa.gov>
15 * Alan Cox, <Alan.Cox@linux.org>
16 * Bjorn Ekwall. <bj0rn@blox.se>
17 * Pekka Riikonen <priikone@poseidon.pspt.fi>
18 *
Vitaly Kuzmichev24fcb472011-02-11 18:18:32 +030019 * Moved to /usr/include/linux for NET3
20 */
21#ifndef _LINUX_NETDEVICE_H
22#define _LINUX_NETDEVICE_H
23
24/*
25 * Network device statistics. Akin to the 2.0 ether stats but
26 * with byte counters.
27 */
28
29struct net_device_stats {
30 unsigned long rx_packets; /* total packets received */
31 unsigned long tx_packets; /* total packets transmitted */
32 unsigned long rx_bytes; /* total bytes received */
33 unsigned long tx_bytes; /* total bytes transmitted */
34 unsigned long rx_errors; /* bad packets received */
35 unsigned long tx_errors; /* packet transmit problems */
36 unsigned long rx_dropped; /* no space in linux buffers */
37 unsigned long tx_dropped; /* no space available in linux */
38 unsigned long multicast; /* multicast packets received */
39 unsigned long collisions;
40
41 /* detailed rx_errors: */
42 unsigned long rx_length_errors;
43 unsigned long rx_over_errors; /* receiver ring buff overflow */
44 unsigned long rx_crc_errors; /* recved pkt with crc error */
45 unsigned long rx_frame_errors; /* recv'd frame alignment error */
46 unsigned long rx_fifo_errors; /* recv'r fifo overrun */
47 unsigned long rx_missed_errors; /* receiver missed packet */
48
49 /* detailed tx_errors */
50 unsigned long tx_aborted_errors;
51 unsigned long tx_carrier_errors;
52 unsigned long tx_fifo_errors;
53 unsigned long tx_heartbeat_errors;
54 unsigned long tx_window_errors;
55
56 /* for cslip etc */
57 unsigned long rx_compressed;
58 unsigned long tx_compressed;
59};
60
61#endif /* _LINUX_NETDEVICE_H */