1/*
2 * Hardware-specific MIB definition for
3 * Broadcom Home Networking Division
4 * BCM44XX and BCM47XX 10/100 Mbps Ethernet cores.
5 *
6 * Copyright (C) 2010, Broadcom Corporation
7 * All Rights Reserved.
8 *
9 * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation;
10 * the contents of this file may not be disclosed to third parties, copied
11 * or duplicated in any form, in whole or in part, without the prior
12 * written permission of Broadcom Corporation.
13 * $Id: bcmenetmib.h,v 13.5 2005/06/21 18:01:46 Exp $
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 */
29typedef 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_ */
82