60#include "../ftl_config.h" 
   61#include "../request_transform.h" 
   77    unsigned int startLba[2];
 
   84    startLba[0] = nvmeIOCmd->
dword[10];
 
   85    startLba[1] = nvmeIOCmd->
dword[11];
 
   90    ASSERT((nvmeIOCmd->
PRP1[0] & 0x3) == 0 && (nvmeIOCmd->
PRP2[0] & 0x3) == 0); 
 
   91    ASSERT(nvmeIOCmd->
PRP1[1] < 0x10000 && nvmeIOCmd->
PRP2[1] < 0x10000);
 
  104    unsigned int startLba[2];
 
  114    startLba[0] = nvmeIOCmd->
dword[10];
 
  115    startLba[1] = nvmeIOCmd->
dword[11];
 
  116    nlb         = writeInfo12.
NLB;
 
  120    ASSERT((nvmeIOCmd->
PRP1[0] & 0xF) == 0 && (nvmeIOCmd->
PRP2[0] & 0xF) == 0);
 
  121    ASSERT(nvmeIOCmd->
PRP1[1] < 0x10000 && nvmeIOCmd->
PRP2[1] < 0x10000);
 
  139    opc = (
unsigned int)nvmeIOCmd->
OPC;
 
  145        xil_printf(
"IO Flush Command\r\n");
 
  146        nvmeCPL.
dword[0] = 0;
 
  165        xil_printf(
"Not Support IO Command OPC: %X\r\n", opc);
 
unsigned int storageCapacity_L
void set_auto_nvme_cpl(unsigned int cmdSlotTag, unsigned int specific, unsigned int statusFieldWord)
#define STORAGE_CAPACITY_H
void handle_nvme_io_write(unsigned int cmdSlotTag, NVME_IO_COMMAND *nvmeIOCmd)
void handle_nvme_io_read(unsigned int cmdSlotTag, NVME_IO_COMMAND *nvmeIOCmd)
The entry function for translating the given NVMe command into slice requests.
void handle_nvme_io_cmd(NVME_COMMAND *nvmeCmd)
unsigned short cmdSlotTag
unsigned int cmdDword[16]
The main structure of completion queue entry.
unsigned short statusFieldWord