]> git.saurik.com Git - apple/xnu.git/blobdiff - iokit/IOKit/pwr_mgt/IOPMPrivate.h
xnu-2050.48.11.tar.gz
[apple/xnu.git] / iokit / IOKit / pwr_mgt / IOPMPrivate.h
index 651544913f5714c13842c1acaa1d0234b4d1acff..55f86b4755ebff900662225a97a96eff6fae7d32 100644 (file)
@@ -626,6 +626,11 @@ enum {
  *
  *****************************************************************************/
 
+/* kIOPMFeatureAutoPowerOffKey
+ * Feature published if Auto Power Off is supported
+ */
+#define kIOPMFeatureAutoPowerOffKey         "AutoPowerOff"
+
 /* kIOPMAutoPowerOffEnabledKey
  * Indicates if Auto Power Off is enabled.
  * It has a boolean value.
@@ -642,6 +647,25 @@ enum {
  */
 #define kIOPMAutoPowerOffDelayKey           "AutoPowerOff Delay"
 
+/* kIOPMAutoPowerOffTimerKey
+ * Key refers to a CFNumberRef that indicates the time in seconds until the
+ * expiration of the Auto Power Off delay period. This value should be used
+ * to program a wake alarm before system sleep.
+ */
+#define kIOPMAutoPowerOffTimerKey           "AutoPowerOff Timer"
+
+/* kIOPMUserWakeAlarmScheduledKey
+ * Key refers to a boolean value that indicates if an user alarm was scheduled
+ * or pending.
+ */
+#define kIOPMUserWakeAlarmScheduledKey      "UserWakeAlarmScheduled"
+
+/* kIOPMDeepIdleSupportedKey
+ * Presence of this key indicates Deep Idle is supported on this platform.
+ * Key will always refer to a value of kOSBooleanTrue.
+ */
+#define kIOPMDeepIdleSupportedKey           "IOPMDeepIdleSupported"
+
 /*****************************************************************************
  *
  * System Sleep Policy
@@ -677,8 +701,9 @@ struct IOPMSystemSleepPolicyVariables
     uint32_t    standbyDelay;               // standby delay in seconds
     uint32_t    poweroffDelay;              // auto-poweroff delay in seconds
     uint32_t    scheduledAlarms;            // bitmask of scheduled alarm types
+    uint32_t    poweroffTimer;              // auto-poweroff timer in seconds
 
-    uint32_t    reserved[50];               // pad sizeof 256 bytes
+    uint32_t    reserved[49];               // pad sizeof 256 bytes
 };
 
 enum {
@@ -689,7 +714,8 @@ enum {
 };
 
 enum {
-    kIOPMSleepPhase1 = 1,
+    kIOPMSleepPhase0 = 0,
+    kIOPMSleepPhase1,
     kIOPMSleepPhase2
 };
 
@@ -723,7 +749,8 @@ enum {
     kIOPMSleepTypeHibernate                 = 4,
     kIOPMSleepTypeStandby                   = 5,
     kIOPMSleepTypePowerOff                  = 6,
-    kIOPMSleepTypeLast                      = 7
+    kIOPMSleepTypeDeepIdle                  = 7,
+    kIOPMSleepTypeLast                      = 8
 };
 
 // System Sleep Flags