#define kIOConsoleSessionUIDKey "kCGSSessionUserIDKey" /* value is OSNumber */
#define kIOConsoleSessionConsoleSetKey "kCGSSessionConsoleSetKey" /* value is OSNumber */
#define kIOConsoleSessionOnConsoleKey "kCGSSessionOnConsoleKey" /* value is OSBoolean */
+#define kIOConsoleSessionLoginDoneKey "kCGSessionLoginDoneKey" /* value is OSBoolean */
#define kIOConsoleSessionSecureInputPIDKey "kCGSSessionSecureInputPID" /* value is OSNumber */
#define kIOConsoleSessionScreenLockedTimeKey "CGSSessionScreenLockedTime" /* value is OSNumber, secs - 1970 */
// IOResources property
#define kIOConsoleUsersSeedKey "IOConsoleUsersSeed" /* value is OSNumber */
+// IODeviceTree:chosen properties
+#define kIOProgressBackbufferKey "IOProgressBackbuffer" /* value is OSData */
+#define kIOProgressColorThemeKey "IOProgressColorTheme" /* value is OSNumber */
+
// interest type
#define kIOConsoleSecurityInterest "IOConsoleSecurityInterest"
#define kIOClientPrivilegeSecureConsoleProcess "secureprocess"
#define kIOClientPrivilegeConsoleSession "consolesession"
+
+// Embedded still throttles NVRAM commits via kIONVRAMSyncNowPropertyKey, but
+// some clients still need a stricter NVRAM commit contract. Please use this with
+// care.
+#define kIONVRAMForceSyncNowPropertyKey "IONVRAM-FORCESYNCNOW-PROPERTY"
+
+
// clientHasPrivilege security token for kIOClientPrivilegeSecureConsoleProcess
typedef struct _IOUCProcessToken {
void * token;
#define kIOKernelHasSafeSleep 1
-enum { kIOPrepareToPhys32 = 0x04 };
-
-#define kIODirectionPrepareToPhys32 ((IODirection) kIOPrepareToPhys32)
-
-#define kIOPlatformSleepActionKey "IOPlatformSleepAction" /* value is OSNumber (priority) */
-#define kIOPlatformWakeActionKey "IOPlatformWakeAction" /* value is OSNumber (priority) */
-#define kIOPlatformQuiesceActionKey "IOPlatformQuiesceAction" /* value is OSNumber (priority) */
-#define kIOPlatformActiveActionKey "IOPlatformActiveAction" /* value is OSNumber (priority) */
+#define kIOPlatformSleepActionKey "IOPlatformSleepAction" /* value is OSNumber (priority) */
+#define kIOPlatformWakeActionKey "IOPlatformWakeAction" /* value is OSNumber (priority) */
+#define kIOPlatformQuiesceActionKey "IOPlatformQuiesceAction" /* value is OSNumber (priority) */
+#define kIOPlatformActiveActionKey "IOPlatformActiveAction" /* value is OSNumber (priority) */
+#define kIOPlatformHaltRestartActionKey "IOPlatformHaltRestartAction" /* value is OSNumber (priority) */
+#define kIOPlatformPanicActionKey "IOPlatformPanicAction" /* value is OSNumber (priority) */
#define kIOPlatformFunctionHandlerSet "IOPlatformFunctionHandlerSet"
#if defined(__i386__) || defined(__x86_64__)
#define kIOPlatformFunctionHandlerMaxBusDelay "IOPlatformFunctionHandlerMaxBusDelay"
#define kIOPlatformFunctionHandlerMaxInterruptDelay "IOPlatformFunctionHandlerMaxInterruptDelay"
+
+#define kIOPlatformMaxBusDelay "IOPlatformMaxBusDelay"
+#define kIOPlatformMaxInterruptDelay "IOPlatformMaxInterruptDelay"
+
#endif /* defined(__i386__) || defined(__x86_64__) */
+enum {
+ // these flags are valid for the prepare() method only
+ kIODirectionPrepareNoZeroFill = 0x00000010,
+};
+
+enum {
+ kIOServiceTerminateNeedWillTerminate = 0x00000100,
+};
+
+#define kIOClassNameOverrideKey "IOClassNameOverride"
+
+enum {
+ kIOClassNameOverrideNone = 0x00000001,
+};
+
+#define kIOServiceLegacyMatchingRegistryIDKey "IOServiceLegacyMatchingRegistryID"
#endif /* ! _IOKIT_IOKITKEYSPRIVATE_H */