add all source code from linksys/broadcom which is free, to cvs for better maintainen...
[openwrt/staging/mkresin.git] / openwrt / package / linux / kernel-source / include / bcmenetmib.h
1 /*
2 * Hardware-specific MIB definition for
3 * Broadcom Home Networking Division
4 * BCM44XX and BCM47XX 10/100 Mbps Ethernet cores.
5 *
6 * Copyright 2004, Broadcom Corporation
7 * All Rights Reserved.
8 *
9 * THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
10 * KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
11 * SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
12 * FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE.
13 * $Id$
14 */
15
16 #ifndef _bcmenetmib_h_
17 #define _bcmenetmib_h_
18
19 /* cpp contortions to concatenate w/arg prescan */
20 #ifndef PAD
21 #define _PADLINE(line) pad ## line
22 #define _XSTR(line) _PADLINE(line)
23 #define PAD _XSTR(__LINE__)
24 #endif /* PAD */
25
26 /*
27 * EMAC MIB Registers
28 */
29 typedef volatile struct {
30 uint32 tx_good_octets;
31 uint32 tx_good_pkts;
32 uint32 tx_octets;
33 uint32 tx_pkts;
34 uint32 tx_broadcast_pkts;
35 uint32 tx_multicast_pkts;
36 uint32 tx_len_64;
37 uint32 tx_len_65_to_127;
38 uint32 tx_len_128_to_255;
39 uint32 tx_len_256_to_511;
40 uint32 tx_len_512_to_1023;
41 uint32 tx_len_1024_to_max;
42 uint32 tx_jabber_pkts;
43 uint32 tx_oversize_pkts;
44 uint32 tx_fragment_pkts;
45 uint32 tx_underruns;
46 uint32 tx_total_cols;
47 uint32 tx_single_cols;
48 uint32 tx_multiple_cols;
49 uint32 tx_excessive_cols;
50 uint32 tx_late_cols;
51 uint32 tx_defered;
52 uint32 tx_carrier_lost;
53 uint32 tx_pause_pkts;
54 uint32 PAD[8];
55
56 uint32 rx_good_octets;
57 uint32 rx_good_pkts;
58 uint32 rx_octets;
59 uint32 rx_pkts;
60 uint32 rx_broadcast_pkts;
61 uint32 rx_multicast_pkts;
62 uint32 rx_len_64;
63 uint32 rx_len_65_to_127;
64 uint32 rx_len_128_to_255;
65 uint32 rx_len_256_to_511;
66 uint32 rx_len_512_to_1023;
67 uint32 rx_len_1024_to_max;
68 uint32 rx_jabber_pkts;
69 uint32 rx_oversize_pkts;
70 uint32 rx_fragment_pkts;
71 uint32 rx_missed_pkts;
72 uint32 rx_crc_align_errs;
73 uint32 rx_undersize;
74 uint32 rx_crc_errs;
75 uint32 rx_align_errs;
76 uint32 rx_symbol_errs;
77 uint32 rx_pause_pkts;
78 uint32 rx_nonpause_pkts;
79 } bcmenetmib_t;
80
81 #endif /* _bcmenetmib_h_ */