headers: Add missing symbols in winioctl.h
Signed-off-by: Biswapriyo Nath <nathbappai@gmail.com>
Signed-off-by: LIU Hao <lh_mouse@126.com>
diff --git a/mingw-w64-headers/include/winioctl.h b/mingw-w64-headers/include/winioctl.h
index b6c7b9a..55aa288 100644
--- a/mingw-w64-headers/include/winioctl.h
+++ b/mingw-w64-headers/include/winioctl.h
@@ -2833,6 +2833,85 @@
STORAGE_PROTOCOL_SPECIFIC_DATA_EXT ProtocolSpecificData;
} STORAGE_PROTOCOL_DATA_DESCRIPTOR_EXT, *PSTORAGE_PROTOCOL_DATA_DESCRIPTOR_EXT;
+#define STORAGE_TEMPERATURE_VALUE_NOT_REPORTED 0x8000
+
+typedef struct _STORAGE_TEMPERATURE_INFO {
+ WORD Index;
+ SHORT Temperature;
+ SHORT OverThreshold;
+ SHORT UnderThreshold;
+ BOOLEAN OverThresholdChangable;
+ BOOLEAN UnderThresholdChangable;
+ BOOLEAN EventGenerated;
+ BYTE Reserved0;
+ DWORD Reserved1;
+} STORAGE_TEMPERATURE_INFO, *PSTORAGE_TEMPERATURE_INFO;
+
+typedef struct _STORAGE_TEMPERATURE_DATA_DESCRIPTOR {
+ DWORD Version;
+ DWORD Size;
+ SHORT CriticalTemperature;
+ SHORT WarningTemperature;
+ WORD InfoCount;
+ BYTE Reserved0[2];
+ DWORD Reserved1[2];
+ STORAGE_TEMPERATURE_INFO TemperatureInfo[ANYSIZE_ARRAY];
+} STORAGE_TEMPERATURE_DATA_DESCRIPTOR, *PSTORAGE_TEMPERATURE_DATA_DESCRIPTOR;
+
+#define STORAGE_TEMPERATURE_THRESHOLD_FLAG_ADAPTER_REQUEST 0x0001
+
+typedef struct _STORAGE_TEMPERATURE_THRESHOLD {
+ DWORD Version;
+ DWORD Size;
+ WORD Flags;
+ WORD Index;
+ SHORT Threshold;
+ BOOLEAN OverThreshold;
+ BYTE Reserved;
+} STORAGE_TEMPERATURE_THRESHOLD, *PSTORAGE_TEMPERATURE_THRESHOLD;
+
+#define STORAGE_PROTOCOL_STRUCTURE_VERSION 0x1
+
+typedef struct _STORAGE_PROTOCOL_COMMAND {
+ DWORD Version;
+ DWORD Length;
+ STORAGE_PROTOCOL_TYPE ProtocolType;
+ DWORD Flags;
+ DWORD ReturnStatus;
+ DWORD ErrorCode;
+ DWORD CommandLength;
+ DWORD ErrorInfoLength;
+ DWORD DataToDeviceTransferLength;
+ DWORD DataFromDeviceTransferLength;
+ DWORD TimeOutValue;
+ DWORD ErrorInfoOffset;
+ DWORD DataToDeviceBufferOffset;
+ DWORD DataFromDeviceBufferOffset;
+ DWORD CommandSpecific;
+ DWORD Reserved0;
+ DWORD FixedProtocolReturnData;
+ DWORD Reserved1[3];
+ BYTE Command[ANYSIZE_ARRAY];
+} STORAGE_PROTOCOL_COMMAND, *PSTORAGE_PROTOCOL_COMMAND;
+
+#define STORAGE_PROTOCOL_COMMAND_FLAG_ADAPTER_REQUEST 0x80000000
+
+#define STORAGE_PROTOCOL_STATUS_PENDING 0x0
+#define STORAGE_PROTOCOL_STATUS_SUCCESS 0x1
+#define STORAGE_PROTOCOL_STATUS_ERROR 0x2
+#define STORAGE_PROTOCOL_STATUS_INVALID_REQUEST 0x3
+#define STORAGE_PROTOCOL_STATUS_NO_DEVICE 0x4
+#define STORAGE_PROTOCOL_STATUS_BUSY 0x5
+#define STORAGE_PROTOCOL_STATUS_DATA_OVERRUN 0x6
+#define STORAGE_PROTOCOL_STATUS_INSUFFICIENT_RESOURCES 0x7
+#define STORAGE_PROTOCOL_STATUS_THROTTLED_REQUEST 0x8
+#define STORAGE_PROTOCOL_STATUS_NOT_SUPPORTED 0xFF
+
+#define STORAGE_PROTOCOL_COMMAND_LENGTH_NVME 0x40
+
+#define STORAGE_PROTOCOL_SPECIFIC_NVME_ADMIN_COMMAND 0x01
+#define STORAGE_PROTOCOL_SPECIFIC_NVME_NVM_COMMAND 0x02
+
#if (_WIN32_WINNT >= 0x0601)
typedef struct _REQUEST_OPLOCK_INPUT_BUFFER {
WORD StructureVersion;