X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/0b4e3aa066abc0728aacb4bbeb86f53f9737156e..ac5ea4a98a4e1d34a076095ea1eaa87e43d1f335:/iokit/IOKit/pwr_mgt/RootDomain.h diff --git a/iokit/IOKit/pwr_mgt/RootDomain.h b/iokit/IOKit/pwr_mgt/RootDomain.h index 28d95a059..acbb27fc5 100644 --- a/iokit/IOKit/pwr_mgt/RootDomain.h +++ b/iokit/IOKit/pwr_mgt/RootDomain.h @@ -27,6 +27,8 @@ class RootDomainUserClient; +#define kRootDomainSupportedFeatures "Supported Features" + enum { kRootDomainSleepNotSupported = 0x00000000, kRootDomainSleepSupported = 0x00000001, @@ -44,6 +46,7 @@ extern "C" IOReturn rootDomainShutdown ( void ); } +#define IOPM_ROOTDOMAIN_REV 2 class IOPMrootDomain: public IOService { @@ -59,6 +62,7 @@ public: virtual IOReturn setAggressiveness ( unsigned long, unsigned long ); virtual IOReturn youAreRoot ( void ); virtual IOReturn sleepSystem ( void ); + virtual IOReturn setProperties ( OSObject * ); IOReturn shutdownSystem ( void ); IOReturn restartSystem ( void ); virtual IOReturn receivePowerNotification (UInt32 msg); @@ -66,7 +70,14 @@ public: virtual IOOptionBits getSleepSupported(); virtual IOReturn requestPowerDomainState ( IOPMPowerFlags, IOPowerConnection *, unsigned long ); virtual void handleSleepTimerExpiration ( void ); + void stopIgnoringClamshellEventsDuringWakeup ( void ); void wakeFromDoze( void ); + void broadcast_it (unsigned long, unsigned long ); + void publishFeature( const char *feature ); + + // Override of these methods for logging purposes. + virtual IOReturn changePowerStateTo ( unsigned long ordinal ); + virtual IOReturn changePowerStateToPriv ( unsigned long ordinal ); private: @@ -75,7 +86,8 @@ private: long longestNonSleepSlider; // pref: longest of other idle times long extraSleepDelay; // sleepSlider - longestNonSleepSlider thread_call_t extraSleepTimer; // used to wait between say display idle and system idle - + thread_call_t clamshellWakeupIgnore; // Used to ignore clamshell close events while we're waking from sleep + virtual void powerChangeDone ( unsigned long ); virtual void command_received ( void *, void * , void * , void *); virtual bool tellChangeDown ( unsigned long stateNum); @@ -98,6 +110,7 @@ private: void adjustPowerState( void ); void restoreUserSpinDownTimeout ( void ); + unsigned int user_spindown; // User's selected disk spindown value unsigned int systemBooting:1; @@ -107,8 +120,13 @@ private: unsigned int canSleep:1; unsigned int idleSleepPending:1; unsigned int sleepASAP:1; - unsigned int reservedA:1; - unsigned int reservedB[2]; + unsigned int desktopMode:1; + + unsigned int acAdaptorConnect:1; + unsigned int ignoringClamshellDuringWakeup:1; + unsigned int reservedA:6; + unsigned char reservedB[3]; + thread_call_t diskSyncCalloutEntry; IOOptionBits platformSleepSupport; };