Skip to content

Commit 38e2772

Browse files
committed
types: add NVMe 2.3 opcode, fid and lid definitions
Added for NVMe 2.3 commands support. Signed-off-by: Tokunori Ikegami <[email protected]>
1 parent a2e1b83 commit 38e2772

File tree

2 files changed

+39
-2
lines changed

2 files changed

+39
-2
lines changed

libnvme/src/nvme/types.h

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8541,6 +8541,7 @@ static inline __u32 nvme_status_equals(int status, enum nvme_status_type type,
85418541
* @nvme_admin_get_lba_status: Get LBA Status
85428542
* @nvme_admin_program_act_mgmt: Program Activation Management
85438543
* @nvme_admin_mem_range_set_mgmt: Memory Range Set Management
8544+
* @nvme_admin_sanitize_ns: Sanitize Namespace
85448545
*/
85458546
enum nvme_admin_opcode {
85468547
nvme_admin_delete_sq = 0x00,
@@ -8592,6 +8593,7 @@ enum nvme_admin_opcode {
85928593
nvme_admin_get_lba_status = 0x86,
85938594
nvme_admin_program_act_mgmt = 0x88,
85948595
nvme_admin_mem_range_set_mgmt = 0x89,
8596+
nvme_admin_sanitize_ns = 0x8c,
85958597
};
85968598

85978599
/**
@@ -8703,14 +8705,19 @@ enum nvme_identify_cns {
87038705
* @NVME_LOG_LID_REACHABILITY_GROUPS: Reachability Groups
87048706
* @NVME_LOG_LID_REACHABILITY_ASSOCIATIONS: Reachability Associations
87058707
* @NVME_LOG_LID_CHANGED_ALLOC_NS: Changed Allocated Namespace List
8708+
* @NVME_LOG_LID_DEV_PERSONALITY: Device Personalities
8709+
* @NVME_LOG_LID_CROSS_CTRL_RESET: Cross-Controller Reset
8710+
* @NVME_LOG_LID_LOST_HOST_COMMUNICATION: Lost Host Communication
87068711
* @NVME_LOG_LID_FDP_CONFIGS: FDP Configurations
87078712
* @NVME_LOG_LID_FDP_RUH_USAGE: Reclaim Unit Handle Usage
87088713
* @NVME_LOG_LID_FDP_STATS: FDP Statistics
87098714
* @NVME_LOG_LID_FDP_EVENTS: FDP Events
8715+
* @NVME_LOG_LID_POWER_MEASUREMENT: Power Measurement
87108716
* @NVME_LOG_LID_DISCOVERY: Discovery
87118717
* @NVME_LOG_LID_HOST_DISCOVERY: Host Discovery
87128718
* @NVME_LOG_LID_AVE_DISCOVERY: AVE Discovery
87138719
* @NVME_LOG_LID_PULL_MODEL_DDC_REQ: Pull Model DDC Request
8720+
* @NVME_LOG_LID_SANITIZE_NS_STATUS_LIST: Sanitize Namespace Status List
87148721
* @NVME_LOG_LID_RESERVATION: Reservation Notification
87158722
* @NVME_LOG_LID_SANITIZE: Sanitize Status
87168723
* @NVME_LOG_LID_ZNS_CHANGED_ZONES: Changed Zone List
@@ -8745,14 +8752,19 @@ enum nvme_cmd_get_log_lid {
87458752
NVME_LOG_LID_REACHABILITY_GROUPS = 0x1a,
87468753
NVME_LOG_LID_REACHABILITY_ASSOCIATIONS = 0x1b,
87478754
NVME_LOG_LID_CHANGED_ALLOC_NS = 0x1c,
8755+
NVME_LOG_LID_DEV_PERSONALITY = 0x1d,
8756+
NVME_LOG_LID_CROSS_CTRL_RESET = 0x1e,
8757+
NVME_LOG_LID_LOST_HOST_COMMUNICATION = 0x1f,
87488758
NVME_LOG_LID_FDP_CONFIGS = 0x20,
87498759
NVME_LOG_LID_FDP_RUH_USAGE = 0x21,
87508760
NVME_LOG_LID_FDP_STATS = 0x22,
87518761
NVME_LOG_LID_FDP_EVENTS = 0x23,
8762+
NVME_LOG_LID_POWER_MEASUREMENT = 0x25,
87528763
NVME_LOG_LID_DISCOVERY = 0x70,
87538764
NVME_LOG_LID_HOST_DISCOVERY = 0x71,
87548765
NVME_LOG_LID_AVE_DISCOVERY = 0x72,
87558766
NVME_LOG_LID_PULL_MODEL_DDC_REQ = 0x73,
8767+
NVME_LOG_LID_SANITIZE_NS_STATUS_LIST = 0x7f,
87568768
NVME_LOG_LID_RESERVATION = 0x80,
87578769
NVME_LOG_LID_SANITIZE = 0x81,
87588770
NVME_LOG_LID_ZNS_CHANGED_ZONES = 0xbf,
@@ -8793,6 +8805,10 @@ enum nvme_cmd_get_log_lid {
87938805
* @NVME_FEAT_FID_NS_ADMIN_LABEL: Namespace Admin Label
87948806
* @NVME_FEAT_FID_KEY_VALUE: Key Value Configuration
87958807
* @NVME_FEAT_FID_CTRL_DATA_QUEUE: Controller Data Queue
8808+
* @NVME_FEAT_FID_CONF_DEV_PERSONALITY: Configurable Device Personality
8809+
* @NVME_FEAT_FID_POWER_LIMIT: Power Limit
8810+
* @NVME_FEAT_FID_POWER_THRESH: Power Threshold
8811+
* @NVME_FEAT_FID_POEWR_MEASUREMENT: Power Measurement
87968812
* @NVME_FEAT_FID_EMB_MGMT_CTRL_ADDR: Embedded Management Controller Address
87978813
* @NVME_FEAT_FID_HOST_MGMT_AGENT_ADDR: Host Management Agent Address
87988814
* @NVME_FEAT_FID_ENH_CTRL_METADATA: Enhanced Controller Metadata
@@ -8839,6 +8855,10 @@ enum nvme_features_id {
88398855
NVME_FEAT_FID_NS_ADMIN_LABEL = 0x1f,
88408856
NVME_FEAT_FID_KEY_VALUE = 0x20,
88418857
NVME_FEAT_FID_CTRL_DATA_QUEUE = 0x21,
8858+
NVME_FEAT_FID_CONF_DEV_PERSONALITY = 0x22,
8859+
NVME_FEAT_FID_POWER_LIMIT = 0x23,
8860+
NVME_FEAT_FID_POWER_THRESH = 0x24,
8861+
NVME_FEAT_FID_POEWR_MEASUREMENT = 0x25,
88428862
NVME_FEAT_FID_EMB_MGMT_CTRL_ADDR = 0x78,
88438863
NVME_FEAT_FID_HOST_MGMT_AGENT_ADDR = 0x79,
88448864
NVME_FEAT_FID_ENH_CTRL_METADATA = 0x7d,

nvme-print.c

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -771,12 +771,14 @@ const char *nvme_log_to_string(__u8 lid)
771771
case NVME_LOG_LID_ENDURANCE_GROUP: return "Endurance Group Information";
772772
case NVME_LOG_LID_PREDICTABLE_LAT_NVMSET: return "Predictable Latency Per NVM Set";
773773
case NVME_LOG_LID_PREDICTABLE_LAT_AGG: return "Predictable Latency Event Aggregate";
774-
case NVME_LOG_LID_MEDIA_UNIT_STATUS: return "Media Unit Status";
775-
case NVME_LOG_LID_SUPPORTED_CAP_CONFIG_LIST: return "Supported Capacity Configuration List";
776774
case NVME_LOG_LID_ANA: return "Asymmetric Namespace Access";
777775
case NVME_LOG_LID_PERSISTENT_EVENT: return "Persistent Event Log";
778776
case NVME_LOG_LID_LBA_STATUS: return "LBA Status Information";
779777
case NVME_LOG_LID_ENDURANCE_GRP_EVT: return "Endurance Group Event Aggregate";
778+
case NVME_LOG_LID_MEDIA_UNIT_STATUS:
779+
return "Media Unit Status";
780+
case NVME_LOG_LID_SUPPORTED_CAP_CONFIG_LIST:
781+
return "Supported Capacity Configuration List";
780782
case NVME_LOG_LID_FID_SUPPORTED_EFFECTS: return "Feature Identifiers Supported and Effects";
781783
case NVME_LOG_LID_MI_CMD_SUPPORTED_EFFECTS: return "NVMe-MI Commands Supported and Effects";
782784
case NVME_LOG_LID_CMD_AND_FEAT_LOCKDOWN: return "Command and Feature Lockdown";
@@ -788,14 +790,24 @@ const char *nvme_log_to_string(__u8 lid)
788790
case NVME_LOG_LID_REACHABILITY_GROUPS: return "Reachability Groups";
789791
case NVME_LOG_LID_REACHABILITY_ASSOCIATIONS: return "Reachability Associations";
790792
case NVME_LOG_LID_CHANGED_ALLOC_NS: return "Changed Allocated Namespace List";
793+
case NVME_LOG_LID_DEV_PERSONALITY:
794+
return "Device Personalities";
795+
case NVME_LOG_LID_CROSS_CTRL_RESET:
796+
return "Cross-Controller Reset";
797+
case NVME_LOG_LID_LOST_HOST_COMMUNICATION:
798+
return "Lost Host Communication";
791799
case NVME_LOG_LID_FDP_CONFIGS: return "FDP Configurations";
792800
case NVME_LOG_LID_FDP_RUH_USAGE: return "Reclaim Unit Handle Usage";
793801
case NVME_LOG_LID_FDP_STATS: return "FDP Statistics";
794802
case NVME_LOG_LID_FDP_EVENTS: return "FDP Events";
803+
case NVME_LOG_LID_POWER_MEASUREMENT:
804+
return "Power Measurement";
795805
case NVME_LOG_LID_DISCOVERY: return "Discovery";
796806
case NVME_LOG_LID_HOST_DISCOVERY: return "Host Discovery";
797807
case NVME_LOG_LID_AVE_DISCOVERY: return "AVE Discovery";
798808
case NVME_LOG_LID_PULL_MODEL_DDC_REQ: return "Pull Model DDC Request";
809+
case NVME_LOG_LID_SANITIZE_NS_STATUS_LIST:
810+
return "Sanitize Namespace Status List";
799811
case NVME_LOG_LID_RESERVATION: return "Reservation Notification";
800812
case NVME_LOG_LID_SANITIZE: return "Sanitize Status";
801813
case NVME_LOG_LID_ZNS_CHANGED_ZONES: return "Changed Zone List";
@@ -902,6 +914,11 @@ const char *nvme_feature_to_string(enum nvme_features_id feature)
902914
case NVME_FEAT_FID_NS_ADMIN_LABEL: return "Namespace Admin Label";
903915
case NVME_FEAT_FID_KEY_VALUE: return "Key Value Configuration";
904916
case NVME_FEAT_FID_CTRL_DATA_QUEUE: return "Controller Data Queue";
917+
case NVME_FEAT_FID_CONF_DEV_PERSONALITY:
918+
return "Configurable Device Personality";
919+
case NVME_FEAT_FID_POWER_LIMIT: return "Power Limit";
920+
case NVME_FEAT_FID_POWER_THRESH: return "Power Threshold";
921+
case NVME_FEAT_FID_POEWR_MEASUREMENT: return "Power Measurement";
905922
case NVME_FEAT_FID_EMB_MGMT_CTRL_ADDR: return "Embedded Management Controller Address";
906923
case NVME_FEAT_FID_HOST_MGMT_AGENT_ADDR:return "Host Management Agent Address";
907924
case NVME_FEAT_FID_ENH_CTRL_METADATA: return "Enhanced Controller Metadata";

0 commit comments

Comments
 (0)