目录
5.8Doorbell Buffer Config command
Doorbell Buffer Config 命令用于提供两个独立的内存缓冲区,这些缓冲区反映了第 3.1.3 节中定义的控制器的门铃属性。此命令适用于模拟控制器,通常不受物理 NVMe 控制器的支持。这两个缓冲区分别称为“Shadow Doorbell”和“EventIdx”。有关如何使用这些缓冲区的示例,请参阅附件中的“Updating Controller Doorbell Properties using a Shadow Doorbell Buffer”。
Doorbell Buffer Config 命令使用 PRP Entry 1 和 PRP Entry 2 字段。保留所有其他命令特定字段。该命令不是特定于命名空间的,不支持元数据,也不支持 SGL。这些设置不会在 Controller Level Reset 期间保留。
随 Doorbell Buffer Config 命令提供的每个缓冲区应是由 CC.MPS 字段定义的单个物理内存页。控制器应确保满足以下条件:
5.8.1Command Completion
当命令完成时,控制器将完成队列条目发布到 Admin Completion Queue,指示命令的状态。如果 Shadow Doorbell buffer 或 EventIdx buffer内存地址无效,则返回 Invalid Field in Command 状态码。
5.9Device Self-test command
Device Self-test 命令用于启动设备自检操作或中止设备自检操作(请参阅第 8.6 节)。Device Self-test命令专门用于:
- 启动 short device self-test 操作;
- 启动 extended device self-test 操作;
- 启动 vendor specific device self-test 操作; 要么
- 中止已在进行的 device self-test 操作。
device self-test 操作由提交 Device Self-test 命令的控制器执行。Namespace Identifier 字段控制 device self-test 操作中包含哪些命名空间,如Figure 170 所示。
Device Self-test 命令使用 Command Dword 10 字段。保留所有其他命令特定字段。
Figure 172 定义了 Device Self-test 命令的处理以及与已在进行中的DST操作的交互。
5.9.1Command Completion
如 Figure 172 中指定的那样,在采取适当的操作后,完成队列条目被发布到 Admin Completion Queue。Device Self-test 命令特定的状态值在Figure 173 中定义。
Value | Description |
---|---|
1Dh | Device Self-test in Progress: 控制器或 NVM 子系统已经在进行dst操作。 |