nvme_spec: add VWC flush broadcast bits (TP 4035)
Also report that the NVMe-oF target does not support Flush with the broadcast NSID. Change-Id: Iad761a6f81eb099940463a67074a6dccb8871b70 Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com> Reviewed-on: https://review.gerrithub.io/416445 Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com>
This commit is contained in:
parent
800a142332
commit
d4ef57c072
@ -919,6 +919,20 @@ enum spdk_nvme_sgls_supported {
|
||||
SPDK_NVME_SGLS_SUPPORTED_DWORD_ALIGNED = 2,
|
||||
};
|
||||
|
||||
/** Identify Controller data vwc.flush_broadcast values */
|
||||
enum spdk_nvme_flush_broadcast {
|
||||
/** Support for NSID=FFFFFFFFh with Flush is not indicated. */
|
||||
SPDK_NVME_FLUSH_BROADCAST_NOT_INDICATED = 0,
|
||||
|
||||
/* 01b: Reserved */
|
||||
|
||||
/** Flush does not support NSID set to FFFFFFFFh. */
|
||||
SPDK_NVME_FLUSH_BROADCAST_NOT_SUPPORTED = 2,
|
||||
|
||||
/** Flush supports NSID set to FFFFFFFFh. */
|
||||
SPDK_NVME_FLUSH_BROADCAST_SUPPORTED = 3
|
||||
};
|
||||
|
||||
struct __attribute__((packed)) spdk_nvme_ctrlr_data {
|
||||
/* bytes 0-255: controller capabilities and features */
|
||||
|
||||
@ -1223,7 +1237,8 @@ struct __attribute__((packed)) spdk_nvme_ctrlr_data {
|
||||
/** volatile write cache */
|
||||
struct {
|
||||
uint8_t present : 1;
|
||||
uint8_t reserved : 7;
|
||||
uint8_t flush_broadcast : 2;
|
||||
uint8_t reserved : 5;
|
||||
} vwc;
|
||||
|
||||
/** atomic write unit normal */
|
||||
|
@ -1211,6 +1211,7 @@ spdk_nvmf_ctrlr_identify_ctrlr(struct spdk_nvmf_ctrlr *ctrlr, struct spdk_nvme_c
|
||||
cdata->cqes.max = 4;
|
||||
cdata->nn = subsystem->max_nsid;
|
||||
cdata->vwc.present = 1;
|
||||
cdata->vwc.flush_broadcast = SPDK_NVME_FLUSH_BROADCAST_NOT_SUPPORTED;
|
||||
|
||||
cdata->nvmf_specific.ioccsz = sizeof(struct spdk_nvme_cmd) / 16;
|
||||
cdata->nvmf_specific.iorcsz = sizeof(struct spdk_nvme_cpl) / 16;
|
||||
|
Loading…
Reference in New Issue
Block a user