Поделиться через


структура NVME_COMMAND (nvme.h)

Содержит параметры для всех команд в наборах команд Администратор и NVM.

Синтаксис

typedef struct {
  NVME_COMMAND_DWORD0 CDW0;
  ULONG               NSID;
  ULONG               Reserved0[2];
  ULONGLONG           MPTR;
  ULONGLONG           PRP1;
  ULONGLONG           PRP2;
  union {
    struct {
      ULONG CDW10;
      ULONG CDW11;
      ULONG CDW12;
      ULONG CDW13;
      ULONG CDW14;
      ULONG CDW15;
    } GENERAL;
    struct {
      NVME_CDW10_IDENTIFY CDW10;
      NVME_CDW11_IDENTIFY CDW11;
      ULONG               CDW12;
      ULONG               CDW13;
      ULONG               CDW14;
      ULONG               CDW15;
    } IDENTIFY;
    struct {
      NVME_CDW10_ABORT CDW10;
      ULONG            CDW11;
      ULONG            CDW12;
      ULONG            CDW13;
      ULONG            CDW14;
      ULONG            CDW15;
    } ABORT;
    struct {
      NVME_CDW10_GET_FEATURES CDW10;
      NVME_CDW11_FEATURES     CDW11;
      ULONG                   CDW12;
      ULONG                   CDW13;
      ULONG                   CDW14;
      ULONG                   CDW15;
    } GETFEATURES;
    struct {
      NVME_CDW10_SET_FEATURES CDW10;
      NVME_CDW11_FEATURES     CDW11;
      NVME_CDW12_FEATURES     CDW12;
      NVME_CDW13_FEATURES     CDW13;
      NVME_CDW14_FEATURES     CDW14;
      NVME_CDW15_FEATURES     CDW15;
    } SETFEATURES;
    struct {
      union {
        NVME_CDW10_GET_LOG_PAGE     CDW10;
        NVME_CDW10_GET_LOG_PAGE_V13 CDW10_V13;
      };
      NVME_CDW11_GET_LOG_PAGE CDW11;
      NVME_CDW12_GET_LOG_PAGE CDW12;
      NVME_CDW13_GET_LOG_PAGE CDW13;
      NVME_CDW14_GET_LOG_PAGE CDW14;
      ULONG                   CDW15;
    } GETLOGPAGE;
    struct {
      NVME_CDW10_CREATE_IO_QUEUE CDW10;
      NVME_CDW11_CREATE_IO_CQ    CDW11;
      ULONG                      CDW12;
      ULONG                      CDW13;
      ULONG                      CDW14;
      ULONG                      CDW15;
    } CREATEIOCQ;
    struct {
      NVME_CDW10_CREATE_IO_QUEUE CDW10;
      NVME_CDW11_CREATE_IO_SQ    CDW11;
      ULONG                      CDW12;
      ULONG                      CDW13;
      ULONG                      CDW14;
      ULONG                      CDW15;
    } CREATEIOSQ;
    struct {
      NVME_CDW10_DATASET_MANAGEMENT CDW10;
      NVME_CDW11_DATASET_MANAGEMENT CDW11;
      ULONG                         CDW12;
      ULONG                         CDW13;
      ULONG                         CDW14;
      ULONG                         CDW15;
    } DATASETMANAGEMENT;
    struct {
      NVME_CDW10_SECURITY_SEND_RECEIVE CDW10;
      NVME_CDW11_SECURITY_SEND         CDW11;
      ULONG                            CDW12;
      ULONG                            CDW13;
      ULONG                            CDW14;
      ULONG                            CDW15;
    } SECURITYSEND;
    struct {
      NVME_CDW10_SECURITY_SEND_RECEIVE CDW10;
      NVME_CDW11_SECURITY_RECEIVE      CDW11;
      ULONG                            CDW12;
      ULONG                            CDW13;
      ULONG                            CDW14;
      ULONG                            CDW15;
    } SECURITYRECEIVE;
    struct {
      NVME_CDW10_FIRMWARE_DOWNLOAD CDW10;
      NVME_CDW11_FIRMWARE_DOWNLOAD CDW11;
      ULONG                        CDW12;
      ULONG                        CDW13;
      ULONG                        CDW14;
      ULONG                        CDW15;
    } FIRMWAREDOWNLOAD;
    struct {
      NVME_CDW10_FIRMWARE_ACTIVATE CDW10;
      ULONG                        CDW11;
      ULONG                        CDW12;
      ULONG                        CDW13;
      ULONG                        CDW14;
      ULONG                        CDW15;
    } FIRMWAREACTIVATE;
    struct {
      NVME_CDW10_FORMAT_NVM CDW10;
      ULONG                 CDW11;
      ULONG                 CDW12;
      ULONG                 CDW13;
      ULONG                 CDW14;
      ULONG                 CDW15;
    } FORMATNVM;
    struct {
      NVME_CDW10_DIRECTIVE_RECEIVE CDW10;
      NVME_CDW11_DIRECTIVE_RECEIVE CDW11;
      NVME_CDW12_DIRECTIVE_RECEIVE CDW12;
      ULONG                        CDW13;
      ULONG                        CDW14;
      ULONG                        CDW15;
    } DIRECTIVERECEIVE;
    struct {
      NVME_CDW10_DIRECTIVE_SEND CDW10;
      NVME_CDW11_DIRECTIVE_SEND CDW11;
      NVME_CDW12_DIRECTIVE_SEND CDW12;
      ULONG                     CDW13;
      ULONG                     CDW14;
      ULONG                     CDW15;
    } DIRECTIVESEND;
    struct {
      NVME_CDW10_SANITIZE CDW10;
      NVME_CDW11_SANITIZE CDW11;
      ULONG               CDW12;
      ULONG               CDW13;
      ULONG               CDW14;
      ULONG               CDW15;
    } SANITIZE;
    struct {
      ULONG                 LBALOW;
      ULONG                 LBAHIGH;
      NVME_CDW12_READ_WRITE CDW12;
      NVME_CDW13_READ_WRITE CDW13;
      ULONG                 CDW14;
      NVME_CDW15_READ_WRITE CDW15;
    } READWRITE;
    struct {
      NVME_CDW10_RESERVATION_ACQUIRE CDW10;
      ULONG                          CDW11;
      ULONG                          CDW12;
      ULONG                          CDW13;
      ULONG                          CDW14;
      ULONG                          CDW15;
    } RESERVATIONACQUIRE;
    struct {
      NVME_CDW10_RESERVATION_REGISTER CDW10;
      ULONG                           CDW11;
      ULONG                           CDW12;
      ULONG                           CDW13;
      ULONG                           CDW14;
      ULONG                           CDW15;
    } RESERVATIONREGISTER;
    struct {
      NVME_CDW10_RESERVATION_RELEASE CDW10;
      ULONG                          CDW11;
      ULONG                          CDW12;
      ULONG                          CDW13;
      ULONG                          CDW14;
      ULONG                          CDW15;
    } RESERVATIONRELEASE;
    struct {
      NVME_CDW10_RESERVATION_REPORT CDW10;
      NVME_CDW11_RESERVATION_REPORT CDW11;
      ULONG                         CDW12;
      ULONG                         CDW13;
      ULONG                         CDW14;
      ULONG                         CDW15;
    } RESERVATIONREPORT;
    struct {
      NVME_CDW10_ZONE_MANAGEMENT_SEND CDW1011;
      ULONG                           CDW12;
      NVME_CDW13_ZONE_MANAGEMENT_SEND CDW13;
      ULONG                           CDW14;
      ULONG                           CDW15;
    } ZONEMANAGEMENTSEND;
    struct {
      NVME_CDW10_ZONE_MANAGEMENT_RECEIVE CDW1011;
      ULONG                              DWORDCOUNT;
      NVME_CDW13_ZONE_MANAGEMENT_RECEIVE CDW13;
      ULONG                              CDW14;
      ULONG                              CDW15;
    } ZONEMANAGEMENTRECEIVE;
    struct {
      NVME_CDW10_ZONE_APPEND CDW1011;
      NVME_CDW12_ZONE_APPEND CDW12;
      ULONG                  CDW13;
      ULONG                  ILBRT;
      NVME_CDW15_ZONE_APPEND CDW15;
    } ZONEAPPEND;
  } u;
} NVME_COMMAND, *PNVME_COMMAND;

Члены

CDW0

Структура NVME_COMMAND_DWORD0, содержащая параметры, общие для всех команд Администратор и NVM.

NSID

Идентификатор пространства имен, к которому применяется эта команда.

Если идентификатор пространства имен не используется для команды, это поле должно быть очищено до 0h. Если команда применяется ко всем пространствам имен, доступным данному контроллеру, то для этого поля должно быть задано значение FFFFFFFFh.

Если не указано иное, указание неактивного идентификатора пространства имен в команде, которая использует идентификатор пространства имен, приведет к прерыванию команды контроллером с состоянием NVME_STATUS_INVALID_FIELD_IN_COMMAND. Если указать недопустимый идентификатор пространства имен в команде, которая использует идентификатор пространства имен, контроллер прервет команду с состоянием NVME_STATUS_INVALID_NAMESPACE_OR_FORMAT.

Reserved0[2]

MPTR

Адрес непрерывного физического буфера метаданных.

Это поле используется только в том случае, если метаданные не чередуются с данными логического блока, как указано в поле MS структуры команд NVME_CDW10_FORMAT_NVM . Это поле выравнивается по Dword.

PRP1

Структура NVME_PRP_ENTRY , содержащая первую запись PRP для команды или указатель списка PRP в зависимости от команды.

PRP2

Это поле зарезервировано, если передача данных не пересекает границу страницы памяти. В противном случае он содержит структуру NVME_PRP_ENTRY , которая:

  1. Указывает базовый адрес страницы второй страницы памяти, если передача данных пересекает ровно одну границу страницы памяти. Например, в одной из следующих ситуаций:

    • Длина передачи данных команды равна размеру одной страницы памяти, а часть смещения поля "Базовый адрес и смещение страницы"prP1 не равна нулю.
    • Часть смещения поля PBAOPRP1 равна нулю, а длина передачи данных команды превышает одну страницу памяти и меньше или равна двум страницам памяти.
  2. Указатель списка PRP, если передача данных пересекает несколько границ страниц памяти. Например, в одной из следующих ситуаций:

    • Длина передачи данных команды больше или равна двум страницам памяти, но смещение поля PBAOPRP1 не равно нулю.
    • Длина передачи данных команды равна размеру более двух страниц памяти, а часть смещения поля PBAOPRP1 равна нулю.

u

Объединение всех командных структур.

u.GENERAL

Структура, содержащая поля данных для общих команд.

u.GENERAL.CDW10

Поля данных Command DWord 10 для общих команд.

u.GENERAL.CDW11

Поля данных command DWord 11 для общих команд.

u.GENERAL.CDW12

Поля данных команды DWord 12 для общих команд.

u.GENERAL.CDW13

Поля данных command DWord 13 для общих команд.

u.GENERAL.CDW14

Поля данных command DWord 14 для общих команд.

u.GENERAL.CDW15

Поля данных команды DWord 15 для общих команд.

u.IDENTIFY

Структура, содержащая параметры для команды Identify. Команда Администратор, которая возвращает буфер данных, описывающий сведения о подсистеме NVM, контроллере или пространствах имен.

Команда Определить использует поля PRP Entry 1 (PRP1), PRP Entry 2 (PRP2), Command Dword 10 (CDW10) и Command Dword 11 (CDW11). Все остальные поля, относящиеся к командам, зарезервированы.

u.IDENTIFY.CDW10

Структура NVME_CDW10_IDENTIFY , содержащая параметры command DWord 10 для команды Identify.

u.IDENTIFY.CDW11

Структура NVME_CDW11_IDENTIFY , содержащая параметры command DWord 11 для команды Identify.

u.IDENTIFY.CDW12

Поля данных command DWord 12 для команды Identify.

u.IDENTIFY.CDW13

Поля данных команды DWord 13 для команды Identify.

u.IDENTIFY.CDW14

Поля данных Command DWord 14 для команды Identify.

u.IDENTIFY.CDW15

Поля данных command DWord 15 для команды Identify.

u.ABORT

Структура , содержащая параметры для команды Abort. Команда Администратор, используемая для прерывания определенной команды, ранее отправленной в очередь отправки Администратор или очередь отправки ввода-вывода.

Команда Abort использует поля Command Dword 10 (CDW10). Все остальные поля, относящиеся к командам, зарезервированы.

u.ABORT.CDW10

Структура NVME_CDW10_ABORT , содержащая параметры command DWord 10 для команды abort.

u.ABORT.CDW11

Поля данных команды DWord 11 для команды abort.

u.ABORT.CDW12

Поля данных команды DWord 12 для команды abort.

u.ABORT.CDW13

Поля данных команды DWord 13 для команды abort.

u.ABORT.CDW14

Поля данных команды DWord 14 для команды abort.

u.ABORT.CDW15

Поля данных команды DWord 15 для команды Abort.

u.GETFEATURES

Структура, содержащая параметры для команды Get Features. Команда Администратор, извлекающая атрибуты указанного компонента.

Команда Get Features использует поля PRP Entry 1 (PRP1), PRP Entry 2 (PRP2), Command Dword 10 (CDW10) и Command Dword 11 (CDW11). Все остальные поля, относящиеся к командам, зарезервированы.

u.GETFEATURES.CDW10

Структура NVME_CDW10_GET_FEATURES , содержащая параметры command DWord 10 для команды Get Features.

u.GETFEATURES.CDW11

Структура NVME_CDW11_FEATURES , содержащая параметры command DWord 11 для команды Get Features.

u.GETFEATURES.CDW12

Поля данных команды DWord 12 для команды Get Features.

u.GETFEATURES.CDW13

Поля данных команды DWord 13 для команды Get Features.

u.GETFEATURES.CDW14

Поля данных команды DWord 14 для команды Get Features.

u.GETFEATURES.CDW15

Поля данных команды DWord 15 для команды Get Features.

u.SETFEATURES

Структура, содержащая параметры для команды Set Features. Команда Администратор, которая задает атрибуты указанного компонента.

Команда Set Features использует поля PRP Entry 1 (PRP1), PRP Entry 2 (PRP2), Command Dword 10 (CDW10), Command Dword 11 (CDW11), Command Dword 12 (CDW12), Command Dword 13 (CDW13), Command Dword 14 (CDW14) и Command Dword 15 (CDW15). Все остальные поля, относящиеся к командам, зарезервированы.

u.SETFEATURES.CDW10

Структура NVME_CDW10_SET_FEATURES , содержащая параметры command DWord 10 для команды Set Features.

u.SETFEATURES.CDW11

Структура NVME_CDW11_FEATURES , содержащая параметры command DWord 11 для команды Set Features.

u.SETFEATURES.CDW12

Структура NVME_CDW12_FEATURES , содержащая параметры command DWord 12 для команды Set Features.

u.SETFEATURES.CDW13

Структура NVME_CDW13_FEATURES , содержащая параметры command DWord 13 для команды Set Features.

u.SETFEATURES.CDW14

Структура NVME_CDW14_FEATURES , содержащая параметры command DWord 14 для команды Set Features.

u.SETFEATURES.CDW15

Структура NVME_CDW15_FEATURES , содержащая параметры command DWord 15 для команды Set Features.

u.GETLOGPAGE

Структура, содержащая параметры для команды Получения страницы журнала. Команда Администратор, которая возвращает буфер данных, содержащий запрошенную страницу журнала.

Команда Получить страницу журнала использует поля PRP Entry 1 (PRP1), PRP Entry 2 (PRP2), Command Dword 10 (CDW10 и CDW10_V13), Command Dword 11 (CDW11), Command Dword 12 (CDW12) и Command Dword 13 (CDW13). Все остальные поля, относящиеся к командам, зарезервированы.

u.GETLOGPAGE.CDW10

Структура NVME_CDW10_GET_LOG_PAGE , содержащая параметры command DWord 10 для команды Get Log Page, которые соответствуют спецификациям NVMe до версии 1.3.

u.GETLOGPAGE.CDW10_V13

Структура NVME_CDW10_GET_LOG_PAGE_V13 , содержащая параметры команды DWord 10 для команды Получить страницу журнала, соответствующие спецификации NVMe версии 1.3 или более поздней.

u.GETLOGPAGE.CDW11

Структура NVME_CDW11_GET_LOG_PAGE](ns-nvme-nvme_cdw11_get_log_page.md), содержащая параметры Command DWord 11 для команды Получить страницу журнала.

u.GETLOGPAGE.CDW12

Структура NVME_CDW12_GET_LOG_PAGE](ns-nvme-nvme_cdw12_get_log_page.md), содержащая параметры Command DWord 12 для команды Получить страницу журнала.

u.GETLOGPAGE.CDW13

Структура NVME_CDW13_GET_LOG_PAGE](ns-nvme-nvme_cdw13_get_log_page.md), содержащая параметры Command DWord 13 для команды Получить страницу журнала.

u.GETLOGPAGE.CDW14

Поля данных команды DWord 14 для команды Получить страницу журнала.

u.GETLOGPAGE.CDW15

Поля данных команды DWord 15 для команды Получить страницу журнала.

u.CREATEIOCQ

Структура , содержащая параметры для команды создания очереди завершения ввода-вывода. Команда Администратор, используемая для создания всех очередей завершения ввода-вывода, за исключением очереди завершения Администратор.

Команда Create IO Completion Queue использует поля PRP Entry 1 (PRP1), Command Dword 10 (CDW10) и Command Dword 11 (CDW11). Все остальные поля, относящиеся к командам, зарезервированы.

u.CREATEIOCQ.CDW10

Структура NVME_CDW10_CREATE_IO_QUEUE , содержащая параметры команды DWord 10 для команды Создать очередь завершения ввода-вывода.

u.CREATEIOCQ.CDW11

Структура NVME_CDW11_CREATE_IO_CQ , содержащая параметры command DWord 11 для команды Создать очередь завершения ввода-вывода.

u.CREATEIOCQ.CDW12

Поля данных команды DWord 12 для команды Создать очередь завершения ввода-вывода.

u.CREATEIOCQ.CDW13

Поля данных команды DWord 13 для команды Создать очередь завершения ввода-вывода.

u.CREATEIOCQ.CDW14

Поля данных команды DWord 14 для команды Создать очередь завершения ввода-вывода.

u.CREATEIOCQ.CDW15

Поля данных команды DWord 15 для команды Создать очередь завершения ввода-вывода.

u.CREATEIOSQ

Структура , содержащая параметры для команды создания очереди отправки ввода-вывода. Команда Администратор, используемая для создания очередей отправки ввода-вывода.

Команда Create IO Submission Queue использует поля PRP Entry 1 (PRP1), Command Dword 10 (CDW10) и Command Dword 11 (CDW11). Все остальные поля, относящиеся к командам, зарезервированы.

u.CREATEIOSQ.CDW10

Структура NVME_CDW10_CREATE_IO_QUEUE , содержащая параметры команды DWord 10 для команды Создать очередь отправки ввода-вывода.

u.CREATEIOSQ.CDW11

Структура NVME_CDW11_CREATE_IO_SQ , содержащая параметры команды DWord 11 для команды Создать очередь отправки ввода-вывода.

u.CREATEIOSQ.CDW12

Поля данных команды DWord 12 для команды Создать очередь отправки ввода-вывода.

u.CREATEIOSQ.CDW13

Поля данных команды DWord 13 для команды Create IO Submission Queue (Создать очередь отправки ввода-вывода).

u.CREATEIOSQ.CDW14

Поля данных команды DWord 14 для команды Create IO Submission Queue (Создать очередь отправки ввода-вывода).

u.CREATEIOSQ.CDW15

Поля данных команды DWord 15 для команды Create IO Submission Queue (Создать очередь отправки ввода-вывода).

u.DATASETMANAGEMENT

Структура, содержащая параметры для команды управления набором данных. Команда NVM, используемая узлом для указания атрибутов для диапазонов логических блоков.

Команда Dataset Management использует поля Command Dword 10 (CDW10) и Command Dword 11 (CDW11). Если команда использует PRP для передачи данных, то используются поля PRP Entry 1 (PRP1) и PRP Entry 2 (PRP2). Все остальные поля, относящиеся к командам, зарезервированы.

u.DATASETMANAGEMENT.CDW10

Структура NVME_CDW10_DATASET_MANAGEMENT , содержащая параметры команды DWord 10 для команды Dataset Management.

u.DATASETMANAGEMENT.CDW11

Структура NVME_CDW11_DATASET_MANAGEMENT , содержащая параметры команды DWord 11 для команды Dataset Management.

u.DATASETMANAGEMENT.CDW12

Поля данных команды DWord 12 для команды Управление наборами данных.

u.DATASETMANAGEMENT.CDW13

Поля данных команды DWord 13 для команды Управление наборами данных.

u.DATASETMANAGEMENT.CDW14

Поля данных команды DWord 14 для команды Управление наборами данных.

u.DATASETMANAGEMENT.CDW15

Поля данных команды DWord 15 для команды Управление наборами данных.

u.SECURITYSEND

Структура, содержащая параметры для команды отправки безопасности. Команда Администратор, используемая для передачи данных протокола безопасности контроллеру.

Команда Security Send использует поля PRP Entry 1 (PRP1), PRP Entry 2 (PRP2), Command Dword 10 (CDW10) и Command Dword 11 (CDW11). Все остальные поля, относящиеся к командам, зарезервированы.

u.SECURITYSEND.CDW10

Структура NVME_CDW10_SECURITY_SEND_RECEIVE , содержащая параметры команды DWord 10 для команды Security Send.

u.SECURITYSEND.CDW11

Структура NVME_CDW11_SECURITY_SEND , содержащая параметры command DWord 11 для команды Security Send.

u.SECURITYSEND.CDW12

Поля данных command DWord 12 для команды Security Send.

u.SECURITYSEND.CDW13

Поля данных command DWord 13 для команды Security Send.

u.SECURITYSEND.CDW14

Поля данных command DWord 14 для команды Security Send.

u.SECURITYSEND.CDW15

Поля данных command DWord 15 для команды Security Send.

u.SECURITYRECEIVE

Структура, содержащая параметры для команды получения безопасности. Команда Администратор, которая передает состояние и результат данных одной или нескольких команд security Send, которые ранее были отправлены на контроллер.

Команда получения безопасности использует поля PRP Entry 1 (PRP1), PRP Entry 2 (PRP2), Command Dword 10 (CDW10) и Command Dword 11 (CDW11). Все остальные поля, относящиеся к командам, зарезервированы.

u.SECURITYRECEIVE.CDW10

Структура NVME_CDW10_SECURITY_SEND_RECEIVE , содержащая параметры команды DWord 10 для команды получения безопасности.

u.SECURITYRECEIVE.CDW11

Структура NVME_CDW11_SECURITY_RECEIVE , содержащая параметры command DWord 11 для команды Получения безопасности.

u.SECURITYRECEIVE.CDW12

Поля данных command DWord 12 для команды Security Receive.

u.SECURITYRECEIVE.CDW13

Поля данных command DWord 13 для команды Получения безопасности.

u.SECURITYRECEIVE.CDW14

Поля данных command DWord 14 для команды Security Receive.

u.SECURITYRECEIVE.CDW15

Поля данных command DWord 15 для команды Security Receive.

u.FIRMWAREDOWNLOAD

Структура, содержащая параметры для команды загрузки образа встроенного ПО. Команда Администратор, которая используется для копирования нового образа встроенного ПО (полностью или частично) на контроллер.

Команда Загрузки образа встроенного ПО использует поля PRP Entry 1 (PRP1), PRP Entry 2 (PRP2), Command Dword 10 (CDW10) и Command Dword 11 (CDW11). Все остальные поля, относящиеся к командам, зарезервированы.

u.FIRMWAREDOWNLOAD.CDW10

Структура NVME_CDW10_FIRMWARE_DOWNLOAD , содержащая параметры команды DWord 10 для команды Загрузки образа встроенного ПО.

u.FIRMWAREDOWNLOAD.CDW11

Структура NVME_CDW11_FIRMWARE_DOWNLOAD , содержащая параметры команды DWord 11 для команды Загрузки образа встроенного ПО.

u.FIRMWAREDOWNLOAD.CDW12

Поля данных команды DWord 12 для команды Загрузки образа встроенного ПО.

u.FIRMWAREDOWNLOAD.CDW13

Поля данных команды DWord 13 для команды Загрузки образа встроенного ПО.

u.FIRMWAREDOWNLOAD.CDW14

Поля данных команды DWord 14 для команды Загрузки образа встроенного ПО.

u.FIRMWAREDOWNLOAD.CDW15

Поля данных команды DWord 15 для команды Загрузки образа встроенного ПО.

u.FIRMWAREACTIVATE

Структура, содержащая параметры для команды фиксации встроенного ПО. Команда Администратор, которая используется для проверки загрузки допустимого образа встроенного ПО и фиксации этой редакции в определенном слоте встроенного ПО.

Примечание

В предыдущих версиях NVM Express команда Firmware Commit называлась Активация встроенного ПО.

Команда Firmware Commit использует поле Command Dword 10 (CDW10). Все остальные поля, относящиеся к командам, зарезервированы.

u.FIRMWAREACTIVATE.CDW10

Структура NVME_CDW10_FIRMWARE_ACTIVATE , содержащая параметры command DWord 10 для команды "Фиксация встроенного ПО".

u.FIRMWAREACTIVATE.CDW11

Поля данных команды DWord 11 для команды "Фиксация встроенного ПО".

u.FIRMWAREACTIVATE.CDW12

Поля данных command DWord 12 для команды Firmware Commit.

u.FIRMWAREACTIVATE.CDW13

Поля данных команды DWord 13 для команды Firmware Commit.

u.FIRMWAREACTIVATE.CDW14

Поля данных команды DWord 14 для команды Firmware Commit.

u.FIRMWAREACTIVATE.CDW15

Поля данных command DWord 15 для команды Firmware Commit.

u.FORMATNVM

Структура, содержащая параметры для команды Форматирование NVM. Команда Администратор, используемая для низкоуровневого форматирования носителя NVM.

Команда Формат NVM использует поле Command Dword 10 (CDW10). Все остальные поля, относящиеся к командам, зарезервированы.

u.FORMATNVM.CDW10

Структура NVME_CDW10_FORMAT_NVM , содержащая параметры команды DWord 10 для команды Format NVM.

u.FORMATNVM.CDW11

Поля данных команды DWord 11 для команды Формат NVM.

u.FORMATNVM.CDW12

Поля данных команды DWord 12 для команды Формат NVM.

u.FORMATNVM.CDW13

Поля данных команды DWord 13 для команды Формат NVM.

u.FORMATNVM.CDW14

Поля данных command DWord 14 для команды Формат NVM.

u.FORMATNVM.CDW15

Поля данных команды DWord 15 для команды Формат NVM.

u.DIRECTIVERECEIVE

Структура, содержащая параметры для получения директивы команды Администратор.

Команда Получения директив использует поля Command Dword 10 (CDW10), Command Dword 11 (CDW11) и Command Dword 12 (CDW12). Все остальные поля, относящиеся к командам, зарезервированы.

u.DIRECTIVERECEIVE.CDW10

Структура NVME_CDW10_DIRECTIVE_RECEIVE , содержащая параметры команды DWord 10 для команды Получения директив.

u.DIRECTIVERECEIVE.CDW11

Структура NVME_CDW11_DIRECTIVE_RECEIVE , содержащая параметры команды DWord 11 для команды Получения директив.

u.DIRECTIVERECEIVE.CDW12

Структура NVME_CDW12_DIRECTIVE_RECEIVE , содержащая параметры команды DWord 12 для команды Получения директивы.

u.DIRECTIVERECEIVE.CDW13

Поля данных команды DWord 13 для команды Получения директивы.

u.DIRECTIVERECEIVE.CDW14

Поля данных команды DWord 14 для команды Получения директивы.

u.DIRECTIVERECEIVE.CDW15

Поля данных command DWord 15 для команды Получения директивы.

u.DIRECTIVESEND

Структура, содержащая параметры для отправки директивы команды Администратор.

Команда Отправить директивы использует поля Command Dword 10 (CDW10), Command Dword 11 (CDW11) и Command Dword 12 (CDW12). Все остальные поля, относящиеся к командам, зарезервированы.

u.DIRECTIVESEND.CDW10

Структура NVME_CDW10_DIRECTIVE_SEND , содержащая параметры команды DWord 10 для команды Отправить директивы.

u.DIRECTIVESEND.CDW11

Структура NVME_CDW11_DIRECTIVE_SEND , содержащая параметры команды DWord 11 для команды Отправить директивы.

u.DIRECTIVESEND.CDW12

Структура NVME_CDW12_DIRECTIVE_SEND , содержащая параметры команды DWord 12 для команды Директива Send.

u.DIRECTIVESEND.CDW13

Поля данных команды DWord 13 для команды "Отправить директиву".

u.DIRECTIVESEND.CDW14

Поля данных команды DWord 14 для команды "Отправить директиву".

u.DIRECTIVESEND.CDW15

Поля данных command DWord 15 для команды "Отправить директиву".

u.SANITIZE

u.SANITIZE.CDW10

u.SANITIZE.CDW11

u.SANITIZE.CDW12

u.SANITIZE.CDW13

u.SANITIZE.CDW14

u.SANITIZE.CDW15

u.READWRITE

Структура, содержащая параметры для команд чтения NVME и записи NVME, которые считывают или записывают данные и метаданные , если применимо, в контроллер NVM и из нее для указанных адресов логических блоков (LBA).

Команды NVME Read и NVME Write используют поля Command Dword 12 (CDW12), Command Dword 13 (CDW13) и Command Dword 14 (CDW14).

u.READWRITE.LBALOW

Низкий LBA.

u.READWRITE.LBAHIGH

Высокий LBA.

u.READWRITE.CDW12

Структура NVME_CDW12_READ_WRITE , содержащая параметры command DWord 12 для команд NVME Read и NVME Write.

u.READWRITE.CDW13

Структура NVME_CDW13_READ_WRITE , содержащая параметры command DWord 13 для команд NVME Read и NVME Write.

u.READWRITE.CDW14

Поля данных command DWord 14 для команд чтения NVME и записи NVME.

u.READWRITE.CDW15

Структура NVME_CDW15_READ_WRITE , содержащая параметры command DWord 15 для команд NVME Read и NVME Write.

u.RESERVATIONACQUIRE

u.RESERVATIONACQUIRE.CDW10

u.RESERVATIONACQUIRE.CDW11

u.RESERVATIONACQUIRE.CDW12

u.RESERVATIONACQUIRE.CDW13

u.RESERVATIONACQUIRE.CDW14

u.RESERVATIONACQUIRE.CDW15

u.RESERVATIONREGISTER

u.RESERVATIONREGISTER.CDW10

u.RESERVATIONREGISTER.CDW11

u.RESERVATIONREGISTER.CDW12

u.RESERVATIONREGISTER.CDW13

u.RESERVATIONREGISTER.CDW14

u.RESERVATIONREGISTER.CDW15

u.RESERVATIONRELEASE

u.RESERVATIONRELEASE.CDW10

u.RESERVATIONRELEASE.CDW11

u.RESERVATIONRELEASE.CDW12

u.RESERVATIONRELEASE.CDW13

u.RESERVATIONRELEASE.CDW14

u.RESERVATIONRELEASE.CDW15

u.RESERVATIONREPORT

u.RESERVATIONREPORT.CDW10

u.RESERVATIONREPORT.CDW11

u.RESERVATIONREPORT.CDW12

u.RESERVATIONREPORT.CDW13

u.RESERVATIONREPORT.CDW14

u.RESERVATIONREPORT.CDW15

u.ZONEMANAGEMENTSEND

u.ZONEMANAGEMENTSEND.CDW1011

u.ZONEMANAGEMENTSEND.CDW12

u.ZONEMANAGEMENTSEND.CDW13

u.ZONEMANAGEMENTSEND.CDW14

u.ZONEMANAGEMENTSEND.CDW15

u.ZONEMANAGEMENTRECEIVE

u.ZONEMANAGEMENTRECEIVE.CDW1011

u.ZONEMANAGEMENTRECEIVE.DWORDCOUNT

u.ZONEMANAGEMENTRECEIVE.CDW13

u.ZONEMANAGEMENTRECEIVE.CDW14

u.ZONEMANAGEMENTRECEIVE.CDW15

u.ZONEAPPEND

u.ZONEAPPEND.CDW1011

u.ZONEAPPEND.CDW12

u.ZONEAPPEND.CDW13

u.ZONEAPPEND.ILBRT

u.ZONEAPPEND.CDW15

Комментарии

Набор команд Администратор определяет команды, которые могут быть отправлены в очередь отправки Администратор.

Для всех Администратор команд DWord 14 и DWord 15 относятся к набору команд ввода-вывода.

Требования

Требование Значение
Минимальная версия клиента Windows 10
Верхняя часть nvme.h