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) 2013, Broadcom Corporation. All Rights Reserved. 7 * 8 * Permission to use, copy, modify, and/or distribute this software for any 9 * purpose with or without fee is hereby granted, provided that the above 10 * copyright notice and this permission notice appear in all copies. 11 * 12 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 13 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 14 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY 15 * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 16 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION 17 * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 18 * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 19 * $Id: bcmenetmib.h 376344 2012-12-24 21:10:09Z $ 20 */ 21 22#ifndef _bcmenetmib_h_ 23#define _bcmenetmib_h_ 24 25/* cpp contortions to concatenate w/arg prescan */ 26#ifndef PAD 27#define _PADLINE(line) pad ## line 28#define _XSTR(line) _PADLINE(line) 29#define PAD _XSTR(__LINE__) 30#endif /* PAD */ 31 32/* 33 * EMAC MIB Registers 34 */ 35typedef volatile struct { 36 uint32 tx_good_octets; 37 uint32 tx_good_pkts; 38 uint32 tx_octets; 39 uint32 tx_pkts; 40 uint32 tx_broadcast_pkts; 41 uint32 tx_multicast_pkts; 42 uint32 tx_len_64; 43 uint32 tx_len_65_to_127; 44 uint32 tx_len_128_to_255; 45 uint32 tx_len_256_to_511; 46 uint32 tx_len_512_to_1023; 47 uint32 tx_len_1024_to_max; 48 uint32 tx_jabber_pkts; 49 uint32 tx_oversize_pkts; 50 uint32 tx_fragment_pkts; 51 uint32 tx_underruns; 52 uint32 tx_total_cols; 53 uint32 tx_single_cols; 54 uint32 tx_multiple_cols; 55 uint32 tx_excessive_cols; 56 uint32 tx_late_cols; 57 uint32 tx_defered; 58 uint32 tx_carrier_lost; 59 uint32 tx_pause_pkts; 60 uint32 PAD[8]; 61 62 uint32 rx_good_octets; 63 uint32 rx_good_pkts; 64 uint32 rx_octets; 65 uint32 rx_pkts; 66 uint32 rx_broadcast_pkts; 67 uint32 rx_multicast_pkts; 68 uint32 rx_len_64; 69 uint32 rx_len_65_to_127; 70 uint32 rx_len_128_to_255; 71 uint32 rx_len_256_to_511; 72 uint32 rx_len_512_to_1023; 73 uint32 rx_len_1024_to_max; 74 uint32 rx_jabber_pkts; 75 uint32 rx_oversize_pkts; 76 uint32 rx_fragment_pkts; 77 uint32 rx_missed_pkts; 78 uint32 rx_crc_align_errs; 79 uint32 rx_undersize; 80 uint32 rx_crc_errs; 81 uint32 rx_align_errs; 82 uint32 rx_symbol_errs; 83 uint32 rx_pause_pkts; 84 uint32 rx_nonpause_pkts; 85} bcmenetmib_t; 86 87#endif /* _bcmenetmib_h_ */ 88