diff --git a/PInvoke/Kernel32/WinIOCtl.Enums.cs b/PInvoke/Kernel32/WinIOCtl.Enums.cs
index 0adcbc709..44d97dc18 100644
--- a/PInvoke/Kernel32/WinIOCtl.Enums.cs
+++ b/PInvoke/Kernel32/WinIOCtl.Enums.cs
@@ -2117,176 +2117,217 @@ public enum STORAGE_PORT_CODE_SET
// StorageAdapterSerialNumberProperty, StorageDeviceLocationProperty, StorageDeviceNumaProperty, StorageDeviceZonedDeviceProperty,
// StorageDeviceUnsafeShutdownCount, StorageDeviceEnduranceProperty } STORAGE_PROPERTY_ID, *PSTORAGE_PROPERTY_ID;
[PInvokeData("winioctl.h", MSDNShortId = "9747be01-7c70-4697-97f7-e3830b54ba0a")]
- public enum STORAGE_PROPERTY_ID
- {
- /// Indicates that the caller is querying for the device descriptor, STORAGE_DEVICE_DESCRIPTOR.
- [CorrespondingType(typeof(STORAGE_DEVICE_DESCRIPTOR_MGD))]
- StorageDeviceProperty = 0,
+ public enum STORAGE_PROPERTY_ID
+ {
+ /// Indicates that the caller is querying for the device descriptor, STORAGE_DEVICE_DESCRIPTOR.
+ [CorrespondingType(typeof(STORAGE_DEVICE_DESCRIPTOR_MGD))]
+ StorageDeviceProperty = 0,
- /// Indicates that the caller is querying for the adapter descriptor, STORAGE_ADAPTER_DESCRIPTOR.
- [CorrespondingType(typeof(STORAGE_ADAPTER_DESCRIPTOR))]
- StorageAdapterProperty,
+ /// Indicates that the caller is querying for the adapter descriptor, STORAGE_ADAPTER_DESCRIPTOR.
+ [CorrespondingType(typeof(STORAGE_ADAPTER_DESCRIPTOR))]
+ StorageAdapterProperty,
- ///
- /// Indicates that the caller is querying for the device identifiers provided with the SCSI vital product data pages. Data is
- /// returned using the STORAGE_DEVICE_ID_DESCRIPTOR structure.
- ///
- [CorrespondingType(typeof(STORAGE_DEVICE_ID_DESCRIPTOR))]
- StorageDeviceIdProperty,
+ ///
+ /// Indicates that the caller is querying for the device identifiers provided with the SCSI vital product data pages. Data is
+ /// returned using the STORAGE_DEVICE_ID_DESCRIPTOR structure.
+ ///
+ [CorrespondingType(typeof(STORAGE_DEVICE_ID_DESCRIPTOR))]
+ StorageDeviceIdProperty,
- ///
- /// Intended for driver usage. Indicates that the caller is querying for the unique device identifiers. Data is returned using
- /// the STORAGE_DEVICE_UNIQUE_IDENTIFIER structure (see the storduid.h header in the DDK). Windows Server 2003 and Windows XP:
- /// This value is not supported before Windows Vista and Windows Server 2008.
- ///
- [CorrespondingType(typeof(STORAGE_DEVICE_UNIQUE_IDENTIFIER_MGD))]
- StorageDeviceUniqueIdProperty,
+ ///
+ /// Intended for driver usage. Indicates that the caller is querying for the unique device identifiers. Data is returned using
+ /// the STORAGE_DEVICE_UNIQUE_IDENTIFIER structure (see the storduid.h header in the DDK). Windows Server 2003 and Windows XP:
+ /// This value is not supported before Windows Vista and Windows Server 2008.
+ ///
+ [CorrespondingType(typeof(STORAGE_DEVICE_UNIQUE_IDENTIFIER_MGD))]
+ StorageDeviceUniqueIdProperty,
- ///
- /// Indicates that the caller is querying for the write cache property. Data is returned using the STORAGE_WRITE_CACHE_PROPERTY
- /// structure. Windows Server 2003 and Windows XP: This value is not supported before Windows Vista and Windows Server 2008.
- ///
- [CorrespondingType(typeof(STORAGE_WRITE_CACHE_PROPERTY))]
- StorageDeviceWriteCacheProperty,
+ ///
+ /// Indicates that the caller is querying for the write cache property. Data is returned using the STORAGE_WRITE_CACHE_PROPERTY
+ /// structure. Windows Server 2003 and Windows XP: This value is not supported before Windows Vista and Windows Server 2008.
+ ///
+ [CorrespondingType(typeof(STORAGE_WRITE_CACHE_PROPERTY))]
+ StorageDeviceWriteCacheProperty,
- /// Reserved for system use.
- StorageMiniportProperty,
+ /// Reserved for system use.
+ StorageMiniportProperty,
- ///
- /// Indicates that the caller is querying for the access alignment descriptor, STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR. Windows
- /// Server 2003 and Windows XP: This value is not supported before Windows Vista and Windows Server 2008.
- ///
- [CorrespondingType(typeof(STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR))]
- StorageAccessAlignmentProperty,
+ ///
+ /// Indicates that the caller is querying for the access alignment descriptor, STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR. Windows
+ /// Server 2003 and Windows XP: This value is not supported before Windows Vista and Windows Server 2008.
+ ///
+ [CorrespondingType(typeof(STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR))]
+ StorageAccessAlignmentProperty,
- ///
- /// Indicates that the caller is querying for the trim descriptor, DEVICE_TRIM_DESCRIPTOR. Windows Server 2008, Windows Vista,
- /// Windows Server 2003 and Windows XP: This value is not supported before Windows 7 and Windows Server 2008 R2.
- ///
- [CorrespondingType(typeof(DEVICE_TRIM_DESCRIPTOR))]
- StorageDeviceTrimProperty,
+ ///
+ /// Indicates that the caller is querying for the seek penalty descriptor, DEVICE_SEEK_PENALTY_DESCRIPTOR.
+ ///
+ /// Windows Server 2008, Windows Vista, Windows Server 2003 and Windows XP: This value is not supported before Windows 7 and Windows
+ /// Server 2008 R2.
+ ///
+ ///
+ [CorrespondingType(typeof(DEVICE_SEEK_PENALTY_DESCRIPTOR))]
+ StorageDeviceSeekPenaltyProperty,
- ///
- /// Indicates that the caller is querying for the device power descriptor. Data is returned using the DEVICE_POWER_DESCRIPTOR
- /// structure. Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003 and Windows XP: This
- /// value is not supported before Windows 8 and Windows Server 2012.
- ///
- [CorrespondingType(typeof(DEVICE_POWER_DESCRIPTOR))]
- StorageDevicePowerProperty,
+ ///
+ /// Indicates that the caller is querying for the trim descriptor, DEVICE_TRIM_DESCRIPTOR. Windows Server 2008, Windows Vista,
+ /// Windows Server 2003 and Windows XP: This value is not supported before Windows 7 and Windows Server 2008 R2.
+ ///
+ [CorrespondingType(typeof(DEVICE_TRIM_DESCRIPTOR))]
+ StorageDeviceTrimProperty,
- /// Reserved for system use.
- StorageDeviceResiliencyProperty,
+ /// Reserved for system use.
+ StorageDeviceWriteAggregationProperty,
- ///
- /// Indicates that the caller is querying for the medium product type. Data is returned using the
- /// STORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR structure.
- ///
- [CorrespondingType(typeof(STORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR))]
- StorageDeviceMediumProductType,
+ /// Reserved for system use.
+ StorageDeviceDeviceTelemetryProperty,
- ///
- /// Indicates that the caller is querying for RPMB support and properties. Data is returned using the STORAGE_RPMB_DESCRIPTOR structure.
- ///
- [CorrespondingType(typeof(STORAGE_RPMB_DESCRIPTOR))]
- StorageAdapterRpmbProperty,
+ ///
+ /// Indicates that the caller is querying for the logical block provisioning property. Data is returned using the
+ /// DEVICE_LB_PROVISIONING_DESCRIPTOR structure.
+ ///
+ /// Windows Server 2008, Windows Vista, Windows Server 2003 and Windows XP: This value is not supported before Windows 7 and Windows
+ /// Server 2008 R2.
+ ///
+ ///
+ [CorrespondingType(typeof(DEVICE_LB_PROVISIONING_DESCRIPTOR))]
+ StorageDeviceLBProvisioningProperty,
- ///
- /// Provides info on the storage adapter encryption capabilities. This is currently supported on UFS (Universal Flash Storage) adapters.
- ///
- StorageAdapterCryptoProperty,
+ ///
+ /// Indicates that the caller is querying for the device power descriptor. Data is returned using the DEVICE_POWER_DESCRIPTOR
+ /// structure. Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista, Windows Server 2003 and Windows XP: This
+ /// value is not supported before Windows 8 and Windows Server 2012.
+ ///
+ [CorrespondingType(typeof(DEVICE_POWER_DESCRIPTOR))]
+ StorageDevicePowerProperty,
- ///
- /// Indicates that the caller is querying for the device I/O capability property. Data is returned using the
- /// DEVICE_IO_CAPABILITY_DESCRIPTOR structure.
- ///
- [CorrespondingType(typeof(STORAGE_DEVICE_IO_CAPABILITY_DESCRIPTOR))]
- StorageDeviceIoCapabilityProperty = 48,
+ ///
+ /// Indicates that the caller is querying for the copy offload parameters property. Data is returned using the
+ /// DEVICE_COPY_OFFLOAD_DESCRIPTOR structure.
+ ///
+ /// Windows Server 2008, Windows Vista, Windows Server 2003 and Windows XP: This value is not supported before Windows 7 and Windows
+ /// Server 2008 R2.
+ ///
+ ///
+ [CorrespondingType(typeof(DEVICE_COPY_OFFLOAD_DESCRIPTOR))]
+ StorageDeviceCopyOffloadProperty,
- ///
- /// Indicates that the caller is querying for protocol-specific data from the adapter. Data is returned using the
- /// STORAGE_PROTOCOL_DATA_DESCRIPTOR structure. See the remarks for more info.
- ///
- [CorrespondingType(typeof(STORAGE_PROTOCOL_DATA_DESCRIPTOR))]
- StorageAdapterProtocolSpecificProperty,
+ /// Reserved for system use.
+ StorageDeviceResiliencyProperty,
- ///
- /// Indicates that the caller is querying for protocol-specific data from the device. Data is returned using the
- /// STORAGE_PROTOCOL_DATA_DESCRIPTOR structure. See the remarks for more info.
- ///
- [CorrespondingType(typeof(STORAGE_PROTOCOL_DATA_DESCRIPTOR))]
- StorageDeviceProtocolSpecificProperty,
+ ///
+ /// Indicates that the caller is querying for the medium product type. Data is returned using the
+ /// STORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR structure.
+ ///
+ [CorrespondingType(typeof(STORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR))]
+ StorageDeviceMediumProductType,
- ///
- /// Indicates that the caller is querying temperature data from the adapter. Data is returned using the
- /// STORAGE_TEMPERATURE_DATA_DESCRIPTOR structure.
- ///
- [CorrespondingType(typeof(STORAGE_TEMPERATURE_DATA_DESCRIPTOR))]
- StorageAdapterTemperatureProperty,
+ ///
+ /// Indicates that the caller is querying for RPMB support and properties. Data is returned using the STORAGE_RPMB_DESCRIPTOR structure.
+ ///
+ [CorrespondingType(typeof(STORAGE_RPMB_DESCRIPTOR))]
+ StorageAdapterRpmbProperty,
- ///
- /// Indicates that the caller is querying for temperature data from the device. Data is returned using the
- /// STORAGE_TEMPERATURE_DATA_DESCRIPTOR structure.
- ///
- [CorrespondingType(typeof(STORAGE_TEMPERATURE_DATA_DESCRIPTOR))]
- StorageDeviceTemperatureProperty,
+ ///
+ /// Provides info on the storage adapter encryption capabilities. This is currently supported on UFS (Universal Flash Storage) adapters.
+ ///
+ StorageAdapterCryptoProperty,
- ///
- /// Indicates that the caller is querying for topology information from the adapter. Data is returned using the
- /// STORAGE_PHYSICAL_TOPOLOGY_DESCRIPTOR structure.
- ///
- [CorrespondingType(typeof(STORAGE_PHYSICAL_TOPOLOGY_DESCRIPTOR))]
- StorageAdapterPhysicalTopologyProperty,
+ ///
+ /// Indicates that the caller is querying for the device I/O capability property. Data is returned using the
+ /// DEVICE_IO_CAPABILITY_DESCRIPTOR structure.
+ ///
+ [CorrespondingType(typeof(STORAGE_DEVICE_IO_CAPABILITY_DESCRIPTOR))]
+ StorageDeviceIoCapabilityProperty = 48,
- ///
- /// Indicates that the caller is querying for topology information from the device. Data is returned using the
- /// STORAGE_PHYSICAL_TOPOLOGY_DESCRIPTOR structure.
- ///
- [CorrespondingType(typeof(STORAGE_PHYSICAL_TOPOLOGY_DESCRIPTOR))]
- StorageDevicePhysicalTopologyProperty,
+ ///
+ /// Indicates that the caller is querying for protocol-specific data from the adapter. Data is returned using the
+ /// STORAGE_PROTOCOL_DATA_DESCRIPTOR structure. See the remarks for more info.
+ ///
+ [CorrespondingType(typeof(STORAGE_PROTOCOL_DATA_DESCRIPTOR))]
+ StorageAdapterProtocolSpecificProperty,
- /// Reserved for future use.
- StorageDeviceAttributesProperty,
+ ///
+ /// Indicates that the caller is querying for protocol-specific data from the device. Data is returned using the
+ /// STORAGE_PROTOCOL_DATA_DESCRIPTOR structure. See the remarks for more info.
+ ///
+ [CorrespondingType(typeof(STORAGE_PROTOCOL_DATA_DESCRIPTOR))]
+ StorageDeviceProtocolSpecificProperty,
- /// Provides health information about the storage device (specifically for the persistent memory stack).
- [CorrespondingType(typeof(STORAGE_DEVICE_MANAGEMENT_STATUS))]
- StorageDeviceManagementStatus,
+ ///
+ /// Indicates that the caller is querying temperature data from the adapter. Data is returned using the
+ /// STORAGE_TEMPERATURE_DATA_DESCRIPTOR structure.
+ ///
+ [CorrespondingType(typeof(STORAGE_TEMPERATURE_DATA_DESCRIPTOR))]
+ StorageAdapterTemperatureProperty,
- ///
- /// Indicates that the caller is querying for the adapter serial number. Data is returned using the STORAGE_ADAPTER_SERIAL_NUMBER structure.
- ///
- [CorrespondingType(typeof(STORAGE_ADAPTER_SERIAL_NUMBER))]
- StorageAdapterSerialNumberProperty,
+ ///
+ /// Indicates that the caller is querying for temperature data from the device. Data is returned using the
+ /// STORAGE_TEMPERATURE_DATA_DESCRIPTOR structure.
+ ///
+ [CorrespondingType(typeof(STORAGE_TEMPERATURE_DATA_DESCRIPTOR))]
+ StorageDeviceTemperatureProperty,
- /// Reserved for system use.
- StorageDeviceLocationProperty,
+ ///
+ /// Indicates that the caller is querying for topology information from the adapter. Data is returned using the
+ /// STORAGE_PHYSICAL_TOPOLOGY_DESCRIPTOR structure.
+ ///
+ [CorrespondingType(typeof(STORAGE_PHYSICAL_TOPOLOGY_DESCRIPTOR))]
+ StorageAdapterPhysicalTopologyProperty,
- /// Provides the non-uniform memory access (NUMA) node of the storage device.
- StorageDeviceNumaProperty,
+ ///
+ /// Indicates that the caller is querying for topology information from the device. Data is returned using the
+ /// STORAGE_PHYSICAL_TOPOLOGY_DESCRIPTOR structure.
+ ///
+ [CorrespondingType(typeof(STORAGE_PHYSICAL_TOPOLOGY_DESCRIPTOR))]
+ StorageDevicePhysicalTopologyProperty,
- /// Reserved for system use.
- StorageDeviceZonedDeviceProperty,
+ /// Reserved for future use.
+ StorageDeviceAttributesProperty,
- ///
- /// Provides the unsafe shutdown count value used to determine if the device data might have been lost during a power loss event
- /// (specifically for the persistent memory stack).
- ///
- StorageDeviceUnsafeShutdownCount,
+ /// Provides health information about the storage device (specifically for the persistent memory stack).
+ [CorrespondingType(typeof(STORAGE_DEVICE_MANAGEMENT_STATUS))]
+ StorageDeviceManagementStatus,
- ///
- /// Provides info on how many bytes have been read/write from a solid-state drive (SSD). This property is supported only for
- /// Non-Volatile Memory Express (NVMe) devices that implement a certain NVMe feature.
- ///
- StorageDeviceEnduranceProperty,
+ ///
+ /// Indicates that the caller is querying for the adapter serial number. Data is returned using the STORAGE_ADAPTER_SERIAL_NUMBER structure.
+ ///
+ [CorrespondingType(typeof(STORAGE_ADAPTER_SERIAL_NUMBER))]
+ StorageAdapterSerialNumberProperty,
- /// Provides info on the state of the LED associated with a storage device. This is a server-oriented feature.
- StorageDeviceLedStateProperty,
+ /// Reserved for system use.
+ StorageDeviceLocationProperty,
- /// Reserved for system use.
- StorageDeviceSelfEncryptionProperty = 64,
+ /// Provides the non-uniform memory access (NUMA) node of the storage device.
+ StorageDeviceNumaProperty,
- /// Provides identification info for a storage device that can be physically replaced with a Field Replacement Unit (FRU).
- StorageFruIdProperty
- }
+ /// Reserved for system use.
+ StorageDeviceZonedDeviceProperty,
+
+ ///
+ /// Provides the unsafe shutdown count value used to determine if the device data might have been lost during a power loss event
+ /// (specifically for the persistent memory stack).
+ ///
+ StorageDeviceUnsafeShutdownCount,
+
+ ///
+ /// Provides info on how many bytes have been read/write from a solid-state drive (SSD). This property is supported only for
+ /// Non-Volatile Memory Express (NVMe) devices that implement a certain NVMe feature.
+ ///
+ StorageDeviceEnduranceProperty,
+
+ /// Provides info on the state of the LED associated with a storage device. This is a server-oriented feature.
+ StorageDeviceLedStateProperty,
+
+ /// Reserved for system use.
+ StorageDeviceSelfEncryptionProperty = 64,
+
+ /// Provides identification info for a storage device that can be physically replaced with a Field Replacement Unit (FRU).
+ StorageFruIdProperty,
+
+ ///
+ StorageStackProperty
+ }
///
///
@@ -2919,4 +2960,4 @@ public enum WRITE_THROUGH
WriteThroughSupported,
}
}
-}
\ No newline at end of file
+}