STORAGE_PROTOCOL_NVME_DATA_TYPE - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// ntddstor.h

typedef enum _STORAGE_PROTOCOL_NVME_DATA_TYPE {
  NVMeDataTypeUnknown,
  NVMeDataTypeIdentify,
  NVMeDataTypeLogPage,
  NVMeDataTypeFeature,
  NVMeDataTypeLogPageEx,
  NVMeDataTypeFeatureEx
} STORAGE_PROTOCOL_NVME_DATA_TYPE, *PSTORAGE_PROTOCOL_NVME_DATA_TYPE;

View the official Windows Driver Kit DDI reference
// winioctl.h

typedef enum _STORAGE_PROTOCOL_NVME_DATA_TYPE {
  NVMeDataTypeUnknown = 0,
  NVMeDataTypeIdentify,
  NVMeDataTypeLogPage,
  NVMeDataTypeFeature,
  NVMeDataTypeLogPageEx,
  NVMeDataTypeFeatureEx
} STORAGE_PROTOCOL_NVME_DATA_TYPE, *PSTORAGE_PROTOCOL_NVME_DATA_TYPE;

View the official Win32 API reference

NtDoc

No description available.

Windows Driver Kit DDI reference (ne-ntddstor-_storage_protocol_nvme_data_type)

STORAGE_PROTOCOL_NVME_DATA_TYPE enumeration

Description

Describes the type of NVMe protocol-specific data that is to be queried during an IOCTL_STORAGE_QUERY_PROPERTY request.

Constants

NVMeDataTypeUnknown

Unknown data type.

NVMeDataTypeIdentify

Get Identify data, which can be either Identify Controller data or Identify Namespace data.

When this type of data is being queried, fields in the STORAGE_PROTOCOL_SPECIFIC_DATA structure should have the following values:

NVMeDataTypeLogPage

Get an NVMe log page.

When this type of data is being queried, fields in the STORAGE_PROTOCOL_SPECIFIC_DATA structure should have the following values:

NVMeDataTypeFeature

Retrieved by command - GET FEATURES or SET FEATURES

Corresponding values in STORAGE_PROTOCOL_SPECIFIC_DATA (get) or STORAGE_PROTOCOL_SPECIFIC_DATA_EXT (set):

NVMeDataTypeLogPageEx

Retrieved by command - GET LOG PAGE

When this type of data is being queried, fields in the STORAGE_PROTOCOL_SPECIFIC_DATA_EXT structure should have the following values:

NVMeDataTypeFeatureEx

Retrieved by command - GET FEATURES or SET FEATURES

When this type of data is being queried, fields in the STORAGE_PROTOCOL_SPECIFIC_DATA_EXT structure should have the following values:

Remarks

When using IOCTL_STORAGE_QUERY_PROPERTY to retrieve protocol-specific information in the STORAGE_PROTOCOL_DATA_DESCRIPTOR, configure the STORAGE_PROPERTY_QUERY structure as follows:

To specify a type of NVMe protocol-specific information, configure the STORAGE_PROTOCOL_SPECIFIC_DATA structure as follows:

See also


Win32 API reference (ne-winioctl-storage_protocol_nvme_data_type)

STORAGE_PROTOCOL_NVME_DATA_TYPE enumeration

Description

Describes the type of NVMe protocol-specific data that's to be queried during an IOCTL_STORAGE_QUERY_PROPERTY request.

Constants

NVMeDataTypeUnknown:0

Unknown data type.

NVMeDataTypeIdentify

Identify data type. This can be either Identify Controller data or Identify Namespace data. When this type of data is being queried, the ProtocolDataRequestValue field of STORAGE_PROTOCOL_SPECIFIC_DATA will have a value of NVME_IDENTIFY_CNS_CONTROLLER for adapter or NVME_IDENTIFY_CNS_SPECIFIC_NAMESPACE for namespace. If the ProtocolDataRequestValue is NVME_IDENTIFY_CNS_SPECIFIC_NAMESPACE, the ProtocolDataRequestSubValue field from the STORAGE_PROTOCOL_SPECIFIC_DATA structure will have a value of the namespace ID.

NVMeDataTypeLogPage

Log page data type.

NVMeDataTypeFeature

Feature data type.

Remarks

When using IOCTL_STORAGE_QUERY_PROPERTY to retrieve protocol-specific information in the STORAGE_PROTOCOL_DATA_DESCRIPTOR, configure the STORAGE_PROPERTY_QUERY structure as follows:

To specify a type of NVMe protocol-specific information, configure the STORAGE_PROTOCOL_SPECIFIC_DATA structure as follows:

See also