nextIdleTimeout
Allows subclasses to customize idle power management behavior.
Declaration
virtual SInt32 nextIdleTimeout(
AbsoluteTimecurrentTime,
AbsoluteTimelastActivity,
unsigned intpowerState);Parameters
- currentTime:
The current time
- lastActivity:
The time of last activity on this device
- powerState:
The device's current power state.
Return Value
Returns the next time the device should idle off (in seconds, relative to the current time).
Overview
Returns the next time that the device should idle into its next lower power state. Subclasses may override for custom idle behavior.
A power managed driver might override this method to provide a more sophisticated idle power off algorithm than the one defined by power management.
See Also
Miscellaneous
acknowledgePowerChangeacknowledgeSetPowerStateactivityTickleaddLocationaddMatchingNotificationaddNotificationaddPowerChildadjustBusyattachcallPlatformFunctioncauseInterruptchangePowerStateTochangePowerStateToPrivclampPowerOnclosecommand_receivedcomparePropertiescompareProperty(OSDictionary *, const char *)compareProperty(OSDictionary *, const OSString *)configureReportcopyClientWithCategorycopyMatchingServicecurrentCapabilitycurrentPowerConsumptiondeRegisterInterestedDriverdetachdidTerminatedidYouWakeSystemdisableInterruptenableInterrupterrnoFromReturnfinalizefreegetAggressivenessgetBusyStategetClientgetClientIteratorgetDeviceMemorygetDeviceMemoryCountgetDeviceMemoryWithIndexgetInterruptTypegetMatchingServicesgetOpenClientIteratorgetOpenProviderIteratorgetPlatformgetPMRootDomaingetPMworkloopgetPowerStategetProvidergetProviderIteratorgetResourcesgetResourceServicegetServiceRootgetStategetWorkLoophandleClosehandleIsOpenhandleOpeninitialPowerStateForDomainStateisInactiveisOpenjoinPMtreelockForArbitrationmakeUsablemapDeviceMemoryWithIndexmatchLocationmatchPropertyTablemaxCapabilityForDomainStatemessagemessageClientmessageClientsnameMatching(const char *, OSDictionary *)nameMatching(const OSString *, OSDictionary *)newTemperaturenewUserClientopenPM_Clamp_Timer_ExpiredPM_idle_timer_expirationPMinitPMstoppowerChangeDonepowerOverrideOffPrivpowerOverrideOnPrivpowerStateDidChangeTopowerStateForDomainStatepowerStateWillChangeToprobepropertyMatchingpublishResource(const char *, OSObject *)publishResource(const OSSymbol *, OSObject *)registerInterestedDriverregisterInterruptregisterPowerDriverregisterServiceregistryEntryIDMatchingremovePowerChildrequestPowerDomainStaterequestProberequestTerminateresourceMatching(const char *, OSDictionary *)resourceMatching(const OSString *, OSDictionary *)serviceMatching(const char *, OSDictionary *)serviceMatching(const OSString *, OSDictionary *)setAggressivenesssetDeviceMemorysetIdleTimerPeriodsetPowerParentsetPowerStatestartstart_PM_idle_timerstopstringFromReturnsystemWakesystemWillShutdowntemperatureCriticalForZonetemporaryPowerClampOnterminateterminateClientunlockForArbitrationunregisterInterruptupdateReportwaitForMatchingServicewaitForServicewaitQuietwillTerminateyouAreRoot