[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 06/18] hw/block/nvme: mark fw slot 1 as read-only
From: |
Maxim Levitsky |
Subject: |
Re: [PATCH v3 06/18] hw/block/nvme: mark fw slot 1 as read-only |
Date: |
Wed, 29 Jul 2020 12:14:30 +0300 |
User-agent: |
Evolution 3.36.3 (3.36.3-1.fc32) |
On Mon, 2020-07-06 at 08:12 +0200, Klaus Jensen wrote:
> From: Klaus Jensen <k.jensen@samsung.com>
>
> Mark firmware slot 1 as read-only and only support that slot.
>
> Signed-off-by: Klaus Jensen <k.jensen@samsung.com>
> Reviewed-by: Dmitry Fomichev <dmitry.fomichev@wdc.com>
> ---
> hw/block/nvme.c | 3 ++-
> include/block/nvme.h | 4 ++++
> 2 files changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/hw/block/nvme.c b/hw/block/nvme.c
> index a330ccf91620..b6bc75eb61a2 100644
> --- a/hw/block/nvme.c
> +++ b/hw/block/nvme.c
> @@ -62,6 +62,7 @@
> #define NVME_TEMPERATURE 0x143
> #define NVME_TEMPERATURE_WARNING 0x157
> #define NVME_TEMPERATURE_CRITICAL 0x175
> +#define NVME_NUM_FW_SLOTS 1
>
> #define NVME_GUEST_ERR(trace, fmt, ...) \
> do { \
> @@ -1666,7 +1667,7 @@ static void nvme_init_ctrl(NvmeCtrl *n, PCIDevice
> *pci_dev)
> * inconsequential.
> */
> id->acl = 3;
> - id->frmw = 7 << 1;
> + id->frmw = (NVME_NUM_FW_SLOTS << 1) | NVME_FRMW_SLOT1_RO;
Offtopic:
They didn't make this one 0 based value, and yet ask for at least 1 slot.
Just to keep us entertained I guess :-)
> id->lpa = 1 << 0;
>
> /* recommended default value (~70 C) */
> diff --git a/include/block/nvme.h b/include/block/nvme.h
> index d2c457695b38..d639e8bbee92 100644
> --- a/include/block/nvme.h
> +++ b/include/block/nvme.h
> @@ -842,6 +842,10 @@ enum NvmeIdCtrlOncs {
> NVME_ONCS_TIMESTAMP = 1 << 6,
> };
>
> +enum NvmeIdCtrlFrmw {
> + NVME_FRMW_SLOT1_RO = 1 << 0,
> +};
> +
> #define NVME_CTRL_SQES_MIN(sqes) ((sqes) & 0xf)
> #define NVME_CTRL_SQES_MAX(sqes) (((sqes) >> 4) & 0xf)
> #define NVME_CTRL_CQES_MIN(cqes) ((cqes) & 0xf)
Looks good,
Reviewed-by: Maxim Levitsky <mlevitsk@redhat.com>
Best regards,
Maxim Levitsky
[PATCH v3 02/18] hw/block/nvme: fix missing endian conversion, Klaus Jensen, 2020/07/06
[PATCH v3 05/18] hw/block/nvme: add temperature threshold feature, Klaus Jensen, 2020/07/06