From 182ca74940d436fa562e540bc32eabc947dfca37 Mon Sep 17 00:00:00 2001 From: Jacek Kalwas Date: Wed, 3 Jun 2020 15:25:25 +0200 Subject: [PATCH] nvme: extract cdata sgls as a separate struct Signed-off-by: Jacek Kalwas Change-Id: I1418703a32c8e80a42cf30074ef743eb3c380de0 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/2755 Tested-by: SPDK CI Jenkins Reviewed-by: Aleksey Marchuk Reviewed-by: Ben Walker Reviewed-by: Jim Harris Community-CI: Mellanox Build Bot --- include/spdk/nvme_spec.h | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/include/spdk/nvme_spec.h b/include/spdk/nvme_spec.h index f88abf94a..ab5dd97c5 100644 --- a/include/spdk/nvme_spec.h +++ b/include/spdk/nvme_spec.h @@ -1549,6 +1549,20 @@ struct spdk_nvme_cdata_nvmf_specific { 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 { /* bytes 0-255: controller capabilities and features */ @@ -1879,19 +1893,7 @@ struct __attribute__((packed)) __attribute__((aligned)) spdk_nvme_ctrlr_data { uint16_t reserved534; - /** SGL support */ - 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; + struct spdk_nvme_cdata_sgls sgls; uint8_t reserved4[228];