Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
[Applies to KMDF only]
Note
This enumeration is for Microsoft internal use only.
The WDF_DEVICE_POWER_STATE enumeration identifies all of the states that the framework's power state machine can enter.
Syntax
typedef enum _WDF_DEVICE_POWER_STATE {
WdfDevStatePowerInvalid = 0x00,
WdfDevStatePowerObjectCreated = 0x300,
WdfDevStatePowerCheckDeviceType = 0x301,
WdfDevStatePowerCheckDeviceTypeNP = 0x302 | WdfDevStateNP,
WdfDevStatePowerCheckParentState = 0x303,
WdfDevStatePowerCheckParentStateNP = 0x304 | WdfDevStateNP,
WdfDevStatePowerEnablingWakeAtBus = 0x305,
WdfDevStatePowerEnablingWakeAtBusNP = 0x306 | WdfDevStateNP,
WdfDevStatePowerD0 = 0x307,
WdfDevStatePowerD0NP = 0x308 | WdfDevStateNP,
WdfDevStatePowerD0BusWakeOwner = 0x309,
WdfDevStatePowerD0BusWakeOwnerNP = 0x30A | WdfDevStateNP,
WdfDevStatePowerD0ArmedForWake = 0x30B,
WdfDevStatePowerD0ArmedForWakeNP = 0x30C | WdfDevStateNP,
WdfDevStatePowerD0DisarmingWakeAtBus = 0x30D,
WdfDevStatePowerD0DisarmingWakeAtBusNP = 0x30E | WdfDevStateNP,
WdfDevStatePowerD0Starting = 0x30F,
WdfDevStatePowerD0StartingConnectInterrupt = 0x310,
WdfDevStatePowerD0StartingDmaEnable = 0x311,
WdfDevStatePowerD0StartingStartSelfManagedIo = 0x312,
WdfDevStatePowerDecideD0State = 0x313,
WdfDevStatePowerGotoD3Stopped = 0x314,
WdfDevStatePowerStopped = 0x315,
WdfDevStatePowerStartingCheckDeviceType = 0x316,
WdfDevStatePowerStartingChild = 0x317,
WdfDevStatePowerDxDisablingWakeAtBus = 0x318,
WdfDevStatePowerDxDisablingWakeAtBusNP = 0x319 | WdfDevStateNP,
WdfDevStatePowerGotoDx = 0x31A,
WdfDevStatePowerGotoDxNP = 0x31B | WdfDevStateNP,
WdfDevStatePowerGotoDxIoStopped = 0x31C,
WdfDevStatePowerGotoDxIoStoppedNP = 0x31D | WdfDevStateNP,
WdfDevStatePowerGotoDxNPFailed = 0x31E | WdfDevStateNP,
WdfDevStatePowerDx = 0x31F,
WdfDevStatePowerDxNP = 0x320 | WdfDevStateNP,
WdfDevStatePowerGotoDxArmedForWake = 0x321,
WdfDevStatePowerGotoDxArmedForWakeNP = 0x322 | WdfDevStateNP,
WdfDevStatePowerGotoDxIoStoppedArmedForWake = 0x323,
WdfDevStatePowerGotoDxIoStoppedArmedForWakeNP = 0x324 | WdfDevStateNP,
WdfDevStatePowerDxArmedForWake = 0x325,
WdfDevStatePowerDxArmedForWakeNP = 0x326 | WdfDevStateNP,
WdfDevStatePowerCheckParentStateArmedForWake = 0x327,
WdfDevStatePowerCheckParentStateArmedForWakeNP = 0x328 | WdfDevStateNP,
WdfDevStatePowerWaitForParentArmedForWake = 0x329,
WdfDevStatePowerWaitForParentArmedForWakeNP = 0x32A | WdfDevStateNP,
WdfDevStatePowerStartSelfManagedIo = 0x32B,
WdfDevStatePowerStartSelfManagedIoNP = 0x32C | WdfDevStateNP,
WdfDevStatePowerStartSelfManagedIoFailed = 0x32D,
WdfDevStatePowerStartSelfManagedIoFailedNP = 0x32E | WdfDevStateNP,
WdfDevStatePowerWaitForParent = 0x32F,
WdfDevStatePowerWaitForParentNP = 0x330 | WdfDevStateNP,
WdfDevStatePowerWakePending = 0x331,
WdfDevStatePowerWakePendingNP = 0x332 | WdfDevStateNP,
WdfDevStatePowerWaking = 0x333,
WdfDevStatePowerWakingNP = 0x334 | WdfDevStateNP,
WdfDevStatePowerWakingConnectInterrupt = 0x335,
WdfDevStatePowerWakingConnectInterruptNP = 0x336 | WdfDevStateNP,
WdfDevStatePowerWakingConnectInterruptFailed = 0x337,
WdfDevStatePowerWakingConnectInterruptFailedNP = 0x338 | WdfDevStateNP,
WdfDevStatePowerWakingDmaEnable = 0x339,
WdfDevStatePowerWakingDmaEnableNP = 0x33A | WdfDevStateNP,
WdfDevStatePowerWakingDmaEnableFailed = 0x33B,
WdfDevStatePowerWakingDmaEnableFailedNP = 0x33C | WdfDevStateNP,
WdfDevStatePowerReportPowerUpFailedDerefParent = 0x33D,
WdfDevStatePowerReportPowerUpFailed = 0x33E,
WdfDevStatePowerPowerFailedPowerDown = 0x33F,
WdfDevStatePowerReportPowerDownFailed = 0x340,
WdfDevStatePowerInitialConnectInterruptFailed = 0x341,
WdfDevStatePowerInitialDmaEnableFailed = 0x342,
WdfDevStatePowerInitialSelfManagedIoFailed = 0x343,
WdfDevStatePowerInitialPowerUpFailedDerefParent = 0x344,
WdfDevStatePowerInitialPowerUpFailed = 0x345,
WdfDevStatePowerDxStoppedDisarmWake = 0x346,
WdfDevStatePowerDxStoppedDisarmWakeNP = 0x347 | WdfDevStateNP,
WdfDevStatePowerGotoDxStoppedDisableInterruptNP = 0x348 | WdfDevStateNP,
WdfDevStatePowerGotoDxStopped = 0x349,
WdfDevStatePowerDxStopped = 0x34A,
WdfDevStatePowerGotoStopped = 0x34B,
WdfDevStatePowerStoppedCompleteDx = 0x34C,
WdfDevStatePowerDxStoppedDecideDxState = 0x34D,
WdfDevStatePowerDxStoppedArmForWake = 0x34E,
WdfDevStatePowerDxStoppedArmForWakeNP = 0x34F | WdfDevStateNP,
WdfDevStatePowerFinalPowerDownFailed = 0x350,
WdfDevStatePowerFinal = 0x351,
WdfDevStatePowerGotoImplicitD3DisarmWakeAtBus = 0x352,
WdfDevStatePowerUpFailed = 0x353,
WdfDevStatePowerUpFailedDerefParent = 0x354,
WdfDevStatePowerGotoDxFailed = 0x355,
WdfDevStatePowerGotoDxStoppedDisableInterrupt = 0x356,
WdfDevStatePowerUpFailedNP = 0x357 | WdfDevStateNP,
WdfDevStatePowerUpFailedDerefParentNP = 0x358 | WdfDevStateNP,
WdfDevStatePowerNotifyingD0ExitToWakeInterrupts = 0x359,
WdfDevStatePowerNotifyingD0EntryToWakeInterrupts = 0x35A,
WdfDevStatePowerNotifyingD0ExitToWakeInterruptsNP = 0x35B | WdfDevStateNP,
WdfDevStatePowerNotifyingD0EntryToWakeInterruptsNP = 0x35C | WdfDevStateNP,
WdfDevStatePowerInitialPowerUpFailedPowerDown = 0x35D,
WdfDevStatePowerUpFailedPowerDown = 0x35E,
WdfDevStatePowerUpFailedPowerDownNP = 0x35F | WdfDevStateNP,
WdfDevStatePowerInitialSelfManagedIoFailedStarted = 0x360,
WdfDevStatePowerStartSelfManagedIoFailedStarted = 0x361,
WdfDevStatePowerStartSelfManagedIoFailedStartedNP = 0x362 | WdfDevStateNP,
WdfDevStatePowerWakingPostHardwareEnabled = 0x363,
WdfDevStatePowerWakingPostHardwareEnabledNP = 0x364 | WdfDevStateNP,
WdfDevStatePowerWakingPostHardwareEnabledFailed = 0x365,
WdfDevStatePowerWakingPostHardwareEnabledFailedNP = 0x366 | WdfDevStateNP,
WdfDevStatePowerD0StartingPostHardwareEnabled = 0x367,
WdfDevStatePowerInitialPostHardwareEnabledFailed = 0x368,
WdfDevStatePowerNull = 0x369
} WDF_DEVICE_POWER_STATE, *PWDF_DEVICE_POWER_STATE;
Constants
WdfDevStatePowerInvalidValue: 0x00 |
WdfDevStatePowerObjectCreatedValue: 0x300 |
WdfDevStatePowerCheckDeviceTypeValue: 0x301 |
WdfDevStatePowerCheckDeviceTypeNPValue: 0x302 |
WdfDevStatePowerCheckParentStateValue: 0x303 |
WdfDevStatePowerCheckParentStateNPValue: 0x304 |
WdfDevStatePowerEnablingWakeAtBusValue: 0x305 |
WdfDevStatePowerEnablingWakeAtBusNPValue: 0x306 |
WdfDevStatePowerD0Value: 0x307 |
WdfDevStatePowerD0NPValue: 0x308 |
WdfDevStatePowerD0BusWakeOwnerValue: 0x309 |
WdfDevStatePowerD0BusWakeOwnerNPValue: 0x30A |
WdfDevStatePowerD0ArmedForWakeValue: 0x30B |
WdfDevStatePowerD0ArmedForWakeNPValue: 0x30C |
WdfDevStatePowerD0DisarmingWakeAtBusValue: 0x30D |
WdfDevStatePowerD0DisarmingWakeAtBusNPValue: 0x30E |
WdfDevStatePowerD0StartingValue: 0x30F |
WdfDevStatePowerD0StartingConnectInterruptValue: 0x310 |
WdfDevStatePowerD0StartingDmaEnableValue: 0x311 |
WdfDevStatePowerD0StartingStartSelfManagedIoValue: 0x312 |
WdfDevStatePowerDecideD0StateValue: 0x313 |
WdfDevStatePowerGotoD3StoppedValue: 0x314 |
WdfDevStatePowerStoppedValue: 0x315 |
WdfDevStatePowerStartingCheckDeviceTypeValue: 0x316 |
WdfDevStatePowerStartingChildValue: 0x317 |
WdfDevStatePowerDxDisablingWakeAtBusValue: 0x318 |
WdfDevStatePowerDxDisablingWakeAtBusNPValue: 0x319 |
WdfDevStatePowerGotoDxValue: 0x31A |
WdfDevStatePowerGotoDxNPValue: 0x31B |
WdfDevStatePowerGotoDxIoStoppedValue: 0x31C |
WdfDevStatePowerGotoDxIoStoppedNPValue: 0x31D |
WdfDevStatePowerGotoDxNPFailedValue: 0x31E |
WdfDevStatePowerDxValue: 0x31F |
WdfDevStatePowerDxNPValue: 0x320 |
WdfDevStatePowerGotoDxArmedForWakeValue: 0x321 |
WdfDevStatePowerGotoDxArmedForWakeNPValue: 0x322 |
WdfDevStatePowerGotoDxIoStoppedArmedForWakeValue: 0x323 |
WdfDevStatePowerGotoDxIoStoppedArmedForWakeNPValue: 0x324 |
WdfDevStatePowerDxArmedForWakeValue: 0x325 |
WdfDevStatePowerDxArmedForWakeNPValue: 0x326 |
WdfDevStatePowerCheckParentStateArmedForWakeValue: 0x327 |
WdfDevStatePowerCheckParentStateArmedForWakeNPValue: 0x328 |
WdfDevStatePowerWaitForParentArmedForWakeValue: 0x329 |
WdfDevStatePowerWaitForParentArmedForWakeNPValue: 0x32A |
WdfDevStatePowerStartSelfManagedIoValue: 0x32B |
WdfDevStatePowerStartSelfManagedIoNPValue: 0x32C |
WdfDevStatePowerStartSelfManagedIoFailedValue: 0x32D |
WdfDevStatePowerStartSelfManagedIoFailedNPValue: 0x32E |
WdfDevStatePowerWaitForParentValue: 0x32F |
WdfDevStatePowerWaitForParentNPValue: 0x330 |
WdfDevStatePowerWakePendingValue: 0x331 |
WdfDevStatePowerWakePendingNPValue: 0x332 |
WdfDevStatePowerWakingValue: 0x333 |
WdfDevStatePowerWakingNPValue: 0x334 |
WdfDevStatePowerWakingConnectInterruptValue: 0x335 |
WdfDevStatePowerWakingConnectInterruptNPValue: 0x336 |
WdfDevStatePowerWakingConnectInterruptFailedValue: 0x337 |
WdfDevStatePowerWakingConnectInterruptFailedNPValue: 0x338 |
WdfDevStatePowerWakingDmaEnableValue: 0x339 |
WdfDevStatePowerWakingDmaEnableNPValue: 0x33A |
WdfDevStatePowerWakingDmaEnableFailedValue: 0x33B |
WdfDevStatePowerWakingDmaEnableFailedNPValue: 0x33C |
WdfDevStatePowerReportPowerUpFailedDerefParentValue: 0x33D |
WdfDevStatePowerReportPowerUpFailedValue: 0x33E |
WdfDevStatePowerPowerFailedPowerDownValue: 0x33F |
WdfDevStatePowerReportPowerDownFailedValue: 0x340 |
WdfDevStatePowerInitialConnectInterruptFailedValue: 0x341 |
WdfDevStatePowerInitialDmaEnableFailedValue: 0x342 |
WdfDevStatePowerInitialSelfManagedIoFailedValue: 0x343 |
WdfDevStatePowerInitialPowerUpFailedDerefParentValue: 0x344 |
WdfDevStatePowerInitialPowerUpFailedValue: 0x345 |
WdfDevStatePowerDxStoppedDisarmWakeValue: 0x346 |
WdfDevStatePowerDxStoppedDisarmWakeNPValue: 0x347 |
WdfDevStatePowerGotoDxStoppedDisableInterruptNPValue: 0x348 |
WdfDevStatePowerGotoDxStoppedValue: 0x349 |
WdfDevStatePowerDxStoppedValue: 0x34A |
WdfDevStatePowerGotoStoppedValue: 0x34B |
WdfDevStatePowerStoppedCompleteDxValue: 0x34C |
WdfDevStatePowerDxStoppedDecideDxStateValue: 0x34D |
WdfDevStatePowerDxStoppedArmForWakeValue: 0x34E |
WdfDevStatePowerDxStoppedArmForWakeNPValue: 0x34F |
WdfDevStatePowerFinalPowerDownFailedValue: 0x350 |
WdfDevStatePowerFinalValue: 0x351 |
WdfDevStatePowerGotoImplicitD3DisarmWakeAtBusValue: 0x352 |
WdfDevStatePowerUpFailedValue: 0x353 |
WdfDevStatePowerUpFailedDerefParentValue: 0x354 |
WdfDevStatePowerGotoDxFailedValue: 0x355 |
WdfDevStatePowerGotoDxStoppedDisableInterruptValue: 0x356 |
WdfDevStatePowerUpFailedNPValue: 0x357 |
WdfDevStatePowerUpFailedDerefParentNPValue: 0x358 |
WdfDevStatePowerNotifyingD0ExitToWakeInterruptsValue: 0x359 |
WdfDevStatePowerNotifyingD0EntryToWakeInterruptsValue: 0x35A |
WdfDevStatePowerNotifyingD0ExitToWakeInterruptsNPValue: 0x35B |
WdfDevStatePowerNotifyingD0EntryToWakeInterruptsNPValue: 0x35C |
WdfDevStatePowerInitialPowerUpFailedPowerDownValue: 0x35D |
WdfDevStatePowerUpFailedPowerDownValue: 0x35E |
WdfDevStatePowerUpFailedPowerDownNPValue: 0x35F |
WdfDevStatePowerInitialSelfManagedIoFailedStartedValue: 0x360 |
WdfDevStatePowerStartSelfManagedIoFailedStartedValue: 0x361 |
WdfDevStatePowerStartSelfManagedIoFailedStartedNPValue: 0x362 |
WdfDevStatePowerWakingPostHardwareEnabledValue: 0x363 |
WdfDevStatePowerWakingPostHardwareEnabledNPValue: 0x364 |
WdfDevStatePowerWakingPostHardwareEnabledFailedValue: 0x365 |
WdfDevStatePowerWakingPostHardwareEnabledFailedNPValue: 0x366 |
WdfDevStatePowerD0StartingPostHardwareEnabledValue: 0x367 |
WdfDevStatePowerInitialPostHardwareEnabledFailedValue: 0x368 |
WdfDevStatePowerNullValue: 0x369 |
Remarks
The WDF_DEVICE_POWER_STATE enumeration is used as a member type in the WDF_DEVICE_POWER_NOTIFICATION_DATA structure and as the return type for the WdfDeviceGetDevicePowerState method.
Requirements
| Requirement | Value |
|---|---|
| Minimum KMDF version | 1.0 |
| Header | wdfdevice.h (include Wdf.h) |