包含“创建 I/O 完成队列”命令的参数,该命令用于创建除管理员完成队列之外的所有 I/O 完成队列。
NVME_CDW11_CREATE_IO_CQ结构用于命令结构的 CREATEIOCQ 参数的 CDW11 字段中。
Syntax
typedef union {
struct {
ULONG PC : 1;
ULONG IEN : 1;
ULONG Reserved0 : 14;
ULONG IV : 16;
} DUMMYSTRUCTNAME;
ULONG AsUlong;
} NVME_CDW11_CREATE_IO_CQ, *PNVME_CDW11_CREATE_IO_CQ;
Members
DUMMYSTRUCTNAME
DUMMYSTRUCTNAME.PC
“物理连续”(PC)字段指示完成队列在内存中是否物理连续。
如果此值设置为1,则完成队列在物理上是连续的,PRP 条目 1(命令数据结构中的 PRP1)是连续物理缓冲区的地址。 如果清除 0该值,则完成队列在物理上不是连续的, PRP1 是 PRP 列表指针。
如果队列位于控制器内存缓冲区中, 并且电脑 已 0清除,则控制器将失败,且状态 为NVME_STATUS_INVALID_USE_OF_CONTROLLER_MEMORY_BUFFER。
DUMMYSTRUCTNAME.IEN
“已启用中断”(IEN)字段指示是否为此完成队列启用了中断。
如果值设置为 1,则会为此完成队列启用中断。 清除 0该值后,此完成队列将禁用中断。
DUMMYSTRUCTNAME.Reserved0
DUMMYSTRUCTNAME.IV
中断向量 (IV) 字段指示要用于此完成队列的中断向量。
此值对应于消息信号中断(MSI-X)向量,或者,如果使用单个消息 MSI 或基于引脚的中断,该值将设置为 0h。 在 MSI-X 中,最多使用 2K 向量。
不应将此值设置为大于控制器支持的消息数的值。 如果是,控制器将返回 NVME_STATUS_INVALID_INTERRUPT_VECTOR的状态。
AsUlong
要求
| Requirement | 价值 |
|---|---|
| 最低支持的客户端 | Windows 10操作系统 |
| Header | nvme.h |