Root/
Source at commit 1166 created 13 years 10 days ago. By meklort, Fixed recent Makefile changes. Please do not use /Users/evan/SourceCode/tmp/chameleon/trunk or VPATH. the *only* time you should use /Users/evan/SourceCode/tmp/chameleon/trunk is when setting the SRCROOT variable. Also note that very soon make pkg is going to be removed. The pkg build script in trunk is very out of date. Instead please use the package maker at http://forge.voodooprojects.org/p/chameleonApplications/. Once this is ready for trunk it will be merged. | |
---|---|
1 | /*␊ |
2 | * Copyright � 2009 Apple Inc. All rights reserved.␊ |
3 | *␊ |
4 | * @APPLE_LICENSE_HEADER_START@␊ |
5 | * ␊ |
6 | * This file contains Original Code and/or Modifications of Original Code␊ |
7 | * as defined in and that are subject to the Apple Public Source License␊ |
8 | * Version 2.0 (the 'License'). You may not use this file except in␊ |
9 | * compliance with the License. Please obtain a copy of the License at␊ |
10 | * http://www.opensource.apple.com/apsl/ and read it before using this␊ |
11 | * file.␊ |
12 | * ␊ |
13 | * The Original Code and all software distributed under the License are␊ |
14 | * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER␊ |
15 | * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,␊ |
16 | * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,␊ |
17 | * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.␊ |
18 | * Please see the License for the specific language governing rights and␊ |
19 | * limitations under the License.␊ |
20 | * ␊ |
21 | * @APPLE_LICENSE_HEADER_END@␊ |
22 | */␊ |
23 | ␊ |
24 | #ifndef __IOKIT_IO_USB_FAMILY_TRACEPOINTS__␊ |
25 | #define __IOKIT_IO_USB_FAMILY_TRACEPOINTS__␊ |
26 | ␊ |
27 | #include <IOKit/IOTypes.h>␊ |
28 | ␊ |
29 | #include <sys/kdebug.h>␊ |
30 | ␊ |
31 | #ifdef __cplusplus␊ |
32 | extern "C" {␊ |
33 | #endif␊ |
34 | ␉␊ |
35 | #define USB_SYSCTL␉␉␉"debug.USB"␊ |
36 | #define kUSBTypeDebug␉␉'USBD'␊ |
37 | #define DEBUG_UNUSED( X )␉( void )( X )␊ |
38 | ␉␊ |
39 | ␉extern UInt32 gUSBStackDebugFlags;␊ |
40 | ␉␊ |
41 | ␉typedef struct USBSysctlArgs␊ |
42 | ␉␉{␊ |
43 | ␉␉␉uint32_t␉␉type;␊ |
44 | ␉␉␉uint32_t␉␉operation;␊ |
45 | ␉␉␉uint32_t␉␉debugFlags;␊ |
46 | ␉␉} USBSysctlArgs;␊ |
47 | ␉␊ |
48 | ␉enum␊ |
49 | ␉{␊ |
50 | ␉␉kUSBOperationGetFlags ␉= 0,␊ |
51 | ␉␉kUSBOperationSetFlags␉= 1␊ |
52 | ␉};␊ |
53 | ␉␊ |
54 | ␉// the following bits/masks are for use in the usb boot args␊ |
55 | ␉// e.g. boot-args="usb=0x102" will turn on Trace Points and set the EHCI retry count to 1␊ |
56 | ␉// the bits can also be set with a sysctl call␊ |
57 | ␉enum␊ |
58 | ␉{␊ |
59 | ␉␉kUSBEnableDebugLoggingBit␉␉= 0,␉// bit 0 currently not used␊ |
60 | ␉␉kUSBEnableTracePointsBit␉␉= 1,␉// bit 1 used to turn on Trace Points when a USB controller first loads␊ |
61 | ␉␉kUSBEnableErrorLogBit␉␉␉= 2,␉// bit 2 (4) turns level 1 log for errors␊ |
62 | ␉␉kUSBDebugRetryCountShift␉␉= 8,␉// bits 8 and 9 will set the retry count for low level bus transactions␊ |
63 | ␉␉kUSBDebugRetryCountReserved␉␉= 9,␉// must be 1, 2, or 3 (0 is invalid, 3 is the default)␊ |
64 | ␉␉␊ |
65 | ␉␉kUSBEnableDebugLoggingMask␉␉= (1 << kUSBEnableDebugLoggingBit),␊ |
66 | ␉␉kUSBEnableTracePointsMask␉␉= (1 << kUSBEnableTracePointsBit),␊ |
67 | ␉␉kUSBDebugRetryCountMask␉␉␉= (3 << kUSBDebugRetryCountShift),␊ |
68 | ␉␉kUSBEnableErrorLogMask␉␉␉␉= (1 << kUSBEnableErrorLogBit)␊ |
69 | ␉};␊ |
70 | ␉␊ |
71 | ␉␊ |
72 | ␉/* Kernel Tracepoints␊ |
73 | ␉ *␊ |
74 | ␉ * Kernel tracepoints are a logging mechanism reduces the size of a log-laden binary.␊ |
75 | ␉ * Codes are placed into a buffer, from the kernel, and picked up by a userspace␊ |
76 | ␉ * tool that displays a unique log message for each tracepoint. Additionally, each␊ |
77 | ␉ * tracepoint may contain up-to four 32-bit (may change with LP64) arguments. ␊ |
78 | ␉ *␊ |
79 | ␉ * To add a tracepoint, use the code below as an example:␊ |
80 | ␉ * USBTrace( kUSBTController, kTPControllerStart, (uintptr_t)myArgValue );␊ |
81 | ␉ * Next, add the corresponding tracepoint code in the USBTracer tool, using␊ |
82 | ␉ * the existing examples. Avoid using confidential information in the log strings.␊ |
83 | ␉ * Some functions have a argument counter, to signify which of the function's tracepoints␊ |
84 | ␉ * are actually being logged. When adding a tracepoint using an existing code, you␊ |
85 | ␉ * must verify that you increment this argument counter properly.␊ |
86 | ␉ *␊ |
87 | ␉ * The trace codes consist of the following:␊ |
88 | ␉ *␊ |
89 | ␉ * ----------------------------------------------------------------------␊ |
90 | ␉ *| Class (8) | SubClass (8) | USBGroup(6) | Code (8) |Func |␊ |
91 | ␉ *| DBG_IOKIT | DBG_IOUSB | | |Qual(2)|␊ |
92 | ␉ * ----------------------------------------------------------------------␊ |
93 | ␉ *␊ |
94 | ␉ * DBG_IOKIT(05h) DBG_IOUSB(2Dh)␊ |
95 | ␉ *␊ |
96 | ␉ * See <sys/kdebug.h> and IOTimeStamp.h for more details.␊ |
97 | ␉ */␊ |
98 | ␉␊ |
99 | ␉␊ |
100 | ␉// USB groupings (max of 64)␊ |
101 | ␉enum␊ |
102 | ␉{␊ |
103 | ␉␉// Family groupings␊ |
104 | ␉␉kUSBTController␉␉␉␉= 0,␊ |
105 | ␉␉kUSBTControllerUserClient␉= 1,␊ |
106 | ␉␉␊ |
107 | ␉␉kUSBTDevice␉␉␉␉␉= 2,␊ |
108 | ␉␉kUSBTDeviceUserClient␉␉= 3,␊ |
109 | ␊ |
110 | ␉␉kUSBTHub␉␉␉␉␉= 4,␊ |
111 | ␉␉kUSBTHubPort␉␉␉␉= 5,␊ |
112 | ␉␉kUSBTHSHubUserClient␉␉= 6,␊ |
113 | ␉␉kUSBTHID␉␉␉␉␉= 7,␊ |
114 | ␉␉kUSBTPipe␉␉␉␉␉= 8,␊ |
115 | ␊ |
116 | ␉␉kUSBTInterfaceUserClient␉= 9,␊ |
117 | ␉␉␊ |
118 | ␉␉kUSBTEnumeration␉␉␉␉= 10,␉␉// Tracepoints in various components to debug USB enumeration␊ |
119 | ␊ |
120 | ␉␉␊ |
121 | ␉␉// UIM groupings␊ |
122 | ␉␉kUSBTUHCI␉␉␉␉␉= 11,␊ |
123 | ␉␉kUSBTUHCIUIM␉␉␉␉= 12,␊ |
124 | ␉␉kUSBTUHCIInterrupts␉␉␉= 13,␊ |
125 | ␊ |
126 | ␉␉kUSBTOHCI␉␉␉␉␉= 14,␊ |
127 | ␉␉kUSBTOHCIInterrupts␉␉␉= 15,␊ |
128 | ␉␉␊ |
129 | ␉␉kUSBTEHCI␉␉␉␉␉= 20,␊ |
130 | ␉␉kUSBTEHCIHubInfo␉␉␉= 22,␊ |
131 | ␉␉kUSBTEHCIInterrupts␉␉␉= 23,␊ |
132 | ␉␉␊ |
133 | ␉␉// 30-33 reserved␊ |
134 | ␊ |
135 | ␉␉// 21-25 reserved␊ |
136 | ␉␉kUSBTHubPolicyMaker␉␉␉= 35,␊ |
137 | ␉␉kUSBTCompositeDriver␉␉= 36,␊ |
138 | ␉␉␊ |
139 | ␉␉// Actions␊ |
140 | ␉␉kUSBTOutstandingIO␉␉␉= 42,␊ |
141 | ␊ |
142 | ␉␉// kUSBAudio␊ |
143 | ␉␉kUSBAudio␉␉␉␉␉= 50␊ |
144 | ␊ |
145 | ␉␉// 61-63 reserved␊ |
146 | ␉};␊ |
147 | ␉␊ |
148 | ␉// USB Controller Tracepoints␉␉0x052D0000 - 0x052D03FF␊ |
149 | ␉// kUSBTController␊ |
150 | ␉enum␊ |
151 | ␉{␊ |
152 | ␉␉kTPControllerStart␉␉␉␉␉␉␉= 1,␊ |
153 | ␉␉kTPControllerControlPacketHandler␉␉␉= 2,␊ |
154 | ␉␉kTPControllerMakeDevice␉␉␉␉␉␉= 3,␊ |
155 | ␉␉kTPControllerMakeHubDevice␉␉␉␉␉= 4,␊ |
156 | ␉␉kTPControllerCreateRootHubDevice␉␉␉= 5,␊ |
157 | ␉␉kTPControllerClearTTHandler␉␉␉␉␉= 6,␊ |
158 | ␉␉kTPControllerClearTT␉␉␉␉␉␉= 7,␊ |
159 | ␉␉kTPControllerDoCreateEP␉␉␉␉␉␉= 8,␊ |
160 | ␉␉kTPControllerReadV2␉␉␉␉␉␉␉= 9,␊ |
161 | ␉␉kTPControllerReturnIsochDoneQueue␉␉␉= 10,␊ |
162 | ␉␉kTPControllersetPowerState␉␉␉␉␉= 11,␊ |
163 | ␉␉kTPControllerCheckPowerModeBeforeGatedCall␉= 12,␊ |
164 | ␉␉kTPControllerGatedPowerChange␉␉␉␉= 13,␊ |
165 | ␉␉kTPControllerCheckForRootHubChanges␉␉␉= 14,␊ |
166 | ␉␉kTPControllerRootHubQueueInterruptRead␉␉= 15,␊ |
167 | ␉␉kTPControllerRootHubTimer␉␉␉␉␉= 16,␊ |
168 | ␉␉kTPControllerDisjointCompletion␉␉␉␉= 17,␊ |
169 | ␉␉kTPControllerCheckForDisjointDescriptor␉␉= 18,␊ |
170 | ␉␉kTPControllerRead␉␉␉␉␉␉␉= 19,␊ |
171 | ␉␉kTPControllerV3Start␉␉␉␉␉␉= 20,␊ |
172 | ␉␉kTPAllocatePowerStateArray␉␉␉␉␉= 21,␊ |
173 | ␉␉kTPInitForPM␉␉␉␉␉␉␉␉= 22,␊ |
174 | ␉␉kTPIsocIOLL␉␉␉␉␉␉␉␉␉= 23,␊ |
175 | ␉␉kTPIsocIO␉␉␉␉␉␉␉␉␉= 24,␊ |
176 | ␉␉kTPControllerWrite␉␉␉␉␉␉␉= 25,␊ |
177 | ␉␉kTPCompletionCall␉␉␉␉␉␉␉= 26,␊ |
178 | ␉␉kTPControlTransaction␉␉␉␉␉␉= 27,␊ |
179 | ␉␉kTPInterruptTransaction␉␉␉␉␉␉= 28,␊ |
180 | ␉␉kTPInterruptTransactionData␉␉␉␉␉= 29,␊ |
181 | ␉␉kTPBulkTransaction␉␉␉␉␉␉␉= 30,␊ |
182 | ␉␉kTPBulkTransactionData␉␉␉␉␉␉= 31,␊ |
183 | ␉␉kTPIsocTransaction␉␉␉␉␉␉␉= 32,␊ |
184 | ␉␉kTPInterruptPacketHandler␉␉␉␉␉= 33,␊ |
185 | ␉␉kTPBulkPacketHandler␉␉␉␉␉␉= 34,␊ |
186 | ␉␉kTPDevZeroLock␉␉␉␉␉␉␉␉= 35,␊ |
187 | ␉␉kTPControlPacketHandlerData␉␉␉␉␉= 36,␊ |
188 | ␉␉kTPDoIOTransferIntrSync␉␉␉␉␉␉= 37,␊ |
189 | ␉␉kTPDoIOTransferBulkSync␉␉␉␉␉␉= 38,␊ |
190 | ␉␉kTPBulkPacketHandlerData␉␉␉␉␉= 39,␊ |
191 | ␉␉kTPInterruptPacketHandlerData␉␉␉␉= 40␊ |
192 | ␉};␊ |
193 | ␉␊ |
194 | ␉// USB Device Tracepoints␉␉␉␊ |
195 | ␉// kUSBTDevice␊ |
196 | ␉enum␊ |
197 | ␉{␊ |
198 | ␉␉kTPDeviceInit␉␉␉␉␉␉␉␉= 1,␊ |
199 | ␉␉kTPDeviceMessage␉␉␉␉␉␉␉= 2,␊ |
200 | ␉␉kTPDeviceResetDevice␉␉␉␉␉␉= 3,␊ |
201 | ␉␉kTPDeviceGetFullConfigurationDescriptor␉␉= 4,␊ |
202 | ␉␉kTPDeviceGetDeviceDescriptor␉␉␉␉= 5,␊ |
203 | ␉␉kTPDeviceGetConfigDescriptor␉␉␉␉= 6,␊ |
204 | ␉␉kTPDeviceSetConfiguration␉␉␉␉␉= 7,␊ |
205 | ␉␉kTPDeviceSetFeature␉␉␉␉␉␉␉= 8,␊ |
206 | ␉␉kTPDeviceDeviceRequest␉␉␉␉␉␉= 9,␊ |
207 | ␉␉kTPDeviceGetConfiguration␉␉␉␉␉= 10,␊ |
208 | ␉␉kTPDeviceGetDeviceStatus␉␉␉␉␉= 11,␊ |
209 | ␉␉kTPDeviceSuspendDevice␉␉␉␉␉␉= 12,␊ |
210 | ␉␉kTPDeviceReEnumerateDevice␉␉␉␉␉= 13,␊ |
211 | ␉␉kTPDeviceConfigLock␉␉␉␉␉␉␉= 14␊ |
212 | ␉};␊ |
213 | ␉␊ |
214 | ␉// USB Pipe Tracepoints␉␉␉␊ |
215 | ␉// kUSBTPipe␊ |
216 | ␉enum␊ |
217 | ␉{␊ |
218 | ␉␉kTPPipeInitToEndpoint␉␉␉␉␉␉= 1,␊ |
219 | ␉␉kTPBulkPipeRead␉␉␉␉␉␉␉␉= 2,␊ |
220 | ␉␉kTPBulkPipeWrite␉␉␉␉␉␉␉= 3,␊ |
221 | ␉␉kTPIsocPipeRead␉␉␉␉␉␉␉␉= 4,␊ |
222 | ␉␉kTPIsocPipeWrite␉␉␉␉␉␉␉= 5,␊ |
223 | ␉␉kTPIsocPipeReadLL␉␉␉␉␉␉␉= 6,␊ |
224 | ␉␉kTPIsocPipeWriteLL␉␉␉␉␉␉␉= 7,␊ |
225 | ␉␉kTPIBulkReadTS␉␉␉␉␉␉␉␉= 8,␊ |
226 | ␉␉kTPPipeControlRequest␉␉␉␉␉␉= 9,␊ |
227 | ␉␉kTPPipeControlRequestMemDesc␉␉␉␉= 10␊ |
228 | ␉};␊ |
229 | ␉␊ |
230 | ␉␊ |
231 | ␉// USB kUSBTControllerUserClient Tracepoints␉␉␉␊ |
232 | ␉// kUSBTControllerUserClient␊ |
233 | ␉enum␊ |
234 | ␉{␊ |
235 | ␉␉kTPControllerUCStart␉␉␉␉␉= 1,␊ |
236 | ␉␉kTPControllerUCOpen␉␉␉␉␉␉= 2,␊ |
237 | ␉␉kTPControllerUCReadRegister␉␉␉␉= 3,␊ |
238 | ␉␉kTPControllerUCWriteRegister␉␉␉= 4␊ |
239 | ␉};␊ |
240 | ␉␊ |
241 | ␉// USB kUSBTDeviceUserClient Tracepoints␉␉␉␊ |
242 | ␉// kUSBTDeviceUserClient␊ |
243 | ␉enum␊ |
244 | ␉{␊ |
245 | ␉␉kTPDeviceUCDeviceRequestIn␉␉␉␉= 1,␊ |
246 | ␉␉kTPDeviceUCDeviceRequestOut␉␉␉␉= 2,␊ |
247 | ␉␉kTPDeviceUCChangeOutstandingIO␉␉␉= 3,␊ |
248 | ␉␉kTPDeviceUCGetGatedOutstandingIO␉␉= 4,␊ |
249 | ␉␉kTPDeviceUCReqComplete␉␉␉␉␉= 5␊ |
250 | ␉};␊ |
251 | ␉␊ |
252 | ␉// USB InterfaceUserClient Tracepoints␉␉␉␊ |
253 | ␉// kUSBTInterfaceUserClient␊ |
254 | ␉enum␊ |
255 | ␉{␊ |
256 | ␉␉kTPInterfaceUCReadPipe␉␉␉␉␉= 1,␊ |
257 | ␉␉kTPInterfaceUCWritePipe␉␉␉␉␉= 2,␊ |
258 | ␉␉kTPInterfaceUCControlRequestOut␉␉␉= 3,␊ |
259 | ␉␉kTPInterfaceUCControlRequestIn␉␉␉= 4,␊ |
260 | ␉␉kTPInterfaceUCDoIsochPipeAsync␉␉␉= 5,␊ |
261 | ␉␉kTPInterfaceUCLowLatencyPrepareBuffer␉= 6,␊ |
262 | ␉␉kTPInterfaceUCChangeOutstandingIO␉␉= 7,␊ |
263 | ␉␉kTPInterfaceUCReqComplete␉␉␉␉= 8,␊ |
264 | ␉␉kTPInterfaceUCIsoReqComplete␉␉␉= 9,␊ |
265 | ␉␉kTPInterfaceUCLLIsoReqComplete␉␉␉= 10␊ |
266 | ␉};␊ |
267 | ␉␊ |
268 | ␉␊ |
269 | ␉// USB HSHubUserClient Tracepoints␉␉␉␊ |
270 | ␉// kUSBTHSHubUserClient␊ |
271 | ␉enum␊ |
272 | ␉{␊ |
273 | ␉␉kTPHSHubUCInitWithTask␉␉␉␉␉= 1,␊ |
274 | ␉␉kTPHSHubUCStart␉␉␉␉␉␉␉= 2,␊ |
275 | ␉␉kTPHSHubUCClose␉␉␉␉␉␉␉= 3,␊ |
276 | ␉␉kTPHSHubUCGetNumberOfPorts␉␉␉␉= 4,␊ |
277 | ␉␉kTPHSHubUCGetLocationID␉␉␉␉␉= 5,␊ |
278 | ␉␉kTPHSHubUCPutPortIntoTestMode␉␉␉= 6,␊ |
279 | ␉␉kTPHSHubUCSupportsIndicators␉␉␉= 7,␊ |
280 | ␉␉kTPHSHubUCSetIndicatorForPort␉␉␉= 8,␊ |
281 | ␉␉kTPHSHubUCGetPortIndicatorControl␉␉= 9,␊ |
282 | ␉␉kTPHSHubUCSetIndicatorsToAutomatic␉␉= 10,␊ |
283 | ␉␉kTPHSHubUCGetPowerSwitchingMode␉␉␉= 11,␊ |
284 | ␉␉kTPHSHubUCGetPortPower␉␉␉␉␉= 12,␊ |
285 | ␉␉kTPHSHubUCSetPortPower␉␉␉␉␉= 13,␊ |
286 | ␉␉kTPHSHubUCDisablePwrMgmt␉␉␉␉= 14␊ |
287 | ␉};␊ |
288 | ␉␊ |
289 | ␉// USB Hub Tracepoints␉␉␉␊ |
290 | ␉// kUSBTHub␊ |
291 | ␉enum␊ |
292 | ␉{␊ |
293 | ␉␉kTPHubStart␉␉␉␉␉␉␉␉= 1,␊ |
294 | ␉␉kTPHubMessage␉␉␉␉␉␉␉= 2,␊ |
295 | ␉␉kTPHubWillTerminate␉␉␉␉␉␉= 3,␊ |
296 | ␉␉kTPHubPowerStateWillChangeTo␉␉␉= 4,␊ |
297 | ␉␉kTPHubPowerChangeDone␉␉␉␉␉= 5,␊ |
298 | ␉␉kTPHubConfigureHub␉␉␉␉␉␉= 6,␊ |
299 | ␉␉kTPHubCheckPowerPowerRequirements␉␉= 7,␊ |
300 | ␉␉kTPHubHubPowerChange␉␉␉␉␉= 8,␊ |
301 | ␉␉kTPHubAreAllPortsDisconnectedOrSuspended= 9,␊ |
302 | ␉␉kTPHubSuspendPorts␉␉␉␉␉␉= 10,␊ |
303 | ␉␉kTPHubSetPortFeature␉␉␉␉␉= 11,␊ |
304 | ␉␉kTPHubClearPortFeature␉␉␉␉␉= 12,␊ |
305 | ␉␉kTPHubDoPortAction␉␉␉␉␉␉= 13,␊ |
306 | ␉␉kTPHubInterruptReadHandler␉␉␉␉= 14,␊ |
307 | ␉␉kTPHubResetPortZero␉␉␉␉␉␉= 15,␊ |
308 | ␉␉kTPHubProcessStateChanged␉␉␉␉= 16,␊ |
309 | ␉␉kTPHubRearmInterruptRead␉␉␉␉= 17,␊ |
310 | ␉␉kTPHubDoDeviceRequest␉␉␉␉␉= 18,␊ |
311 | ␉␉kTPHubWaitForPortResumes␉␉␉␉= 19,␊ |
312 | ␉␉kTPHubResetMyPort␉␉␉␉␉␉= 20,␊ |
313 | ␉␉kTPHubDecrementOutstandingIO␉␉␉= 21,␊ |
314 | ␉␉kTPHubChangeOutstandingIO␉␉␉␉= 22, ␊ |
315 | ␉␉kTPHubChangeRaisedPowerState␉␉␉= 23,␊ |
316 | ␉␉kTPHubChangeOutstandingResumes␉␉␉= 24,␊ |
317 | ␉␉kTPHubEnterTestMode␉␉␉␉␉␉= 25,␊ |
318 | ␉␉kTPHubLeaveTestMode␉␉␉␉␉␉= 26,␊ |
319 | ␉␉kTPHubPutPortIntoTestMode␉␉␉␉= 27,␊ |
320 | ␉␉kTPHubGetPortIndicatorControl␉␉␉= 28,␊ |
321 | ␉␉kTPHubSetIndicatorsToAutomatic␉␉␉= 29,␊ |
322 | ␉␉kTPHubGetPortPower␉␉␉␉␉␉= 30,␊ |
323 | ␉␉kTPHubEnsureUsability␉␉␉␉␉= 31,␊ |
324 | ␉␉kTPHubCheckPowerRequirements␉␉␉= 32,␊ |
325 | ␉␉kTPHubWaitForPowerOn␉␉␉␉␉= 33,␊ |
326 | ␉␉kTPHubDoPortActionLock␉␉␉␉␉= 34,␊ |
327 | ␉␉kTPHubCheckForDeadDevice␉␉␉␉= 35␊ |
328 | ␉};␊ |
329 | ␉␊ |
330 | ␉// USB HubPort Tracepoints␉␉␉␊ |
331 | ␉// kUSBTHubPort␊ |
332 | ␉enum␊ |
333 | ␉{␊ |
334 | ␉␉kTPHubPortStop␉␉␉␉␉␉␉␉= 1,␊ |
335 | ␉␉kTPHubPortAddDevice␉␉␉␉␉␉␉= 2,␊ |
336 | ␉␉kTPHubPortSuspendPort␉␉␉␉␉␉= 3,␊ |
337 | ␉␉kTPHubPortFatalError␉␉␉␉␉␉= 4,␊ |
338 | ␉␉kTPHubPortAddDeviceResetChangeHandler␉␉= 5,␊ |
339 | ␉␉kTPHubPortHandleResetPortHandler␉␉␉= 6,␊ |
340 | ␉␉kTPHubPortDefaultOverCrntChangeHandler␉␉= 7,␊ |
341 | ␉␉kTPHubPortDefaultConnectionChangeHandler␉= 8,␊ |
342 | ␉␉kTPHubPortReleaseDevZeroLock␉␉␉␉= 9,␊ |
343 | ␉␉kTPHubPortDetachDevice␉␉␉␉␉␉= 10,␊ |
344 | ␉␉kTPHubPortGetDevZeroDescriptorWithRetries␉= 11,␊ |
345 | ␉␉kTPHubPortDisplayOverCurrentNotice␉␉␉= 12,␊ |
346 | ␉␉kTPHubPortWakeSuspendCommand␉␉␉␉= 13,␊ |
347 | ␉␉kTPHubPortWaitForSuspendCommand␉␉␉␉= 14,␊ |
348 | ␉␉kTPHubPortEnablePowerAfterOvercurrent␉␉= 15␊ |
349 | ␉};␊ |
350 | ␉␊ |
351 | ␉// USB HID Tracepoints␉␉␉␊ |
352 | ␉// kUSBTHID␊ |
353 | ␉enum␊ |
354 | ␉{␊ |
355 | ␉␉kTPHIDStart␉␉␉␉␉␉␉= 1,␊ |
356 | ␉␉kTPHIDpowerStateWillChangeTo␉␉= 2,␊ |
357 | ␉␉kTPHIDsetPowerState␉␉␉␉␉= 3,␊ |
358 | ␉␉kTPHIDpowerStateDidChangeTo␉␉␉= 4,␊ |
359 | ␉␉kTPHIDpowerChangeDone␉␉␉␉= 5,␊ |
360 | ␉␉kTPHIDhandleStart␉␉␉␉␉= 6,␊ |
361 | ␉␉kTPHIDClearFeatureEndpointHalt␉␉= 7,␊ |
362 | ␉␉kTPHIDHandleReport␉␉␉␉␉= 8,␊ |
363 | ␉␉kTPHIDSuspendPort␉␉␉␉␉= 9,␊ |
364 | ␉␉kTPHIDAbortAndSuspend␉␉␉␉= 10,␊ |
365 | ␉␉kTPHIDClaimPendingRead␉␉␉␉= 11,␊ |
366 | ␉␉kTPHIDChangeOutstandingIO␉␉␉= 12,␊ |
367 | ␉␉kTPHIDRearmInterruptRead␉␉␉= 13,␊ |
368 | ␉␉kTPHIDInitializeUSBHIDPowerManagement = 14,␊ |
369 | ␉␉kTPHIDInterruptRead␉␉␉␉␉= 15,␊ |
370 | ␉␉kTPHIDInterruptReadError␉␉␉= 16,␊ |
371 | ␉␉kTPHIDCheckForDeadDevice␉␉␉= 17␊ |
372 | ␉};␊ |
373 | ␉␊ |
374 | ␉// USB Enumeration Tracepoints␉␉␉␊ |
375 | ␉// kUSBTEnumeration␊ |
376 | ␉enum␊ |
377 | ␉{␊ |
378 | ␉␉kTPEnumerationProcessStatusChanged␉= 1,␊ |
379 | ␉␉kTPEnumerationInitialGetPortStatus␉= 2,␊ |
380 | ␉␉kTPEnumerationCallAddDevice␉␉␉= 3,␊ |
381 | ␉␉kTPEnumerationAddDevice␉␉␉␉= 4,␊ |
382 | ␉␉kTPEnumerationResetPort␉␉␉␉= 5,␊ |
383 | ␉␉kTPEnumerationAddDeviceResetChangeHandler␉= 6,␊ |
384 | ␉␉kTPEnumerationRegisterService␉␉= 7,␊ |
385 | ␉␉kTPEnumerationLowSpeedDevice␉␉= 8,␊ |
386 | ␉␉kTPEnumerationFullSpeedDevice␉␉= 9␊ |
387 | ␉␉␊ |
388 | ␉};␊ |
389 | ␉␊ |
390 | ␉// USB UHCI Tracepoints␉␉␉␊ |
391 | ␉// kUSBTUHCI␊ |
392 | ␉enum␊ |
393 | ␉{␊ |
394 | ␉␉kTPUHCIMessage␉␉␉␉␉␉= 1,␊ |
395 | ␉␉kTPUHCIGetFrameNumber␉␉␉␉= 2,␊ |
396 | ␉␉kTPUHCIScavengeIsocTransactions␉␉= 3,␊ |
397 | ␉␉kTPUHCIScavengeQueueHeads␉␉␉= 4,␊ |
398 | ␉␉kTPUHCIAllocateQH␉␉␉␉␉= 5,␊ |
399 | ␉␉kTPUHCIRootHubStatusChange␉␉␉= 6,␊ |
400 | ␉␉kTPUHCIRHSuspendPort␉␉␉␉= 7,␊ |
401 | ␉␉kTPUHCIRHHoldPortReset␉␉␉␉= 8,␊ |
402 | ␉␉kTPUHCIRHResumePortCompletion␉␉= 9,␊ |
403 | ␉␉kTPUHCISuspendController␉␉␉= 10,␊ |
404 | ␉␉KTPUHCIResumeController␉␉␉␉= 11,␊ |
405 | ␉␉KTPUHCIResetControllerState␉␉␉= 12,␊ |
406 | ␉␉KTPUHCIRestartControllerFromReset␉= 13,␊ |
407 | ␉␉KTPUHCIEnableInterrupts␉␉␉␉= 14,␊ |
408 | ␉␉KTPUHCIDozeController␉␉␉␉= 15,␊ |
409 | ␉␉KTPUHCIWakeFromDoze␉␉␉␉␉= 16,␊ |
410 | ␉␉KTPUHCIPowerState␉␉␉␉␉= 17,␊ |
411 | ␉};␊ |
412 | ␊ |
413 | ␉␊ |
414 | ␉// USB UHCI Tracepoints␉␉␉␊ |
415 | ␉// kUSBTUHCIUIM␊ |
416 | ␉enum␊ |
417 | ␉{␊ |
418 | ␉␉kTPUHCIUIMCreateControlEndpoint␉␉= 1,␊ |
419 | ␉␉kTPUHCIUIMCreateBulkEndpoint␉␉= 2,␊ |
420 | ␉␉kTPUHCIUIMCreateInterruptEndpoint␉= 3,␊ |
421 | ␉␉kTPUHCIUIMCreateIsochEndpoint␉␉= 4,␊ |
422 | ␉␉kTPUHCIUIMCreateIsochTransfer␉␉= 5,␊ |
423 | ␉␉kTPUHCIUIMDeleteEndpoint␉␉␉= 6,␊ |
424 | ␉␉kTPUHCIUIMUnlinkQueueHead␉␉␉= 7,␊ |
425 | ␉␉kTPUHCIUIMCheckForTimeouts␉␉␉= 8,␊ |
426 | ␉␉kTPUHCIUIMReturnOneTransaction␉␉= 9,␊ |
427 | ␉␉kTPUHCIUIMAllocateTDChain␉␉␉= 10,␊ |
428 | ␉␉kTPUHCIUIMAddIsochFramesToSchedule␉= 11,␊ |
429 | ␉␉kTPUHCIUIMAbortIsochEP␉␉␉␉= 12,␊ |
430 | ␉␉kTPUHCIUIMCreateInterruptTransfer␉= 13,␊ |
431 | ␉␉kTPUHCIUIMHandleEndpointAbort␉␉= 14␊ |
432 | ␉};␊ |
433 | ␉␊ |
434 | ␉// USB UHCI Interrupt Tracepoints␉␉␉␊ |
435 | ␉// kUSBTUHCIInterrupts␊ |
436 | ␉enum␊ |
437 | ␉{␊ |
438 | ␉␉kTPUHCIInterruptsGetFrameNumberInternal␉= 1,␊ |
439 | ␉␉kTPUHCIInterruptsFilterInterrupt␉␉= 2,␊ |
440 | ␉␉kTPUHCIInterruptsHandleInterrupt␉␉= 3,␊ |
441 | ␉␉kTPUHCIUpdateFrameList␉␉␉␉␉= 4␊ |
442 | ␉};␊ |
443 | ␉␊ |
444 | ␉// USB EHCI Tracepoints␉␉␉␊ |
445 | ␉// kUSBTEHCI␊ |
446 | ␉enum␊ |
447 | ␉{␊ |
448 | ␉␉kTPEHCIRootHubResetPort␉␉␉␉␉= 1,␊ |
449 | ␉␉kTPEHCIRootHubPortEnable␉␉␉␉= 2,␊ |
450 | ␉␉kTPEHCIRootHubPortSuspend␉␉␉␉= 3,␊ |
451 | ␉␉// kTPEHCIRootHubStatusChange␉␉␉= 4,␊ |
452 | ␉␉kTPEHCIRHResumePortCompletion␉␉␉= 5,␊ |
453 | ␉␉kTPEHCIUIMFinalize␉␉␉␉␉␉= 6,␊ |
454 | ␉␉kTPEHCIGetFrameNumber32␉␉␉␉␉= 7, ␊ |
455 | ␉␉kTPEHCIGetFrameNumber␉␉␉␉␉= 8,␊ |
456 | ␉␉kTPEHCIAllocateQH␉␉␉␉␉␉= 9,␊ |
457 | ␉␉kTPEHCIEnableAsyncSchedule␉␉␉␉= 10,␊ |
458 | ␉␉kTPEHCIDisableAsyncSchedule␉␉␉␉= 11,␊ |
459 | ␉␉kTPEHCIEnablePeriodicSchedule␉␉␉= 12,␊ |
460 | ␉␉kTPEHCIDisablePeriodicSchedule␉␉␉= 13,␊ |
461 | ␉␉kTPEHCIMessage␉␉␉␉␉␉␉= 14,␊ |
462 | ␉␉kTPEHCIMakeEmptyEndPoint␉␉␉␉= 15,␊ |
463 | ␉␉kTPEHCIAllocateTDs␉␉␉␉␉␉= 16,␊ |
464 | ␉␉kTPEHCIMungeECHIStatus␉␉␉␉␉= 17,␊ |
465 | ␉␉kTPEHCIScavengeIsocTransactions␉␉␉= 18,␊ |
466 | ␉␉kTPEHCIScavengeAnEndpointQueue␉␉␉= 19,␊ |
467 | ␉␉kTPEHCIScavengeCompletedTransactions␉= 20,␊ |
468 | ␉␉kTPEHCICreateBulkEndpoint␉␉␉␉= 21,␊ |
469 | ␉␉kTPEHCICreateBulkTransfer␉␉␉␉= 22,␊ |
470 | ␊ |
471 | ␉␉kTPEHCICreateInterruptEndpoint␉␉␉= 24,␊ |
472 | ␉␉kTPEHCICreateIsochEndpoint␉␉␉␉= 25,␊ |
473 | ␉␉kTPEHCIAbortIsochEP␉␉␉␉␉␉= 26,␊ |
474 | ␉␉kTPEHCIHandleEndpointAbort␉␉␉␉= 27,␊ |
475 | ␉␉kTPEHCICreateInterruptTransfer␉␉␉= 28,␊ |
476 | ␉␉kTPEHCIUnlinkAsyncEndpoint␉␉␉␉= 29,␊ |
477 | ␉␉kTPEHCIDeleteEndpoint␉␉␉␉␉= 30,␊ |
478 | ␉␉kTPEHCICreateHSIsochTransfer␉␉␉= 31,␊ |
479 | ␉␉kTPEHCICreateSplitIsochTransfer␉␉␉= 32,␊ |
480 | ␉␉kTPEHCICreateIsochTransfer␉␉␉␉= 33,␊ |
481 | ␉␉kTPEHCIAddIsocFramesToSchedule␉␉␉= 34,␊ |
482 | ␉␉kTPEHCIReturnOneTransaction␉␉␉␉= 35,␊ |
483 | ␉␉kTPEHCICheckEDListForTimeouts␉␉␉= 36,␊ |
484 | ␉␉kTPEHCISuspendUSBBus␉␉␉␉␉= 37,␊ |
485 | ␉␉kTPEHCICheckForTimeouts␉␉␉␉␉= 38,␊ |
486 | ␉␉kTPEHCIResumeUSBBus␉␉␉␉␉␉= 39,␊ |
487 | ␉␉kTPEHCIRestartUSBBus␉␉␉␉␉= 40,␊ |
488 | ␉␉kTPEHCIResetControllerState␉␉␉␉= 41,␊ |
489 | ␉␉kTPEHCIDozeController␉␉␉␉␉= 42,␊ |
490 | ␉␉kTPEHCIWakeControllerFromDoze␉␉␉= 43,␊ |
491 | ␉␉kTPEHCIEnableInterrupts␉␉␉␉␉= 44,␊ |
492 | ␉␉kTPEHCIPowerState␉␉␉␉␉␉= 45,␊ |
493 | ␉␉kTPEHCIStopUSBBus␉␉␉␉␉␉= 46,␊ |
494 | ␉␉kTPEHCIRestartControllerFromReset␉␉= 47␊ |
495 | ␉};␊ |
496 | ␊ |
497 | ␉// USB EHCI Interrupt Tracepoints␉␉␉␊ |
498 | ␉// kUSBTEHCIInterrupts␊ |
499 | ␉enum␊ |
500 | ␉{␊ |
501 | ␉␉kTPEHCIInterruptsPollInterrupts␉␉␉= 1,␊ |
502 | ␉␉kTPEHCIInterruptsPrimaryInterruptFilter␉= 2,␊ |
503 | ␉␉kTPEHCIUpdateFrameList␉␉␉␉␉= 3,␊ |
504 | ␉};␊ |
505 | ␉␊ |
506 | ␉␊ |
507 | ␉// USB EHCI Interrupt Tracepoints␉␉␉␊ |
508 | ␉// kUSBTEHCIHubInfo␊ |
509 | ␉enum␊ |
510 | ␉{␊ |
511 | ␉␉kTPEHCIAvailableIsochBandwidth␉␉␉= 1,␊ |
512 | ␉␉kTPEHCIAllocateIsochBandwidth␉␉␉= 2␊ |
513 | ␉};␊ |
514 | ␉␊ |
515 | ␉// USB OHCI Tracepoints␉␉␉␊ |
516 | ␉// kUSBTOHCI␊ |
517 | ␉enum␊ |
518 | ␉{␊ |
519 | ␉␉kTPOHCIInitialize␉␉␉␉␉␉= 1,␊ |
520 | ␉␉kTPOHCICreateGeneralTransfer␉␉␉= 2,␊ |
521 | ␉␉kTPOHCIAbortEndpoint␉␉␉␉␉= 3,␊ |
522 | ␉␉kTPOHCIDeleteEndpoint␉␉␉␉␉= 4,␊ |
523 | ␉␉kTPOHCIEndpointStall␉␉␉␉␉= 5,␊ |
524 | ␉␉kTPOHCICreateIsochTransfer␉␉␉␉= 6,␊ |
525 | ␉␉kTPOHCIAllocateTD␉␉␉␉␉␉= 7,␊ |
526 | ␉␉kTPOHCIAllocateITD␉␉␉␉␉␉= 8,␊ |
527 | ␉␉kTPOHCIAllocateED␉␉␉␉␉␉= 9,␊ |
528 | ␉␉kTPOHCIProcessCompletedITD␉␉␉␉= 10,␊ |
529 | ␉␉kTPOHCIReturnTransactions␉␉␉␉= 11,␊ |
530 | ␉␉kTPOHCIMessage␉␉␉␉␉␉␉= 12,␊ |
531 | ␉␉KTPOHCISuspendUSBBus␉␉␉␉␉= 13,␊ |
532 | ␉␉KTPOHCIResumeUSBBus␉␉␉␉␉␉= 14,␊ |
533 | ␉␉KTPOHCIResetControllerState␉␉␉␉= 15,␊ |
534 | ␉␉KTPOHCIRestartControllerFromReset␉␉= 16,␊ |
535 | ␉␉KTPOHCIEnableInterrupts␉␉␉␉␉= 17,␊ |
536 | ␉␉KTPOHCIDozeController␉␉␉␉␉= 18,␊ |
537 | ␉␉KTPOHCIWakeControllerFromDoze␉␉␉= 19,␊ |
538 | ␉␉KTPOHCIPowerState␉␉␉␉␉␉= 20,␊ |
539 | ␉␉kTPOHCIDoneQueueCompletion␉␉␉␉= 21␊ |
540 | ␉};␊ |
541 | ␉␉␊ |
542 | ␉// USB OHCI Interrupt Tracepoints␉␉␉␊ |
543 | ␉// kUSBTOHCIInterrupts␊ |
544 | ␉enum␊ |
545 | ␉{␊ |
546 | ␉␉kTPOHCIInterruptsPollInterrupts␉␉␉= 1,␊ |
547 | ␉␉kTPOHCIInterruptsPrimaryInterruptFilter␉= 2,␊ |
548 | ␉␉kTPOHCIUpdateFrameList␉␉␉␉␉= 3␊ |
549 | ␉};␊ |
550 | ␉␊ |
551 | ␊ |
552 | ␉// USB HubPolicyMaker Tracepoints␉␉␉␊ |
553 | ␉// kUSBTHubPolicyMaker␊ |
554 | ␉enum␊ |
555 | ␉{␊ |
556 | ␉␉kTPSetPowerState␉␉␉␉␉␉ = 1␊ |
557 | ␉};␊ |
558 | ␉␊ |
559 | ␉// USB CompositeDriver Tracepoints␉␉␉␊ |
560 | ␉// kUSBTCompositeDriver␊ |
561 | ␉enum␊ |
562 | ␉{␊ |
563 | ␉␉kTPCompositeDriverConfigureDevice␉␉ = 1␊ |
564 | ␉};␊ |
565 | ␊ |
566 | ␉// USB USB OutstandingIO Tracepoints␉␉␉␊ |
567 | ␉// kUSBTOutstandingIO␊ |
568 | ␉enum␊ |
569 | ␉{␊ |
570 | ␉␉kTPDeviceUCDecrement␉= 1,␊ |
571 | ␉␉kTPDeviceUCIncrement␉= 2,␊ |
572 | ␉␉kTPInterfaceUCDecrement␉= 3,␊ |
573 | ␉␉kTPInterfaceUCIncrement␉= 4,␊ |
574 | ␉␉kTPHubDecrement␉␉␉= 5,␊ |
575 | ␉␉kTPHubIncrement␉␉␉= 6,␊ |
576 | ␉␉kTPHIDDecrement␉␉␉= 7,␊ |
577 | ␉␉kTPHIDIncrement␉␉␉= 8␊ |
578 | ␉};␊ |
579 | ␉␊ |
580 | ␉// USB Audio driver Tracepoints␉␉␉␊ |
581 | ␉// kUSBAudio␊ |
582 | ␉enum␊ |
583 | ␉{␊ |
584 | ␉␉kTPAudioDriverRead␉␉␉␉␉␉= 1,␊ |
585 | ␉␉kTPAudioDriverCoalesceInputSamples␉␉= 2,␊ |
586 | ␉␉kTPAudioDriverCoalesceError␉␉␉␉= 3,␊ |
587 | ␉␉kTPAudioDriverCoalesce␉␉␉␉␉= 4,␊ |
588 | ␉␉kTPAudioDriverReadHandler␉␉␉␉= 5,␊ |
589 | ␉␉kTPAudioDriverCoalesceError2␉␉␉= 6,␊ |
590 | ␉␉kTPAudioDriverConvertInputSamples␉␉= 7␊ |
591 | ␉};␊ |
592 | ␉␊ |
593 | ␉// Tracepoint macros.␊ |
594 | #define USB_TRACE(USBClass, code, funcQualifier)␉( ( ( DBG_IOKIT & 0xFF ) << 24) | ( ( DBG_IOUSB & 0xFF ) << 16 ) | ( ( USBClass & 0x3F ) << 10 ) | ( ( code & 0xFF ) << 2 ) | ( funcQualifier & 0x3 ) )␊ |
595 | ␊ |
596 | #define kTPAllUSB␉␉␉␉␉␉␉␉USB_TRACE ( 0, 0, 0 )␊ |
597 | ␊ |
598 | #define USB_CONTROLLER_TRACE(code)␉␉␉␉USB_TRACE( kUSBTController, code, DBG_FUNC_NONE )␊ |
599 | #define USB_CONTROLLER_UC_TRACE(code)␉␉␉USB_TRACE( kUSBTControllerUserClient, code, DBG_FUNC_NONE )␊ |
600 | #define USB_DEVICE_TRACE(code)␉␉␉␉␉USB_TRACE( kUSBTDevice, code, DBG_FUNC_NONE )␊ |
601 | #define USB_DEVICE_UC_TRACE(code)␉␉␉␉USB_TRACE( kUSBTDeviceUserClient, code, DBG_FUNC_NONE )␊ |
602 | ␊ |
603 | #define USB_HUB_TRACE(code)␉␉␉␉␉␉USB_TRACE( kUSBTHub, code, DBG_FUNC_NONE )␊ |
604 | #define USB_HUB_PORT_TRACE(code)␉␉␉␉USB_TRACE( kUSBTHubPort, code, DBG_FUNC_NONE )␊ |
605 | #define USB_HUB_UC_TRACE(code)␉␉␉␉␉USB_TRACE( kUSBTHSHubUserClient, code, DBG_FUNC_NONE )␊ |
606 | #define USB_HID_TRACE(code)␉␉␉␉␉␉USB_TRACE( kUSBTHID, code, DBG_FUNC_NONE )␊ |
607 | #define USB_PIPE_TRACE(code)␉␉␉␉␉USB_TRACE( kUSBTPipe, code, DBG_FUNC_NONE )␊ |
608 | ␊ |
609 | #define USB_INTERFACE_UC_TRACE(code)␉␉␉USB_TRACE( kUSBTInterfaceUserClient, code, DBG_FUNC_NONE )␊ |
610 | ␊ |
611 | #define USB_ENUMERATION_TRACE(code)␉␉␉␉USB_TRACE( kUSBTEnumeration, code, DBG_FUNC_NONE )␊ |
612 | ␊ |
613 | #define USB_UHCI_TRACE(code)␉␉␉␉␉USB_TRACE( kUSBTUHCI, code, DBG_FUNC_NONE )␊ |
614 | #define USB_UHCI_UIM_TRACE(code)␉␉␉␉USB_TRACE( kUSBTUHCIUIM, code, DBG_FUNC_NONE )␊ |
615 | #define USB_UHCI_INTERRUPTS_TRACE(code)␉␉␉USB_TRACE( kUSBTUHCIInterrupts, code, DBG_FUNC_NONE )␊ |
616 | ␊ |
617 | #define USB_OHCI_TRACE(code)␉␉␉␉␉USB_TRACE( kUSBTOHCI, code, DBG_FUNC_NONE )␊ |
618 | #define USB_OHCI_INTERRUPTS_TRACE(code)␉␉␉USB_TRACE( kUSBTOHCIInterrupts, code, DBG_FUNC_NONE )␊ |
619 | ␊ |
620 | #define USB_EHCI_TRACE(code)␉␉␉␉␉USB_TRACE( kUSBTEHCI, code, DBG_FUNC_NONE )␊ |
621 | #define USB_EHCI_HUBINFO_TRACE(code)␉␉␉USB_TRACE( kUSBTEHCIHubInfo, code, DBG_FUNC_NONE )␊ |
622 | #define USB_EHCI_INTERRUPTS_TRACE(code)␉␉␉USB_TRACE( kUSBTEHCIInterrupts, code, DBG_FUNC_NONE )␊ |
623 | ␊ |
624 | #define USB_HUB_POLICYMAKER_TRACE(code)␉␉␉USB_TRACE( kUSBTHubPolicyMaker, code, DBG_FUNC_NONE )␊ |
625 | #define USB_COMPOSITE_DRIVER_TRACE(code)␉␉USB_TRACE( kUSBTCompositeDriver, code, DBG_FUNC_NONE )␊ |
626 | ␊ |
627 | #define USB_OUTSTANDING_IO_TRACE(code)␉␉␉USB_TRACE( kUSBTOutstandingIO, code, DBG_FUNC_NONE )␉␊ |
628 | ␉␊ |
629 | #define USB_AUDIO_DRIVER_TRACE(code)␉␉␉USB_TRACE( kUSBAudio, code, DBG_FUNC_NONE )␉␊ |
630 | ␊ |
631 | #ifdef KERNEL␊ |
632 | ␉␊ |
633 | #include <IOKit/IOTimeStamp.h>␊ |
634 | ␉␉␊ |
635 | #define USBTrace(USBClass, code, a, b, c, d) {␉␉␉␉␉␉␉␉␉␉␉␉␉␉\␊ |
636 | ␉␉␉if (gUSBStackDebugFlags & kUSBEnableTracePointsMask) {␉␉␉␉␉␉␉␉␉\␊ |
637 | ␉␉␉␉IOTimeStampConstant( USB_TRACE(USBClass, code, DBG_FUNC_NONE), a, b, c, d );␉␉\␊ |
638 | ␉␉␉}␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉\␊ |
639 | ␉␉}␊ |
640 | ␊ |
641 | #define USBTrace_Start(USBClass, code, a, b, c, d) {␉␉␉␉␉␉␉␉␉␉␉␉\␊ |
642 | ␉␉␉if (gUSBStackDebugFlags & kUSBEnableTracePointsMask) {␉␉␉␉␉␉␉␉␉\␊ |
643 | ␉␉␉␉IOTimeStampConstant( USB_TRACE(USBClass, code, DBG_FUNC_START), a, b, c, d );␉␉\␊ |
644 | ␉␉␉}␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉\␊ |
645 | ␉␉}␊ |
646 | ␊ |
647 | #define USBTrace_End(USBClass, code, a, b, c, d) {␉␉␉␉␉␉␉␉␉␉␉␉␉␉\␊ |
648 | ␉␉␉if (gUSBStackDebugFlags & kUSBEnableTracePointsMask) {␉␉␉␉␉␉␉␉␉\␊ |
649 | ␉␉␉␉IOTimeStampConstant( USB_TRACE(USBClass, code, DBG_FUNC_END), a, b, c, d );␉␉␉\␊ |
650 | ␉␉␉}␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉␉\␊ |
651 | ␉␉}␊ |
652 | ␊ |
653 | #endif␊ |
654 | ␉␊ |
655 | ␉␊ |
656 | ␉␊ |
657 | #ifdef __cplusplus␊ |
658 | }␊ |
659 | #endif␊ |
660 | ␊ |
661 | ␊ |
662 | #endif␉/* __IOKIT_IO_USB_FAMILY_TRACEPOINTS__ */␊ |
663 |