nvme: extract cdata sgls as a separate struct

Signed-off-by: Jacek Kalwas <jacek.kalwas@intel.com>
Change-Id: I1418703a32c8e80a42cf30074ef743eb3c380de0
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/2755
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Community-CI: Mellanox Build Bot
This commit is contained in:
Jacek Kalwas 2020-06-03 15:25:25 +02:00 committed by Tomasz Zawadzki
parent 4c6a9cdfa4
commit 182ca74940

View File

@ -1549,6 +1549,20 @@ struct spdk_nvme_cdata_nvmf_specific {
uint8_t reserved[244]; uint8_t reserved[244];
}; };
/** Identify Controller data SGL support */
struct spdk_nvme_cdata_sgls {
uint32_t supported : 2;
uint32_t keyed_sgl : 1;
uint32_t reserved1 : 13;
uint32_t bit_bucket_descriptor : 1;
uint32_t metadata_pointer : 1;
uint32_t oversized_sgl : 1;
uint32_t metadata_address : 1;
uint32_t sgl_offset : 1;
uint32_t transport_sgl : 1;
uint32_t reserved2 : 10;
};
struct __attribute__((packed)) __attribute__((aligned)) spdk_nvme_ctrlr_data { struct __attribute__((packed)) __attribute__((aligned)) spdk_nvme_ctrlr_data {
/* bytes 0-255: controller capabilities and features */ /* bytes 0-255: controller capabilities and features */
@ -1879,19 +1893,7 @@ struct __attribute__((packed)) __attribute__((aligned)) spdk_nvme_ctrlr_data {
uint16_t reserved534; uint16_t reserved534;
/** SGL support */ struct spdk_nvme_cdata_sgls sgls;
struct {
uint32_t supported : 2;
uint32_t keyed_sgl : 1;
uint32_t reserved1 : 13;
uint32_t bit_bucket_descriptor : 1;
uint32_t metadata_pointer : 1;
uint32_t oversized_sgl : 1;
uint32_t metadata_address : 1;
uint32_t sgl_offset : 1;
uint32_t transport_sgl : 1;
uint32_t reserved2 : 10;
} sgls;
uint8_t reserved4[228]; uint8_t reserved4[228];