pub type IOPMPowerFlags = c_ulong;pwr_mgt only.Expand description
Bits are used in defining capabilityFlags, inputPowerRequirements, and outputPowerCharacter in the IOPMPowerState structure.
These bits may be bitwise-OR’d together in the IOPMPowerState capabilityFlags field, the outputPowerCharacter field, and/or the inputPowerRequirement field.
The comments clearly mark whether each flag should be used in the capabilityFlags field, outputPowerCharacter field, and inputPowerRequirement field, or all three.
The value of capabilityFlags, inputPowerRequirement or outputPowerCharacter may be 0. Most drivers implement their ‘OFF’ state, used when asleep, by defininf each of the 3 fields as 0.
The bits listed below are only the most common bits used to define a device’s power states. Your device’s IO family may require that your device specify other input or output power flags to interact properly. Consult family-specific documentation to determine if your IOPower plane parents or children require other power flags; they probably don’t.
Indicates device is in a low power state. May be bitwis-OR’d together with kIOPMDeviceUsable flag, to indicate the device is still usable.
A device with a capability of kIOPMLowPower may: Require either 0 or kIOPMPowerOn from its power parent Offer either kIOPMLowPower, kIOPMPowerOn, or 0 (no power at all) to its power plane children.
Useful only as a Capability, although USB drivers should consult USB family documentation for other valid circumstances to use the kIOPMLowPower bit.
In the capability field of a power state, disallows idle system sleep while the device is in that state.
For example, displays and disks set this capability for their ON power state; since the system may not idle sleep while the display (and thus keyboard or mouse) or the disk is active.
Useful only as a Capability.
Used only by certain IOKit Families (USB). Not defined or used by generic Power Management. Read your family documentation to see if you should define a powerstate using these capabilities.
Used only by certain IOKit Families (USB). Not defined or used by generic Power Management. Read your family documentation to see if you should define a powerstate using these capabilities.
Used only by certain IOKit Families (USB). Not defined or used by generic Power Management. Read your family documentation to see if you should define a powerstate using these capabilities.
Used only by certain IOKit Families (USB). Not defined or used by generic Power Management. Read your family documentation to see if you should define a powerstate using these capabilities.
Indicates the initial power state for the device. If
initialPowerStateForDomainState()
returns a power state with this flag set in the capability field, then the initial power change is performed without calling the driver’s
setPowerState()
.
An indication that the power flags represent the state of the root power domain. This bit must not be set in the IOPMPowerState structure. Power Management may pass this bit to initialPowerStateForDomainState() to map from a global system state to the desired device state.
See also Apple’s documentation