STORAGE_PHYSICAL_DEVICE_DATA - NtDoc

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

typedef struct _STORAGE_PHYSICAL_DEVICE_DATA {
  ULONG                           DeviceId;
  ULONG                           Role;
  STORAGE_COMPONENT_HEALTH_STATUS HealthStatus;
  STORAGE_PROTOCOL_TYPE           CommandProtocol;
  STORAGE_SPEC_VERSION            SpecVersion;
  STORAGE_DEVICE_FORM_FACTOR      FormFactor;
  UCHAR                           Vendor[8];
  UCHAR                           Model[40];
  UCHAR                           FirmwareRevision[16];
  ULONGLONG                       Capacity;
  UCHAR                           PhysicalLocation[32];
  ULONG                           Reserved[2];
} STORAGE_PHYSICAL_DEVICE_DATA, *PSTORAGE_PHYSICAL_DEVICE_DATA;

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

typedef struct _STORAGE_PHYSICAL_DEVICE_DATA {
  DWORD                           DeviceId;
  DWORD                           Role;
  STORAGE_COMPONENT_HEALTH_STATUS HealthStatus;
  STORAGE_PROTOCOL_TYPE           CommandProtocol;
  STORAGE_SPEC_VERSION            SpecVersion;
  STORAGE_DEVICE_FORM_FACTOR      FormFactor;
  BYTE                            Vendor[8];
  BYTE                            Model[40];
  BYTE                            FirmwareRevision[16];
  DWORDLONG                       Capacity;
  BYTE                            PhysicalLocation[32];
  DWORD                           Reserved[2];
} STORAGE_PHYSICAL_DEVICE_DATA, *PSTORAGE_PHYSICAL_DEVICE_DATA;

View the official Win32 API reference

NtDoc

No description available.

Windows Driver Kit DDI reference (ns-ntddstor-_storage_physical_device_data)

STORAGE_PHYSICAL_DEVICE_DATA structure

Description

Specifies the physical data of a storage device.

Members

DeviceId

The hardware ID of the storage device.

Role

The role of the storage device. This value can be a bitmask of the following values to specify multiple roles:

HealthStatus

A STORAGE_COMPONENT_HEALTH_STATUS value that indicates the health status of a storage device.

CommandProtocol

A STORAGE_PROTOCOL_TYPE value that specifies the storage command protocols that are used between software and hardware.

SpecVersion

A STORAGE_SPEC_VERSION structure that specifies the storage specification version of the storage device.

FormFactor

A STORAGE_DEVICE_FORM_FACTOR value that indicates the form factor of a storage device.

Vendor[8]

The vendor name of the storage device.

Model[40]

The model name of the storage device.

FirmwareRevision[16]

The revision number of the storage device.

Capacity

The capacity of the storage device in units of kilobytes (1024 bytes).

PhysicalLocation[32]

This member is reserved for future use.

Reserved[2]

Reserved; do not use.

See also

STORAGE_PHYSICAL_NODE_DATA


Win32 API reference (ns-winioctl-storage_physical_device_data)

STORAGE_PHYSICAL_DEVICE_DATA structure

Description

Describes a physical storage device.

Members

DeviceId

Specifies the device ID.

Role

Value(s) of bitmask from STORAGE_COMPONENT_ROLE_xxx

HealthStatus

A STORAGE_COMPONENT_HEALTH_STATUS enumeration.

CommandProtocol

A STORAGE_PROTOCOL_TYPE enumeration.

SpecVersion

A STORAGE_SPEC_VERSION structure that specifies the supported storage spec version. For example: SBC 3, SATA 3.2, NVMe 1.2

FormFactor

A STORAGE_DEVICE_FORM_FACTOR enumeration.

Vendor

Specifies the device vendor.

Model

Specifies the device model.

FirmwareRevision

Specifies the firmware revision of the device.

Capacity

In units of kilobytes (1024 bytes).

PhysicalLocation

Reserved for future use.

Reserved