qemu-block
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 08/17] hw/block/nvme: move NvmeFeatureVal into hw/block/nvme.


From: Dmitry Fomichev
Subject: Re: [PATCH 08/17] hw/block/nvme: move NvmeFeatureVal into hw/block/nvme.h
Date: Fri, 3 Jul 2020 00:45:29 +0000
User-agent: Evolution 3.32.5 (3.32.5-1.fc30)

Looks good,

Reviewed-by: Dmitry Fomichev <dmitry.fomichev@wdc.com>

On Mon, 2020-06-29 at 20:26 +0200, Klaus Jensen wrote:
> From: Klaus Jensen <k.jensen@samsung.com>
> 
> The NvmeFeatureVal does not belong with the spec-related data structures
> in include/block/nvme.h that is shared between the block-level nvme
> driver and the emulated nvme device.
> 
> Move it into the nvme device specific header file as it is the only
> user of the structure. Also, remove the unused members.
> 
> Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
> ---
>  hw/block/nvme.h      | 11 +++++++++++
>  include/block/nvme.h | 20 --------------------
>  2 files changed, 11 insertions(+), 20 deletions(-)
> 
> diff --git a/hw/block/nvme.h b/hw/block/nvme.h
> index 1f64a0e94035..16a254d30b4e 100644
> --- a/hw/block/nvme.h
> +++ b/hw/block/nvme.h
> @@ -79,6 +79,17 @@ static inline uint8_t nvme_ns_lbads(NvmeNamespace *ns)
>  #define NVME(obj) \
>          OBJECT_CHECK(NvmeCtrl, (obj), TYPE_NVME)
>  
> +typedef struct NvmeFeatureVal {
> +    union {
> +        struct {
> +            uint16_t temp_thresh_hi;
> +            uint16_t temp_thresh_low;
> +        };
> +        uint32_t temp_thresh;
> +    };
> +    uint32_t    async_config;
> +} NvmeFeatureVal;
> +
>  typedef struct NvmeCtrl {
>      PCIDevice    parent_obj;
>      MemoryRegion iomem;
> diff --git a/include/block/nvme.h b/include/block/nvme.h
> index e98584e38134..c9f232a70e98 100644
> --- a/include/block/nvme.h
> +++ b/include/block/nvme.h
> @@ -865,26 +865,6 @@ enum NvmeIdCtrlLpa {
>  #define NVME_CTRL_SGLS_MPTR_SGL                  (0x1 << 19)
>  #define NVME_CTRL_SGLS_ADDR_OFFSET               (0x1 << 20)
>  
> -typedef struct NvmeFeatureVal {
> -    uint32_t    arbitration;
> -    uint32_t    power_mgmt;
> -    union {
> -        struct {
> -            uint16_t temp_thresh_hi;
> -            uint16_t temp_thresh_low;
> -        };
> -        uint32_t temp_thresh;
> -    };
> -    uint32_t    err_rec;
> -    uint32_t    volatile_wc;
> -    uint32_t    num_queues;
> -    uint32_t    int_coalescing;
> -    uint32_t    *int_vector_config;
> -    uint32_t    write_atomicity;
> -    uint32_t    async_config;
> -    uint32_t    sw_prog_marker;
> -} NvmeFeatureVal;
> -
>  #define NVME_ARB_AB(arb)    (arb & 0x7)
>  #define NVME_ARB_LPW(arb)   ((arb >> 8) & 0xff)
>  #define NVME_ARB_MPW(arb)   ((arb >> 16) & 0xff)

reply via email to

[Prev in Thread] Current Thread [Next in Thread]