Skip to content

Commit 8db4b1f

Browse files
ikegami-tigaw
authored andcommitted
types: Define FLBAS MASK and SHIFT to use NVME_GET
Signed-off-by: Tokunori Ikegami <[email protected]>
1 parent 89dd39e commit 8db4b1f

2 files changed

Lines changed: 15 additions & 2 deletions

File tree

src/nvme/types.h

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -611,6 +611,19 @@ static const __u64 NVME_PMRMSC_CBA_MASK = 0xfffffffffffffull;
611611
#define NVME_PMRMSC_CMSE(pmrmsc) NVME_GET(pmrmsc, PMRMSC_CMSE)
612612
#define NVME_PMRMSC_CBA(pmrmsc) NVME_GET(pmrmsc, PMRMSC_CBA)
613613

614+
enum nvme_flbas {
615+
NVME_FLBAS_LOWER_SHIFT = 0,
616+
NVME_FLBAS_META_EXT_SHIFT = 4,
617+
NVME_FLBAS_HIGHER_SHIFT = 5,
618+
NVME_FLBAS_LOWER_MASK = 0xf,
619+
NVME_FLBAS_META_EXT_MASK = 0x1,
620+
NVME_FLBAS_HIGHER_MASK = 0x3,
621+
};
622+
623+
#define NVME_FLBAS_LOWER(flbas) NVME_GET(flbas, FLBAS_LOWER)
624+
#define NVME_FLBAS_META_EXT(flbas) NVME_GET(flbas, FLBAS_META_EXT)
625+
#define NVME_FLBAS_HIGHER(flbas) NVME_GET(flbas, FLBAS_HIGHER)
626+
614627
/**
615628
* enum nvme_psd_flags - Possible flag values in nvme power state descriptor
616629
* @NVME_PSD_FLAGS_MXPS: Indicates the scale for the Maximum Power

src/nvme/util.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -449,8 +449,8 @@ static inline void nvme_feature_decode_namespace_write_protect(__u32 value,
449449

450450
static inline void nvme_id_ns_flbas_to_lbaf_inuse(__u8 flbas, __u8 *lbaf_inuse)
451451
{
452-
*lbaf_inuse = (((flbas & NVME_NS_FLBAS_HIGHER_MASK) >> 1) |
453-
(flbas & NVME_NS_FLBAS_LOWER_MASK));
452+
*lbaf_inuse = ((NVME_FLBAS_HIGHER(flbas) >> 1) |
453+
NVME_FLBAS_LOWER(flbas));
454454
}
455455

456456
struct nvme_root;

0 commit comments

Comments
 (0)