spdk_nvme_ctrlr_data Struct Reference
Collaboration diagram for spdk_nvme_ctrlr_data:

Data Fields

uint16_t vid
 pci vendor id
 
uint16_t ssvid
 pci subsystem vendor id
 
int8_t sn [SPDK_NVME_CTRLR_SN_LEN]
 serial number
 
int8_t mn [SPDK_NVME_CTRLR_MN_LEN]
 model number
 
uint8_t fr [SPDK_NVME_CTRLR_FR_LEN]
 firmware revision
 
uint8_t rab
 recommended arbitration burst
 
uint8_t ieee [3]
 ieee oui identifier
 
struct {
   uint8_t   multi_port: 1
 
   uint8_t   multi_ctrlr: 1
 
   uint8_t   sr_iov: 1
 
   uint8_t   ana_reporting: 1
 
   uint8_t   reserved: 4
 
cmic
 controller multi-path I/O and namespace sharing capabilities
 
uint8_t mdts
 maximum data transfer size
 
uint16_t cntlid
 controller id
 
union spdk_nvme_vs_register ver
 version
 
uint32_t rtd3r
 RTD3 resume latency.
 
uint32_t rtd3e
 RTD3 entry latency.
 
struct spdk_nvme_cdata_oaes oaes
 optional asynchronous events supported
 
struct spdk_nvme_cdata_ctratt ctratt
 controller attributes
 
uint16_t rrls
 Read Recovery Levels Supported.
 
uint8_t reserved_102 [9]
 
uint8_t cntrltype
 Controller Type.
 
uint8_t fguid [16]
 FRU globally unique identifier.
 
uint16_t crdt [3]
 Command Retry Delay Time 1, 2 and 3.
 
uint8_t reserved_134 [119]
 
struct {
   uint8_t   nvmesd: 1
 
   uint8_t   nvmee: 1
 
   uint8_t   nvmsr_rsvd: 6
 
nvmsr
 NVM Subsystem Report.
 
struct {
   uint8_t   vwcr: 7
 
   uint8_t   vwcrv: 1
 
vwci
 VPD Write Cycle Information.
 
struct {
   uint8_t   smbusme: 1
 
   uint8_t   pcieme: 1
 
   uint8_t   mec_rsvd: 6
 
mec
 Management Endpoint Capabilities.
 
struct spdk_nvme_cdata_oacs oacs
 optional admin command support
 
uint8_t acl
 abort command limit
 
uint8_t aerl
 asynchronous event request limit
 
struct {
   uint8_t   slot1_ro: 1
 
   uint8_t   num_slots: 3
 
   uint8_t   activation_without_reset: 1
 
   uint8_t   multiple_update_detection: 1
 
   uint8_t   frmw_rsvd: 2
 
frmw
 firmware updates
 
struct {
   uint8_t   ns_smart: 1
 
   uint8_t   celp: 1
 
   uint8_t   edlp: 1
 
   uint8_t   telemetry: 1
 
   uint8_t   pelp: 1
 
   uint8_t   lplp: 1
 
   uint8_t   da4_telemetry: 1
 
   uint8_t   lpa_rsvd: 1
 
lpa
 log page attributes
 
uint8_t elpe
 error log page entries
 
uint8_t npss
 number of power states supported
 
struct {
   uint8_t   spec_format: 1
 
   uint8_t   avscc_rsvd: 7
 
avscc
 admin vendor specific command configuration
 
struct {
   uint8_t   supported: 1
 controller supports autonomous power state transitions
 
   uint8_t   apsta_rsvd: 7
 
apsta
 autonomous power state transition attributes
 
uint16_t wctemp
 warning composite temperature threshold
 
uint16_t cctemp
 critical composite temperature threshold
 
uint16_t mtfa
 maximum time for firmware activation
 
uint32_t hmpre
 host memory buffer preferred size
 
uint32_t hmmin
 host memory buffer minimum size
 
uint64_t tnvmcap [2]
 total NVM capacity
 
uint64_t unvmcap [2]
 unallocated NVM capacity
 
struct {
   uint8_t   num_rpmb_units: 3
 
   uint8_t   auth_method: 3
 
   uint8_t   reserved1: 2
 
   uint8_t   reserved2
 
   uint8_t   total_size
 
   uint8_t   access_size
 
rpmbs
 replay protected memory block support
 
uint16_t edstt
 extended device self-test time (in minutes)
 
union {
   uint8_t   raw
 
   struct {
      uint8_t   one_only: 1
 Device supports only one device self-test operation at a time.
 
      uint8_t   reserved: 7
 
   }   bits
 
dsto
 device self-test options
 
uint8_t fwug
 Firmware update granularity. More...
 
uint16_t kas
 Keep Alive Support. More...
 
union {
   uint16_t   raw
 
   struct {
      uint16_t   supported: 1
 
      uint16_t   reserved: 15
 
   }   bits
 
hctma
 Host controlled thermal management attributes.
 
uint16_t mntmt
 Minimum thermal management temperature.
 
uint16_t mxtmt
 Maximum thermal management temperature.
 
union {
   uint32_t   raw
 
   struct {
      uint32_t   crypto_erase: 1
 
      uint32_t   block_erase: 1
 
      uint32_t   overwrite: 1
 
      uint32_t   reserved: 29
 
   }   bits
 
sanicap
 Sanitize capabilities.
 
uint32_t hmminds
 Host memory buffer minimum descriptor entry size.
 
uint16_t hmmaxd
 Host memory maximum descriptor entries.
 
uint16_t nsetidmax
 NVM set identifier maximum.
 
uint16_t endgidmax
 Endurance group identifier maximum.
 
uint8_t anatt
 ANA transition time.
 
struct {
   uint8_t   ana_optimized_state: 1
 
   uint8_t   ana_non_optimized_state: 1
 
   uint8_t   ana_inaccessible_state: 1
 
   uint8_t   ana_persistent_loss_state: 1
 
   uint8_t   ana_change_state: 1
 
   uint8_t   reserved: 1
 
   uint8_t   no_change_anagrpid: 1
 
   uint8_t   non_zero_anagrpid: 1
 
anacap
 
uint32_t anagrpmax
 
uint32_t nanagrpid
 
uint32_t pels
 
uint16_t domain_identifier
 
uint8_t reserved3 [10]
 
uint8_t megcap [SPDK_NVME_CTRLR_MEGCAP_LEN]
 
uint8_t reserved384 [128]
 
struct {
   uint8_t   min: 4
 
   uint8_t   max: 4
 
sqes
 submission queue entry size
 
struct {
   uint8_t   min: 4
 
   uint8_t   max: 4
 
cqes
 completion queue entry size
 
uint16_t maxcmd
 
uint32_t nn
 number of namespaces
 
struct spdk_nvme_cdata_oncs oncs
 optional nvm command support
 
struct spdk_nvme_cdata_fuses fuses
 fused operation support
 
struct {
   uint8_t   format_all_ns: 1
 
   uint8_t   erase_all_ns: 1
 
   uint8_t   crypto_erase_supported: 1
 
   uint8_t   reserved: 5
 
fna
 format nvm attributes
 
struct {
   uint8_t   present: 1
 
   uint8_t   flush_broadcast: 2
 
   uint8_t   reserved: 5
 
vwc
 volatile write cache
 
uint16_t awun
 atomic write unit normal
 
uint16_t awupf
 atomic write unit power fail
 
uint8_t nvscc
 NVM vendor specific command configuration.
 
uint8_t nwpc
 Namespace Write Protection Capabilities.
 
uint16_t acwu
 atomic compare & write unit
 
struct {
   uint16_t   copy_format0: 1
 
   uint16_t   reserved1: 15
 
ocfs
 optional copy formats supported
 
struct spdk_nvme_cdata_sgls sgls
 
uint32_t mnan
 
uint8_t maxdna [SPDK_NVME_MAXDNA_FIELD_SIZE]
 
uint32_t maxcna
 
uint8_t reserved4 [204]
 
uint8_t subnqn [SPDK_NVME_NQN_FIELD_SIZE]
 
uint8_t reserved5 [768]
 
struct spdk_nvme_cdata_nvmf_specific nvmf_specific
 
struct spdk_nvme_power_state psd [32]
 
uint8_t vs [1024]
 

Field Documentation

◆ fwug

uint8_t spdk_nvme_ctrlr_data::fwug

Firmware update granularity.

4KB units 0x00 = no information provided 0xFF = no restriction

◆ kas

uint16_t spdk_nvme_ctrlr_data::kas

Keep Alive Support.

Granularity of keep alive timer in 100 ms units 0 = keep alive not supported


The documentation for this struct was generated from the following file: