Apple Developer Connection
Advanced Search
Member Login Log In | Not a Member? Contact ADC
ADC Home > Reference Library > Reference > Darwin > Kernel Framework Reference

 


IOPMpowerState.h

Includes:

Overview

Defines the struct IOPMPowerState that power managed drivers should use to describe their power states.



Structs and Unions


IOPMPowerState


Describes a device's power state.

struct IOPMPowerState { 
    unsigned long version; 
    IOPMPowerFlags capabilityFlags; 
    IOPMPowerFlags outputPowerCharacter; 
    IOPMPowerFlags inputPowerRequirement; 
    unsigned long staticPower; 
    unsigned long unbudgetedPower; 
    unsigned long powerToAttain; 
    unsigned long timeToAttain; 
    unsigned long settleUpTime; 
    unsigned long timeToLower; 
    unsigned long settleDownTime; 
    unsigned long powerDomainBudget; 
};  
Fields
version
Defines version number of this struct. Just use the value "1" when defining an IOPMPowerState.
capabilityFlags
Describes the capability of the device in this state.
outputPowerCharacter
Describes the power provided in this state.
inputPowerRequirement
Describes the input power required in this state.
staticPower
Describes average consumption in milliwatts. Unused; drivers may specify 0.
unbudgetedPower
Describes additional consumption from separate power supply (milliWatts). Unused; drivers may specify 0.
powerToAttain
Describes dditional power to attain this state from next lower state (in milliWatts). Unused; drivers may specify 0.
timeToAttain
Describes time required to enter this state from next lower state (in microseconds). Unused; drivers may specify 0.
settleUpTime
Describes settle time required after entering this state from next lower state (microseconds). Unused; drivers may specify 0.
timeToLower
Describes time required to enter next lower state from this one (microseconds). Unused; drivers may specify 0.
settleDownTime
Settle time required after entering next lower state from this state (microseconds). Unused; drivers may specify 0.
powerDomainBudget
Describes power in milliWatts a domain in this state can deliver to its children. Unused; drivers may specify 0. }
Discussion

To take part in system power management, drivers should define an array of 2 or more power states and pass it to kernel power management through IOService::registerPowerDriver.




Did this document help you?
Yes: Tell us what works for you.

It’s good, but: Report typos, inaccuracies, and so forth.

It wasn’t helpful: Tell us what would have helped.
Last Updated: 2008-03-13