STORAGE_HW_FIRMWARE_ACTIVATE structure (winioctl.h)

This structure contains information about the downloaded firmware to activate.

Syntax

typedef struct _STORAGE_HW_FIRMWARE_ACTIVATE {
  DWORD Version;
  DWORD Size;
  DWORD Flags;
  BYTE  Slot;
  BYTE  Reserved0[3];
} STORAGE_HW_FIRMWARE_ACTIVATE, *PSTORAGE_HW_FIRMWARE_ACTIVATE;

Members

Version

The version of this structure. This should be set to sizeof(STORAGE_HW_FIRMWARE_ACTIVATE).

Size

The size of this structure. This should be set to sizeof(STORAGE_HW_FIRMWARE_ACTIVATE).

Flags

The flags associated with the activation request. The following are valid flags that can be set in this member.

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_SWITCH_TO_EXISTING_FIRMWARE Indicates that the existing firmware image in the specified slot should be activated.
STORAGE_HW_FIRMWARE_REQUEST_FLAG_REPLACE_EXISTING_IMAGE Supported in Windows 11, version 24H2, and later.
Indicates that the existing firmware in the slot should be activated with a controller reset.

Slot

The slot with the firmware image that is to be activated.

Reserved0[3]

Reserved for future use.

Requirements

Requirement Value
Minimum supported client Windows 10 [desktop apps only]
Minimum supported server Windows Server 2016 [desktop apps only]
Header winioctl.h (include Windows.h)

See also

IOCTL_STORAGE_FIRMWARE_ACTIVATE

IOCTL_STORAGE_FIRMWARE_DOWNLOAD

IOCTL_STORAGE_FIRMWARE_GET_INFO

STORAGE_HW_FIRMWARE_DOWNLOAD

STORAGE_HW_FIRMWARE_INFO

STORAGE_HW_FIRMWARE_INFO_QUERY

STORAGE_HW_FIRMWARE_SLOT_INFO