STORAGE_HW_FIRMWARE_DOWNLOAD structure (ntddstor.h)
This structure contains a firmware image payload to be downloaded to the target.
Syntax
typedef struct _STORAGE_HW_FIRMWARE_DOWNLOAD {
ULONG Version;
ULONG Size;
ULONG Flags;
UCHAR Slot;
UCHAR Reserved[3];
ULONGLONG Offset;
ULONGLONG BufferSize;
UCHAR ImageBuffer[ANYSIZE_ARRAY];
} STORAGE_HW_FIRMWARE_DOWNLOAD, *PSTORAGE_HW_FIRMWARE_DOWNLOAD;
Members
Version
The version of this structure. This should be set to sizeof(STORAGE_HW_FIRMWARE_DOWNLOAD).
Size
The size of this structure and the download image buffer.
Flags
Flags associated with this download. The following are valid flags that this member can hold.
Flag | Description |
---|---|
STORAGE_HW_FIRMWARE_REQUEST_FLAG_CONTROLLER | Indicates that the target of the request is a controller or adapter, different than the device handle or object itself (e.g. NVMe SSD or HBA). |
STORAGE_HW_FIRMWARE_REQUEST_FLAG_LAST_SEGMENT | Indicates that the current firmware image segment is the last one. |
Slot
The slot number that the firmware image will be downloaded to.
Reserved[3]
Reserved for future use.
Offset
The offset in this buffer of where the Image file begins. This should be aligned to ImagePayloadAlignment from STORAGE_HW_FIRMWARE_INFO.
BufferSize
The buffer size of the ImageBuffer. This should be a multiple of ImagePayloadAlignment from STORAGE_HW_FIRMWARE_INFO.
ImageBuffer[ANYSIZE_ARRAY]
The firmware image file.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 10 |
Minimum supported server | Windows Server 2016 |
Header | ntddstor.h |