Skip to content

Commit 4907ecb

Browse files
francispravin5igaw
authored andcommitted
types,util: add Asynchronous Event Configuration NVMe 2.1 definitions
Add shift and mask for Asynchronous Event Configuration feature fields based on NVM Express Base Specification 2.1. Signed-off-by: Francis Pravin <[email protected]>
1 parent db856c1 commit 4907ecb

2 files changed

Lines changed: 50 additions & 0 deletions

File tree

src/nvme/types.h

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8718,6 +8718,26 @@ enum nvme_features_id {
87188718
* @NVME_FEAT_AE_LBAS_MASK:
87198719
* @NVME_FEAT_AE_EGA_SHIFT:
87208720
* @NVME_FEAT_AE_EGA_MASK:
8721+
* @NVME_FEAT_AE_NNSSHDN_SHIFT:
8722+
* @NVME_FEAT_AE_NNSSHDN_MASK:
8723+
* @NVME_FEAT_AE_TTHRY_SHIFT:
8724+
* @NVME_FEAT_AE_TTHRY_MASK:
8725+
* @NVME_FEAT_AE_RASSN_SHIFT:
8726+
* @NVME_FEAT_AE_RASSN_MASK:
8727+
* @NVME_FEAT_AE_RGRP0_SHIFT:
8728+
* @NVME_FEAT_AE_RGRP0_MASK:
8729+
* @NVME_FEAT_AE_ANSAN_SHIFT:
8730+
* @NVME_FEAT_AE_ANSAN_MASK:
8731+
* @NVME_FEAT_AE_ZDCN_SHIFT:
8732+
* @NVME_FEAT_AE_ZDCN_MASK:
8733+
* @NVME_FEAT_AE_PMDRLPCN_SHIFT:
8734+
* @NVME_FEAT_AE_PMDRLPCN_MASK:
8735+
* @NVME_FEAT_AE_ADLPCN_SHIFT:
8736+
* @NVME_FEAT_AE_ADLPCN_MASK:
8737+
* @NVME_FEAT_AE_HDLPCN_SHIFT:
8738+
* @NVME_FEAT_AE_HDLPCN_MASK:
8739+
* @NVME_FEAT_AE_DLPCN_SHIFT:
8740+
* @NVME_FEAT_AE_DLPCN_MASK:
87218741
* @NVME_FEAT_APST_APSTE_SHIFT:
87228742
* @NVME_FEAT_APST_APSTE_MASK:
87238743
* @NVME_FEAT_HMEM_EHM_SHIFT:
@@ -8832,6 +8852,26 @@ enum nvme_feat {
88328852
NVME_FEAT_AE_LBAS_MASK = 0x1,
88338853
NVME_FEAT_AE_EGA_SHIFT = 14,
88348854
NVME_FEAT_AE_EGA_MASK = 0x1,
8855+
NVME_FEAT_AE_NNSSHDN_SHIFT = 15,
8856+
NVME_FEAT_AE_NNSSHDN_MASK = 0x1,
8857+
NVME_FEAT_AE_TTHRY_SHIFT = 16,
8858+
NVME_FEAT_AE_TTHRY_MASK = 0x1,
8859+
NVME_FEAT_AE_RASSN_SHIFT = 17,
8860+
NVME_FEAT_AE_RASSN_MASK = 0x1,
8861+
NVME_FEAT_AE_RGRP0_SHIFT = 18,
8862+
NVME_FEAT_AE_RGRP0_MASK = 0x1,
8863+
NVME_FEAT_AE_ANSAN_SHIFT = 19,
8864+
NVME_FEAT_AE_ANSAN_MASK = 0x1,
8865+
NVME_FEAT_AE_ZDCN_SHIFT = 27,
8866+
NVME_FEAT_AE_ZDCN_MASK = 0x1,
8867+
NVME_FEAT_AE_PMDRLPCN_SHIFT = 28,
8868+
NVME_FEAT_AE_PMDRLPCN_MASK = 0x1,
8869+
NVME_FEAT_AE_ADLPCN_SHIFT = 29,
8870+
NVME_FEAT_AE_ADLPCN_MASK = 0x1,
8871+
NVME_FEAT_AE_HDLPCN_SHIFT = 30,
8872+
NVME_FEAT_AE_HDLPCN_MASK = 0x1,
8873+
NVME_FEAT_AE_DLPCN_SHIFT = 31,
8874+
NVME_FEAT_AE_DLPCN_MASK = 0x1,
88358875
NVME_FEAT_APST_APSTE_SHIFT = 0,
88368876
NVME_FEAT_APST_APSTE_MASK = 0x1,
88378877
NVME_FEAT_HMEM_EHM_SHIFT = 0,

src/nvme/util.h

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -337,6 +337,16 @@ static inline void nvme_feature_decode_write_atomicity(__u32 value, bool *dn)
337337
#define NVME_FEAT_AE_PLA(v) NVME_GET(v, FEAT_AE_PLA)
338338
#define NVME_FEAT_AE_LBAS(v) NVME_GET(v, FEAT_AE_LBAS)
339339
#define NVME_FEAT_AE_EGA(v) NVME_GET(v, FEAT_AE_EGA)
340+
#define NVME_FEAT_AE_NNSSHDN(v) NVME_GET(v, FEAT_AE_NNSSHDN)
341+
#define NVME_FEAT_AE_TTHRY(v) NVME_GET(v, FEAT_AE_TTHRY)
342+
#define NVME_FEAT_AE_RASSN(v) NVME_GET(v, FEAT_AE_RASSN)
343+
#define NVME_FEAT_AE_RGRP0(v) NVME_GET(v, FEAT_AE_RGRP0)
344+
#define NVME_FEAT_AE_ANSAN(v) NVME_GET(v, FEAT_AE_ANSAN)
345+
#define NVME_FEAT_AE_ZDCN(v) NVME_GET(v, FEAT_AE_ZDCN)
346+
#define NVME_FEAT_AE_PMDRLPCN(v) NVME_GET(v, FEAT_AE_PMDRLPCN)
347+
#define NVME_FEAT_AE_ADLPCN(v) NVME_GET(v, FEAT_AE_ADLPCN)
348+
#define NVME_FEAT_AE_HDLPCN(v) NVME_GET(v, FEAT_AE_HDLPCN)
349+
#define NVME_FEAT_AE_DLPCN(v) NVME_GET(v, FEAT_AE_DLPCN)
340350

341351
static inline void nvme_feature_decode_async_event_config(__u32 value,
342352
__u8 *smart, bool *nan, bool *fw, bool *telem,

0 commit comments

Comments
 (0)