scsi: cxlflash: Support SQ Command Mode
authorMatthew R. Ochs <mrochs@linux.vnet.ibm.com>
Thu, 12 Jan 2017 01:19:33 +0000 (19:19 -0600)
committerMartin K. Petersen <martin.petersen@oracle.com>
Thu, 12 Jan 2017 03:38:15 +0000 (22:38 -0500)
commit696d0b0c715360ce28fedd3c8b009d3771a5ddeb
treee7839b1a84db03979016193800b56d26baf18cf6
parent9c7d1ee5f13a7130f6d3df307ec010e9e003fa98
scsi: cxlflash: Support SQ Command Mode

The SISLite specification outlines a new queuing model to improve
over the MMIO-based IOARRIN model that exists today. This new model
uses a submission queue that exists in host memory and is shared with
the device. Each entry in the queue is an IOARCB that describes a
transfer request. When requests are submitted, IOARCBs ('current'
position tracked in host software) are populated and the submission
queue tail pointer is then updated via MMIO to make the device aware
of the requests.

Signed-off-by: Matthew R. Ochs <mrochs@linux.vnet.ibm.com>
Signed-off-by: Uma Krishnan <ukrishn@linux.vnet.ibm.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/cxlflash/common.h
drivers/scsi/cxlflash/main.c
drivers/scsi/cxlflash/sislite.h
drivers/scsi/cxlflash/superpipe.c
include/uapi/scsi/cxlflash_ioctl.h