// ntddstor.h
typedef struct _DEVICE_POWER_DESCRIPTOR {
ULONG Version;
ULONG Size;
BOOLEAN DeviceAttentionSupported;
BOOLEAN AsynchronousNotificationSupported;
BOOLEAN IdlePowerManagementEnabled;
BOOLEAN D3ColdEnabled;
BOOLEAN D3ColdSupported;
BOOLEAN NoVerifyDuringIdlePower;
UCHAR Reserved[2];
ULONG IdleTimeoutInMS;
} DEVICE_POWER_DESCRIPTOR, *PDEVICE_POWER_DESCRIPTOR;
View the official Windows Driver Kit DDI reference// winioctl.h
typedef struct _DEVICE_POWER_DESCRIPTOR {
DWORD Version;
DWORD Size;
BOOLEAN DeviceAttentionSupported;
BOOLEAN AsynchronousNotificationSupported;
BOOLEAN IdlePowerManagementEnabled;
BOOLEAN D3ColdEnabled;
BOOLEAN D3ColdSupported;
BOOLEAN NoVerifyDuringIdlePower;
BYTE Reserved[2];
DWORD IdleTimeoutInMS;
} DEVICE_POWER_DESCRIPTOR, *PDEVICE_POWER_DESCRIPTOR;
View the official Win32 API referenceNo description available.
Used in conjunction with the IOCTL_STORAGE_QUERY_PROPERTY control code to describes the power capabilities of a storage device.
VersionContains the size of this structure, in bytes. The value of this member will change as members are added to the structure.
SizeSpecifies the total size of the data returned, in bytes. This may include data that follows this structure.
DeviceAttentionSupportedTrue if device attention is supported. Otherwise, False.
AsynchronousNotificationSupportedTrue if the device supports asynchronous notifications, delivered via IOCTL_STORAGE_EVENT_NOTIFICATION. Otherwise, False
IdlePowerManagementEnabledTrue if the device has been registered for runtime idle power management. Otherwise, False
D3ColdEnabledTrue if the device will be powered off when put into the D3 power state. Otherwise, False
D3ColdSupportedTrue if the platform supports D3ColdEnabled for this device. Otherwise, False.
NoVerifyDuringIdlePowerTrue if the device requires no verification during idle power transitions. Otherwise, False
ReservedReserved.
IdleTimeoutInMSThe idle timeout value in milliseconds. This member is ignored unless IdlePowerManagementEnabled is true.
The DEVICE_POWER_DESCRIPTOR structure describes the power capabilities of a storage device.
VersionContains the size of this structure, in bytes. The value of this member will change as members are added to the structure.
SizeSpecifies the total size of the data returned, in bytes. This may include data that follows this structure.
DeviceAttentionSupportedTrue if device attention is supported. Otherwise, false.
AsynchronousNotificationSupportedTrue if the device supports asynchronous notifications, delivered via IOCTL_STORAGE_EVENT_NOTIFICATION. Otherwise, false.
IdlePowerManagementEnabledTrue if the device has been registered for runtime idle power management. Otherwise, false.
D3ColdEnabledTrue if the device will be powered off when put into D3 power state. Otherwise, false.
D3ColdSupportedTrue if the platform supports D3ColdEnabled for this device. Otherwise, false.
NoVerifyDuringIdlePowerReservedReserved.
IdleTimeoutInMSThe idle timeout value in milliseconds. This member is ignored unless IdlePowerManagementEnabled is true.