]> git.saurik.com Git - apple/xnu.git/blobdiff - iokit/Kernel/IOStartIOKit.cpp
xnu-1504.15.3.tar.gz
[apple/xnu.git] / iokit / Kernel / IOStartIOKit.cpp
index b621622fa938e72cec9b9b9f209fd47b9e1aa391..7b70541d6486089b04e756e859add89749f4cc52 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1998-2008 Apple Inc. All rights reserved.
+ * Copyright (c) 1998-2011 Apple Inc. All rights reserved.
  *
  * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  * 
  * 
  * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  */
-/*
- * Copyright (c) 1998,1999 Apple Inc.  All rights reserved. 
- *
- * HISTORY
- *
- */
 
 #include <libkern/c++/OSUnserialize.h>
 #include <libkern/c++/OSKext.h>
@@ -128,14 +122,24 @@ void StartIOKit( void * p1, void * p2, void * p3, void * p4 )
 {
     IOPlatformExpertDevice *   rootNub;
     int                                debugFlags;
+       uint32_t                intThreshold;
 
     if( PE_parse_boot_argn( "io", &debugFlags, sizeof (debugFlags) ))
        gIOKitDebug = debugFlags;
 
+    if( PE_parse_boot_argn( "iotrace", &debugFlags, sizeof (debugFlags) ))
+               gIOKitTrace = debugFlags;
+       
+       // Compat for boot-args
+       gIOKitTrace |= (gIOKitDebug & kIOTraceCompatBootArgs);
+
+    if( PE_parse_boot_argn( "iointthreshold", &intThreshold, sizeof (intThreshold) ))
+               gIOInterruptThresholdNS = intThreshold * 1000;
+       
     // Check for the log synchronous bit set in io
     if (gIOKitDebug & kIOLogSynchronous)
         debug_mode = true;
-
+       
     //
     // Have to start IOKit environment before we attempt to start
     // the C++ runtime environment.  At some stage we have to clean up