// wdfdevice.h
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;
View the official Windows Driver Kit DDI referenceNo description available.
[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.
WdfDevStatePowerInvalid:0x00WdfDevStatePowerObjectCreated:0x300WdfDevStatePowerCheckDeviceType:0x301WdfDevStatePowerCheckDeviceTypeNP:0x302 | WdfDevStateNPWdfDevStatePowerCheckParentState:0x303WdfDevStatePowerCheckParentStateNP:0x304 | WdfDevStateNPWdfDevStatePowerEnablingWakeAtBus:0x305WdfDevStatePowerEnablingWakeAtBusNP:0x306 | WdfDevStateNPWdfDevStatePowerD0:0x307WdfDevStatePowerD0NP:0x308 | WdfDevStateNPWdfDevStatePowerD0BusWakeOwner:0x309WdfDevStatePowerD0BusWakeOwnerNP:0x30A | WdfDevStateNPWdfDevStatePowerD0ArmedForWake:0x30BWdfDevStatePowerD0ArmedForWakeNP:0x30C | WdfDevStateNPWdfDevStatePowerD0DisarmingWakeAtBus:0x30DWdfDevStatePowerD0DisarmingWakeAtBusNP:0x30E | WdfDevStateNPWdfDevStatePowerD0Starting:0x30FWdfDevStatePowerD0StartingConnectInterrupt:0x310WdfDevStatePowerD0StartingDmaEnable:0x311WdfDevStatePowerD0StartingStartSelfManagedIo:0x312WdfDevStatePowerDecideD0State:0x313WdfDevStatePowerGotoD3Stopped:0x314WdfDevStatePowerStopped:0x315WdfDevStatePowerStartingCheckDeviceType:0x316WdfDevStatePowerStartingChild:0x317WdfDevStatePowerDxDisablingWakeAtBus:0x318WdfDevStatePowerDxDisablingWakeAtBusNP:0x319 | WdfDevStateNPWdfDevStatePowerGotoDx:0x31AWdfDevStatePowerGotoDxNP:0x31B | WdfDevStateNPWdfDevStatePowerGotoDxIoStopped:0x31CWdfDevStatePowerGotoDxIoStoppedNP:0x31D | WdfDevStateNPWdfDevStatePowerGotoDxNPFailed:0x31E | WdfDevStateNPWdfDevStatePowerDx:0x31FWdfDevStatePowerDxNP:0x320 | WdfDevStateNPWdfDevStatePowerGotoDxArmedForWake:0x321WdfDevStatePowerGotoDxArmedForWakeNP:0x322 | WdfDevStateNPWdfDevStatePowerGotoDxIoStoppedArmedForWake:0x323WdfDevStatePowerGotoDxIoStoppedArmedForWakeNP:0x324 | WdfDevStateNPWdfDevStatePowerDxArmedForWake:0x325WdfDevStatePowerDxArmedForWakeNP:0x326 | WdfDevStateNPWdfDevStatePowerCheckParentStateArmedForWake:0x327WdfDevStatePowerCheckParentStateArmedForWakeNP:0x328 | WdfDevStateNPWdfDevStatePowerWaitForParentArmedForWake:0x329WdfDevStatePowerWaitForParentArmedForWakeNP:0x32A | WdfDevStateNPWdfDevStatePowerStartSelfManagedIo:0x32BWdfDevStatePowerStartSelfManagedIoNP:0x32C | WdfDevStateNPWdfDevStatePowerStartSelfManagedIoFailed:0x32DWdfDevStatePowerStartSelfManagedIoFailedNP:0x32E | WdfDevStateNPWdfDevStatePowerWaitForParent:0x32FWdfDevStatePowerWaitForParentNP:0x330 | WdfDevStateNPWdfDevStatePowerWakePending:0x331WdfDevStatePowerWakePendingNP:0x332 | WdfDevStateNPWdfDevStatePowerWaking:0x333WdfDevStatePowerWakingNP:0x334 | WdfDevStateNPWdfDevStatePowerWakingConnectInterrupt:0x335WdfDevStatePowerWakingConnectInterruptNP:0x336 | WdfDevStateNPWdfDevStatePowerWakingConnectInterruptFailed:0x337WdfDevStatePowerWakingConnectInterruptFailedNP:0x338 | WdfDevStateNPWdfDevStatePowerWakingDmaEnable:0x339WdfDevStatePowerWakingDmaEnableNP:0x33A | WdfDevStateNPWdfDevStatePowerWakingDmaEnableFailed:0x33BWdfDevStatePowerWakingDmaEnableFailedNP:0x33C | WdfDevStateNPWdfDevStatePowerReportPowerUpFailedDerefParent:0x33DWdfDevStatePowerReportPowerUpFailed:0x33EWdfDevStatePowerPowerFailedPowerDown:0x33FWdfDevStatePowerReportPowerDownFailed:0x340WdfDevStatePowerInitialConnectInterruptFailed:0x341WdfDevStatePowerInitialDmaEnableFailed:0x342WdfDevStatePowerInitialSelfManagedIoFailed:0x343WdfDevStatePowerInitialPowerUpFailedDerefParent:0x344WdfDevStatePowerInitialPowerUpFailed:0x345WdfDevStatePowerDxStoppedDisarmWake:0x346WdfDevStatePowerDxStoppedDisarmWakeNP:0x347 | WdfDevStateNPWdfDevStatePowerGotoDxStoppedDisableInterruptNP:0x348 | WdfDevStateNPWdfDevStatePowerGotoDxStopped:0x349WdfDevStatePowerDxStopped:0x34AWdfDevStatePowerGotoStopped:0x34BWdfDevStatePowerStoppedCompleteDx:0x34CWdfDevStatePowerDxStoppedDecideDxState:0x34DWdfDevStatePowerDxStoppedArmForWake:0x34EWdfDevStatePowerDxStoppedArmForWakeNP:0x34F | WdfDevStateNPWdfDevStatePowerFinalPowerDownFailed:0x350WdfDevStatePowerFinal:0x351WdfDevStatePowerGotoImplicitD3DisarmWakeAtBus:0x352WdfDevStatePowerUpFailed:0x353WdfDevStatePowerUpFailedDerefParent:0x354WdfDevStatePowerGotoDxFailed:0x355WdfDevStatePowerGotoDxStoppedDisableInterrupt:0x356WdfDevStatePowerUpFailedNP:0x357 | WdfDevStateNPWdfDevStatePowerUpFailedDerefParentNP:0x358 | WdfDevStateNPWdfDevStatePowerNotifyingD0ExitToWakeInterrupts:0x359WdfDevStatePowerNotifyingD0EntryToWakeInterrupts:0x35AWdfDevStatePowerNotifyingD0ExitToWakeInterruptsNP:0x35B | WdfDevStateNPWdfDevStatePowerNotifyingD0EntryToWakeInterruptsNP:0x35C | WdfDevStateNPWdfDevStatePowerInitialPowerUpFailedPowerDown:0x35DWdfDevStatePowerUpFailedPowerDown:0x35EWdfDevStatePowerUpFailedPowerDownNP:0x35F | WdfDevStateNPWdfDevStatePowerInitialSelfManagedIoFailedStarted:0x360WdfDevStatePowerStartSelfManagedIoFailedStarted:0x361WdfDevStatePowerStartSelfManagedIoFailedStartedNP:0x362 | WdfDevStateNPWdfDevStatePowerWakingPostHardwareEnabled:0x363WdfDevStatePowerWakingPostHardwareEnabledNP:0x364 | WdfDevStateNPWdfDevStatePowerWakingPostHardwareEnabledFailed:0x365WdfDevStatePowerWakingPostHardwareEnabledFailedNP:0x366 | WdfDevStateNPWdfDevStatePowerD0StartingPostHardwareEnabled:0x367WdfDevStatePowerInitialPostHardwareEnabledFailed:0x368WdfDevStatePowerNull:0x369The 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.