/*
- * Copyright (c) 1998-2000 Apple Computer, Inc. All rights reserved.
+ * Copyright (c) 1998-2010 Apple Inc. All rights reserved.
*
* @APPLE_OSREFERENCE_LICENSE_HEADER_START@
*
*
* @APPLE_OSREFERENCE_LICENSE_HEADER_END@
*/
-/*
- * Copyright (c) 1998 Apple Computer, Inc. All rights reserved.
- *
- * HISTORY
- *
- */
-
#ifndef _IOKIT_IOKITDEBUG_H
#define _IOKIT_IOKITDEBUG_H
kIOLogPower = 0x00000080ULL,
kIOLogMapping = 0x00000100ULL,
kIOLogCatalogue = 0x00000200ULL,
- kIOLogTracePower = 0x00000400ULL,
+ kIOLogTracePower = 0x00000400ULL, // Obsolete: Use iotrace=0x00000400ULL to enable now
kIOLogDebugPower = 0x00000800ULL,
kIOLogServiceTree = 0x00001000ULL,
kIOLogDTree = 0x00002000ULL,
kOSLogRegistryMods = 0x00010000ULL, // Log attempts to modify registry collections
kIOLogPMRootDomain = 0x00020000ULL,
kOSRegistryModsMode = 0x00040000ULL, // Change default registry modification handling - panic vs. log
- kIOTraceIOService = 0x00080000ULL,
+// kIOTraceIOService = 0x00080000ULL, // Obsolete: Use iotrace=0x00080000ULL to enable now
kIOLogHibernate = 0x00100000ULL,
+ kIOLogDriverPower1 = 0x01000000ULL,
+ kIOLogDriverPower2 = 0x02000000ULL,
+ kIOStatistics = 0x04000000ULL,
// debug aids - change behaviour
kIONoFreeObjects = 0x00100000ULL,
_kIODebugTopFlag = 0x8000000000000000ULL // force enum to be 64 bits
};
+enum {
+ kIOTraceInterrupts = 0x00000001ULL, // Trace primary interrupts
+ kIOTraceWorkLoops = 0x00000002ULL, // Trace workloop activity
+ kIOTraceEventSources = 0x00000004ULL, // Trace non-passive event sources
+ kIOTraceIntEventSource = 0x00000008ULL, // Trace IOIES and IOFIES sources
+ kIOTraceCommandGates = 0x00000010ULL, // Trace command gate activity
+ kIOTraceTimers = 0x00000008ULL, // Trace timer event source activity
+
+ kIOTracePowerMgmt = 0x00000400ULL, // Trace power management changes
+
+ kIOTraceIOService = 0x00080000ULL, // registerService/termination
+
+ kIOTraceCompatBootArgs = kIOTraceIOService | kIOTracePowerMgmt
+};
+
extern SInt64 gIOKitDebug;
+extern SInt64 gIOKitTrace;
#ifdef __cplusplus
extern "C" {
#endif
-struct IORegistryPlane;
-extern void IOPrintPlane( const struct IORegistryPlane * plane );
+#ifdef __cplusplus
+class IORegistryPlane;
+#endif
+
+extern void IOPrintPlane(
+#ifdef __cplusplus
+ const IORegistryPlane * plane
+#else
+ const struct IORegistryPlane * plane
+#endif
+ );
#ifndef _OSCPPDEBUG_H
extern void OSPrintMemory( void );
#endif