]> www.infradead.org Git - users/sagi/libnvme.git/commitdiff
types: Add NVME_CMBEBS property definitions
authorTokunori Ikegami <ikegami.t@gmail.com>
Mon, 15 Apr 2024 13:59:43 +0000 (22:59 +0900)
committerDaniel Wagner <wagi@monom.org>
Tue, 16 Apr 2024 13:55:02 +0000 (15:55 +0200)
Also add NVME_UNIT definitions for CMBSZU and PMRSZU.

Signed-off-by: Tokunori Ikegami <ikegami.t@gmail.com>
src/nvme/types.h

index 00db821abbe84d6d1f76dd9eaeb10caabcda4925..c3670dabb35c8c1a13d5f27aa3ba66d2d9a2d69e 100644 (file)
@@ -491,6 +491,30 @@ enum nvme_cmbsts {
 
 #define NVME_CMBSTS_CBAI(cmbsts)       NVME_GET(cmbsts, CMBSTS_CBAI)
 
+enum nvme_unit {
+       NVME_UNIT_B     = 0,
+       NVME_UNIT_1K    = 1,
+       NVME_UNIT_1M    = 2,
+       NVME_UNIT_1G    = 3,
+};
+
+enum nvme_cmbebs {
+       NVME_CMBEBS_CMBSZU_SHIFT        = 0,
+       NVME_CMBEBS_RBB_SHIFT           = 4,
+       NVME_CMBEBS_CMBWBZ_SHIFT        = 8,
+       NVME_CMBEBS_CMBSZU_MASK         = 0xf,
+       NVME_CMBEBS_RBB_MASK            = 0x1,
+       NVME_CMBEBS_CMBWBZ_MASK         = 0xffffff,
+       NVME_CMBEBS_CMBSZU_B            = NVME_UNIT_B,
+       NVME_CMBEBS_CMBSZU_1K           = NVME_UNIT_1K,
+       NVME_CMBEBS_CMBSZU_1M           = NVME_UNIT_1M,
+       NVME_CMBEBS_CMBSZU_1G           = NVME_UNIT_1G,
+};
+
+#define NVME_CMBEBS_CMBSZU(cmbebs)     NVME_GET(cmbebs, CMBEBS_CMBSZU)
+#define NVME_CMBEBS_RBB(cmbebs)                NVME_GET(cmbebs, CMBEBS_RBB)
+#define NVME_CMBEBS_CMBWBZ(cmbebs)     NVME_GET(cmbebs, CMBEBS_CMBWBZ)
+
 enum nvme_crto {
        NVME_CRTO_CRIMT_SHIFT   = 16,
        NVME_CRTO_CRIMT_MASK    = 0xffff0000,
@@ -558,10 +582,10 @@ enum nvme_pmrebs {
        NVME_PMREBS_PMRSZU_MASK         = 0xf,
        NVME_PMREBS_RBB_MASK            = 0x1,
        NVME_PMREBS_PMRWBZ_MASK         = 0xffffff,
-       NVME_PMREBS_PMRSZU_B            = 0,
-       NVME_PMREBS_PMRSZU_1K           = 1,
-       NVME_PMREBS_PMRSZU_1M           = 2,
-       NVME_PMREBS_PMRSZU_1G           = 3,
+       NVME_PMREBS_PMRSZU_B            = NVME_UNIT_B,
+       NVME_PMREBS_PMRSZU_1K           = NVME_UNIT_1K,
+       NVME_PMREBS_PMRSZU_1M           = NVME_UNIT_1M,
+       NVME_PMREBS_PMRSZU_1G           = NVME_UNIT_1G,
 };
 
 #define NVME_PMREBS_PMRSZU(pmrebs)     NVME_GET(pmrebs, PMREBS_PMRSZU)