OpenSSD Cosmos+ Platform Firmware  0.0.2
The firmware of Cosmos+ OpenSSD Platform for TOSHIBA nand flash module.
_NVME_COMMAND Struct Reference

#include <nvme.h>

Data Fields

unsigned short qID
 
unsigned short cmdSlotTag
 
unsigned int cmdSeqNum
 
unsigned int cmdDword [16]
 

Detailed Description

The main structure of NVMe Commands.

Definition at line 205 of file nvme.h.

Field Documentation

◆ cmdDword

unsigned int _NVME_COMMAND::cmdDword[16]

Each command consisted of 16 DWORDs (64B), also called CDW (Command DWords):

Todo:
  • CDW[00]:
    • bit[00,07]: Command opcode.
    • bit[08,09]: Fused operation, 00 for normal operation.
    • bit[10,13]: RESERVED.
    • bit[14,15]: 00 for PRP, otherwise SGL.
    • bit[16,31]: Command ID.
  • CDW[01]: NSID (NameSpace ID, infomation of the controller and driver?)
  • CDW[02,03]: RESERVED.
  • CDW[04,05]: Metadata pointer.
  • CDW[06,07]: PRP[0], physical memory address of data or PRP list
  • CDW[08,09]: PRP[1], physical memory address of data or PRP list
    • the first entry of PRP list may be misaligned
    • the last entry may point to a page that contains more PRP entries
  • CDW[10,15]: Command specific.

This member will be casted to NVME_IO_COMMAND or NVME_ADMIN_COMMAND.

Definition at line 233 of file nvme.h.

◆ cmdSeqNum

unsigned int _NVME_COMMAND::cmdSeqNum

Definition at line 209 of file nvme.h.

◆ cmdSlotTag

unsigned short _NVME_COMMAND::cmdSlotTag

Definition at line 208 of file nvme.h.

◆ qID

unsigned short _NVME_COMMAND::qID

Definition at line 207 of file nvme.h.


The documentation for this struct was generated from the following file: