Chameleon

Chameleon Svn Source Tree

Root/branches/rewrite/i386/include/IOKit/network/IOEthernetStats.h

Source at commit 1129 created 12 years 11 months ago.
By meklort, Change options.o so that it reloads the system config as well. Also change it so that it uses that config for variables (NOTE: if the calue exists in chameleonConfig, it's used instead.
1/*
2 * Copyright (c) 1998-2008 Apple Inc. All rights reserved.
3 *
4 * @APPLE_LICENSE_HEADER_START@
5 *
6 * The contents of this file constitute Original Code as defined in and
7 * are subject to the Apple Public Source License Version 1.1 (the
8 * "License"). You may not use this file except in compliance with the
9 * License. Please obtain a copy of the License at
10 * http://www.apple.com/publicsource and read it before using this file.
11 *
12 * This Original Code and all software distributed under the License are
13 * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
17 * License for the specific language governing rights and limitations
18 * under the License.
19 *
20 * @APPLE_LICENSE_HEADER_END@
21 */
22/*
23 * IOEthernetStats.h - Ethernet MIB statistics definitions.
24 *
25 * HISTORY
26 */
27
28#ifndef _IOETHERNETSTATS_H
29#define _IOETHERNETSTATS_H
30
31/*! @header IOEthernetStats.h
32 @discussion Ethernet statistics. */
33
34//---------------------------------------------------------------------------
35// Ethernet-like statistics group.
36
37/*! @typedef IODot3StatsEntry
38 @discussion Ethernet MIB statistics structure.
39 @field alignmentErrors dot3StatsAlignmentErrors.
40 @field fcsErrors dot3StatsFCSErrors.
41 @field singleCollisionFrames dot3StatsSingleCollisionFrames.
42 @field multipleCollisionFrames dot3StatsMultipleCollisionFrames.
43 @field sqeTestErrors dot3StatsSQETestErrors.
44 @field deferredTransmissions dot3StatsDeferredTransmissions.
45 @field lateCollisions dot3StatsLateCollisions.
46 @field excessiveCollisions dot3StatsExcessiveCollisions.
47 @field internalMacTransmitErrors dot3StatsInternalMacTransmitErrors.
48 @field carrierSenseErrors dot3StatsCarrierSenseErrors.
49 @field frameTooLongs dot3StatsFrameTooLongs.
50 @field internalMacReceiveErrors dot3StatsInternalMacReceiveErrors.
51 @field etherChipSet dot3StatsEtherChipSet.
52 @field missedFrames dot3StatsMissedFrames (not in RFC1650).
53 */
54
55typedef struct {
56 UInt32 alignmentErrors;
57 UInt32 fcsErrors;
58 UInt32 singleCollisionFrames;
59 UInt32 multipleCollisionFrames;
60 UInt32 sqeTestErrors;
61 UInt32 deferredTransmissions;
62 UInt32 lateCollisions;
63 UInt32 excessiveCollisions;
64 UInt32 internalMacTransmitErrors;
65 UInt32 carrierSenseErrors;
66 UInt32 frameTooLongs;
67 UInt32 internalMacReceiveErrors;
68 UInt32 etherChipSet;
69 UInt32 missedFrames;
70} IODot3StatsEntry;
71
72//---------------------------------------------------------------------------
73// Ethernet-like collision statistics group (optional).
74
75/*! @typedef IODot3CollEntry
76 @discussion Collision statistics structure.
77 @field collFrequencies dot3StatsCollFrequencies. */
78
79typedef struct {
80 UInt32 collFrequencies[16];
81} IODot3CollEntry;
82
83//---------------------------------------------------------------------------
84// Receiver extra statistics group (not defined by RFC 1650).
85
86/*! @typedef IODot3RxExtraEntry
87 @discussion Extra receiver statistics not defined by RFC1650.
88 @field overruns receiver overruns.
89 @field watchdogTimeouts watchdog timer expirations.
90 @field frameTooShorts runt frames.
91 @field collisionErrors frames damages by late collision.
92 @field phyErrors PHY receive errors.
93 @field timeouts receiver timeouts.
94 @field interrupts receiver interrupts.
95 @field resets receiver resets.
96 @field resourceErrors receiver resource shortages.
97 */
98
99typedef struct {
100 UInt32 overruns;
101 UInt32 watchdogTimeouts;
102 UInt32 frameTooShorts;
103 UInt32 collisionErrors;
104 UInt32 phyErrors;
105 UInt32 timeouts;
106 UInt32 interrupts;
107 UInt32 resets;
108 UInt32 resourceErrors;
109 UInt32 reserved[4];
110} IODot3RxExtraEntry;
111
112//---------------------------------------------------------------------------
113// Transmitter extra statistics group (not defined by RFC 1650).
114
115/*! @typedef IODot3TxExtraEntry
116 @discussion Extra transmitter statistics not defined by RFC1650.
117 @field underruns transmit underruns.
118 @field jabbers jabber events.
119 @field phyErrors PHY transmit errors.
120 @field timeouts transmitter timeouts.
121 @field interrupts transmitter interrupts.
122 @field resets transmitter resets.
123 @field resourceErrors transmitter resource shortages.
124 */
125
126typedef struct {
127 UInt32 underruns;
128 UInt32 jabbers;
129 UInt32 phyErrors;
130 UInt32 timeouts;
131 UInt32 interrupts;
132 UInt32 resets;
133 UInt32 resourceErrors;
134 UInt32 reserved[4];
135} IODot3TxExtraEntry;
136
137//---------------------------------------------------------------------------
138// Aggregate Ethernet statistics.
139
140/*! @typedef IOEthernetStats
141 @discussion Aggregate Ethernet statistics structure.
142 @field dot3StatsEntry IODot3StatsEntry statistics group.
143 @field dot3CollEntry IODot3CollEntry statistics group.
144 @field dot3RxExtraEntry IODot3RxExtraEntry statistics group.
145 @field dot3TxExtraEntry IODot3TxExtraEntry statistics group.
146 */
147
148typedef struct {
149 IODot3StatsEntry dot3StatsEntry;
150 IODot3CollEntry dot3CollEntry;
151 IODot3RxExtraEntry dot3RxExtraEntry;
152 IODot3TxExtraEntry dot3TxExtraEntry;
153} IOEthernetStats;
154
155/*! @defined kIOEthernetStatsKey
156 @discussion Defines the name of an IONetworkData that contains
157 an IOEthernetStats. */
158
159#define kIOEthernetStatsKey "IOEthernetStatsKey"
160
161#endif /* !_IOETHERNETSTATS_H */
162

Archive Download this file

Revision: 1129