Provided by: libnvme-dev_1.11.1-1_amd64 bug

NAME

       struct nvme_id_ctrl - Identify Controller data structure

SYNOPSIS

       struct nvme_id_ctrl {
           __le16 vid;
           __le16 ssvid;
           char sn[20];
           char mn[40];
           char fr[8];
           __u8 rab;
           __u8 ieee[3];
           __u8 cmic;
           __u8 mdts;
           __le16 cntlid;
           __le32 ver;
           __le32 rtd3r;
           __le32 rtd3e;
           __le32 oaes;
           __le32 ctratt;
           __le16 rrls;
           __u8 rsvd102[9];
           __u8 cntrltype;
           __u8 fguid[16];
           __le16 crdt1;
           __le16 crdt2;
           __le16 crdt3;
           __u8 rsvd134[119];
           __u8 nvmsr;
           __u8 vwci;
           __u8 mec;
           __le16 oacs;
           __u8 acl;
           __u8 aerl;
           __u8 frmw;
           __u8 lpa;
           __u8 elpe;
           __u8 npss;
           __u8 avscc;
           __u8 apsta;
           __le16 wctemp;
           __le16 cctemp;
           __le16 mtfa;
           __le32 hmpre;
           __le32 hmmin;
           __u8 tnvmcap[16];
           __u8 unvmcap[16];
           __le32 rpmbs;
           __le16 edstt;
           __u8 dsto;
           __u8 fwug;
           __le16 kas;
           __le16 hctma;
           __le16 mntmt;
           __le16 mxtmt;
           __le32 sanicap;
           __le32 hmminds;
           __le16 hmmaxd;
           __le16 nsetidmax;
           __le16 endgidmax;
           __u8 anatt;
           __u8 anacap;
           __le32 anagrpmax;
           __le32 nanagrpid;
           __le32 pels;
           __le16 domainid;
           __u8 rsvd358[10];
           __u8 megcap[16];
           __u8 tmpthha;
           __u8 rsvd385[127];
           __u8 sqes;
           __u8 cqes;
           __le16 maxcmd;
           __le32 nn;
           __le16 oncs;
           __le16 fuses;
           __u8 fna;
           __u8 vwc;
           __le16 awun;
           __le16 awupf;
           __u8 icsvscc;
           __u8 nwpc;
           __le16 acwu;
           __le16 ocfs;
           __le32 sgls;
           __le32 mnan;
           __u8 maxdna[16];
           __le32 maxcna;
           __le32 oaqd;
           __u8 rsvd568[2];
           __u16 cmmrtd;
           __u16 nmmrtd;
           __u8 minmrtg;
           __u8 maxmrtg;
           __u8 trattr;
           __u8 rsvd577;
           __u16 mcudmq;
           __u16 mnsudmq;
           __u16 mcmr;
           __u16 nmcmr;
           __u16 mcdqpc;
           __u8 rsvd588[180];
           char subnqn[NVME_NQN_LENGTH];
           __u8 rsvd1024[768];
           __le32 ioccsz;
           __le32 iorcsz;
           __le16 icdoff;
           __u8 fcatt;
           __u8 msdbd;
           __le16 ofcs;
           __u8 dctype;
           __u8 rsvd1807[241];
           struct nvme_id_psd      psd[32];
           __u8 vs[1024];
        };

Members

       vid         PCI Vendor ID, the company vendor identifier that is assigned by the PCI SIG.

       ssvid       PCI Subsystem Vendor ID, the company vendor identifier that is assigned by the
                   PCI SIG for the subsystem.

       sn          Serial Number in ASCII

       mn          Model Number in ASCII

       fr          Firmware Revision in ASCII, the currently active firmware revision for the NVM
                   subsystem

       rab         Recommended Arbitration Burst, reported as a power of two

       ieee        IEEE assigned Organization Unique Identifier

       cmic        Controller  Multipath IO and Namespace Sharing  Capabilities of the controller
                   and NVM subsystem. See enum nvme_id_ctrl_cmic.

       mdts        Max Data Transfer Size is the largest data transfer size. The host should  not
                   submit a command that exceeds this maximum data transfer size. The value is in
                   units of the minimum memory page size (CAP.MPSMIN) and is reported as a  power
                   of two

       cntlid      Controller  ID, the NVM subsystem unique controller identifier associated with
                   the controller.

       ver         Version, this field contains the value reported in the  Version  register,  or
                   property (see enum nvme_registers NVME_REG_VS).

       rtd3r       RTD3  Resume  Latency,  the  expected  latency  in microseconds to resume from
                   Runtime D3

       rtd3e       RTD3 Exit Latency, the typical latency in microseconds to enter Runtime D3.

       oaes        Optional Async Events Supported, see enum nvme_id_ctrl_oaes.

       ctratt      Controller Attributes, see enum nvme_id_ctrl_ctratt.

       rrls        Read Recovery Levels. If a bit is set, then the  corresponding  Read  Recovery
                   Level  is supported. If a bit is cleared, then the corresponding Read Recovery
                   Level is not supported.

       rsvd102     Reserved

       cntrltype   Controller Type, see enum nvme_id_ctrl_cntrltype

       fguid       FRU GUID,  a  128-bit  value  that  is  globally  unique  for  a  given  Field
                   Replaceable Unit

       crdt1       Controller Retry Delay time in 100 millisecond units if CQE CRD field is 1

       crdt2       Controller Retry Delay time in 100 millisecond units if CQE CRD field is 2

       crdt3       Controller Retry Delay time in 100 millisecond units if CQE CRD field is 3

       rsvd134     Reserved

       nvmsr       NVM Subsystem Report, see enum nvme_id_ctrl_nvmsr

       vwci        VPD Write Cycle Information, see enum nvme_id_ctrl_vwci

       mec         Management Endpoint Capabilities, see enum nvme_id_ctrl_mec

       oacs        Optional  Admin  Command  Support,the  optional  Admin  commands  and features
                   supported by the controller, see enum nvme_id_ctrl_oacs.

       acl         Abort Command Limit,  the  maximum  number  of  concurrently  executing  Abort
                   commands supported by the controller. This is a 0's based value.

       aerl        Async  Event  Request  Limit,  the  maximum number of concurrently outstanding
                   Asynchronous Event Request commands supported by the controller This is a  0's
                   based value.

       frmw        Firmware  Updates  indicates capabilities regarding firmware updates. See enum
                   nvme_id_ctrl_frmw.

       lpa         Log Page Attributes, see enum nvme_id_ctrl_lpa.

       elpe        Error Log Page Entries, the maximum number of Error  Information  log  entries
                   that are stored by the controller. This field is a 0's based value.

       npss        Number  of  Power  States  Supported,  the  number of NVM Express power states
                   supported by the controller, indicating the number of valid entries in  struct
                   nvme_id_ctrl.psd. This is a 0's based value.

       avscc       Admin Vendor Specific Command Configuration, see enum nvme_id_ctrl_avscc.

       apsta       Autonomous Power State Transition Attributes, see enum nvme_id_ctrl_apsta.

       wctemp      Warning  Composite  Temperature  Threshold  indicates  the  minimum  Composite
                   Temperature field value (see  struct  nvme_smart_log.critical_comp_time)  that
                   indicates   an   overheating   condition  during  which  controller  operation
                   continues.

       cctemp      Critical  Composite  Temperature  Threshold,  field  indicates   the   minimum
                   Composite        Temperature        field        value       (see       struct
                   nvme_smart_log.critical_comp_time)  that  indicates  a  critical   overheating
                   condition.

       mtfa        Maximum Time for Firmware Activation indicates the maximum time the controller
                   temporarily  stops  processing  commands  to  activate  the  firmware   image,
                   specified  in  100  millisecond  units.  This  field  is  always  valid if the
                   controller supports firmware activation without a reset.

       hmpre       Host Memory Buffer Preferred Size indicates the preferred size that  the  host
                   is requested to allocate for the Host Memory Buffer feature in 4 KiB units.

       hmmin       Host  Memory  Buffer  Minimum Size indicates the minimum size that the host is
                   requested to allocate for the Host Memory Buffer feature in 4 KiB units.

       tnvmcap     Total NVM Capacity, the total NVM capacity in the NVM subsystem.  The value is
                   in bytes.

       unvmcap     Unallocated  NVM  Capacity, the unallocated NVM capacity in the NVM subsystem.
                   The value is in bytes.

       rpmbs       Replay Protected Memory Block Support, see enum nvme_id_ctrl_rpmbs.

       edstt       Extended Device Self-test Time, if Device Self-test command is supported  (see
                   struct nvme_id_ctrl.oacs, NVME_CTRL_OACS_SELF_TEST), then this field indicates
                   the nominal amount of time in one minute units that the  controller  takes  to
                   complete an extended device self-test operation when in power state 0.

       dsto        Device Self-test Options, see enum nvme_id_ctrl_dsto.

       fwug        Firmware   Update   Granularity   indicates   the  granularity  and  alignment
                   requirement of the firmware image being updated by the Firmware Image Download
                   command.  The  value  is  reported  in 4 KiB units. A value of 0h indicates no
                   information  on  granularity  is  provided.  A  value  of  FFh  indicates   no
                   restriction

       kas         Keep  Alive  Support  indicates the granularity of the Keep Alive Timer in 100
                   millisecond units.

       hctma       Host Controlled Thermal Management Attributes, see enum nvme_id_ctrl_hctm.

       mntmt       Minimum Thermal Management Temperature indicates the minimum  temperature,  in
                   degrees   Kelvin,  that  the  host  may  request  in  the  Thermal  Management
                   Temperature 1 field and Thermal  Management  Temperature  2  field  of  a  Set
                   Features command with the Feature Identifier field set to NVME_FEAT_FID_HCTM.

       mxtmt       Maximum  Thermal  Management Temperature indicates the maximum temperature, in
                   degrees  Kelvin,  that  the  host  may  request  in  the  Thermal   Management
                   Temperature  1  field  and  Thermal  Management Temperature 2 field of the Set
                   Features command with the Feature Identifier set to NVME_FEAT_FID_HCTM.

       sanicap     Sanitize Capabilities, see enum nvme_id_ctrl_sanicap

       hmminds     Host Memory Buffer Minimum Descriptor Entry Size indicates the minimum  usable
                   size of a Host Memory Buffer Descriptor Entry in 4 KiB units.

       hmmaxd      Host  Memory  Maximum  Descriptors Entries indicates the number of usable Host
                   Memory Buffer Descriptor Entries.

       nsetidmax   NVM Set Identifier Maximum, defines the maximum  value  of  a  valid  NVM  Set
                   Identifier for any controller in the NVM subsystem.

       endgidmax   Endurance  Group  Identifier  Maximum,  defines  the  maximum value of a valid
                   Endurance Group Identifier for any controller in the NVM subsystem.

       anatt       ANA Transition Time indicates the maximum amount of time, in  seconds,  for  a
                   transition  between ANA states or the maximum amount of time, in seconds, that
                   the controller reports the ANA change state.

       anacap      Asymmetric Namespace Access Capabilities, see enum nvme_id_ctrl_anacap.

       anagrpmax   ANA Group Identifier Maximum indicates the maximum value of a valid ANA  Group
                   Identifier for any controller in the NVM subsystem.

       nanagrpid   Number  of  ANA Group Identifiers indicates the number of ANA groups supported
                   by this controller.

       pels        Persistent Event Log Size  indicates  the  maximum  reportable  size  for  the
                   Persistent Event Log.

       domainid    Domain  Identifier  indicates  the identifier of the domain that contains this
                   controller.

       rsvd358     Reserved

       megcap      Max Endurance Group Capacity  indicates  the  maximum  capacity  of  a  single
                   Endurance Group.

       tmpthha     Temperature Threshold Hysteresis Attributes

       rsvd385     Reserved

       sqes        Submission Queue Entry Size, see enum nvme_id_ctrl_sqes.

       cqes        Completion Queue Entry Size, see enum nvme_id_ctrl_cqes.

       maxcmd      Maximum Outstanding Commands indicates the maximum number of commands that the
                   controller processes at one time for a particular queue.

       nn          Number of Namespaces indicates the maximum value of a valid nsid for  the  NVM
                   subsystem.  If the MNAN (struct nvme_id_ctrl.mnan field is cleared to 0h, then
                   this field also indicates the maximum number of namespaces  supported  by  the
                   NVM subsystem.

       oncs        Optional NVM Command Support, see enum nvme_id_ctrl_oncs.

       fuses       Fused Operation Support, see enum nvme_id_ctrl_fuses.

       fna         Format NVM Attributes, see enum nvme_id_ctrl_fna.

       vwc         Volatile Write Cache, see enum nvme_id_ctrl_vwc.

       awun        Atomic  Write Unit Normal indicates the size of the write operation guaranteed
                   to be written atomically to the NVM across all namespaces with  any  supported
                   namespace  format  during normal operation. This field is specified in logical
                   blocks and is a 0's based value.

       awupf       Atomic Write Unit Power  Fail  indicates  the  size  of  the  write  operation
                   guaranteed  to be written atomically to the NVM across all namespaces with any
                   supported namespace format during a power fail or error condition. This  field
                   is specified in logical blocks and is a 0’s based value.

       icsvscc     NVM Vendor Specific Command Configuration, see enum nvme_id_ctrl_nvscc.

       nwpc        Namespace Write Protection Capabilities, see enum nvme_id_ctrl_nwpc.

       acwu        Atomic  Compare  &  Write  Unit  indicates  the  size  of  the write operation
                   guaranteed to be written atomically to the NVM across all namespaces with  any
                   supported namespace format for a Compare and Write fused operation. This field
                   is specified in logical blocks and is a 0’s based value.

       ocfs        Optional Copy Formats Supported, each bit n  means  controller  supports  Copy
                   Format n.

       sgls        SGL Support, see enum nvme_id_ctrl_sgls

       mnan        Maximum   Number  of  Allowed  Namespaces  indicates  the  maximum  number  of
                   namespaces supported by the NVM subsystem.

       maxdna      Maximum Domain Namespace Attachments indicates the maximum of the sum  of  the
                   number of namespaces attached to each I/O controller in the Domain.

       maxcna      Maximum  I/O  Controller Namespace Attachments indicates the maximum number of
                   namespaces that are allowed to be attached to this I/O controller.

       oaqd        Optimal Aggregated Queue Depth indicates the recommended maximum total  number
                   of  outstanding  I/O  commands  across  all  I/O  queues on the controller for
                   optimal operation.

       rsvd568     Reserved

       cmmrtd      Controller Maximum Memory Range Tracking  Descriptors  indicates  the  maximum
                   number of Memory Range Tracking Descriptors the controller supports.

       nmmrtd      NVM  Subsystem Maximum Memory Range Tracking Descriptors indicates the maximum
                   number of Memory Range Tracking Descriptors the NVM subsystem supports.

       minmrtg     Minimum  Memory  Range  Tracking  Granularity  indicates  the  minimum   value
                   supported  in the Requested Memory Range Tracking Granularity (RMRTG) field of
                   the Track Memory Ranges data structure.

       maxmrtg     Maximum  Memory  Range  Tracking  Granularity  indicates  the  maximum   value
                   supported  in the Requested Memory Range Tracking Granularity (RMRTG) field of
                   the Track Memory Ranges data structure.

       trattr      Tracking Attributes indicates supported attributes for the Track Send  command
                   and Track Receive command.

       rsvd577     Reserved

       mcudmq      Maximum  Controller User Data Migration Queues indicates the maximum number of
                   User Data Migration Queues supported by the controller.

       mnsudmq     Maximum NVM Subsystem User Data Migration Queues indicates the maximum  number
                   of User Data Migration Queues supported by the NVM subsystem.

       mcmr        Maximum  CDQ  Memory  Ranges  indicates  the  maximum  number of memory ranges
                   allowed to be specified by the PRP1 field of a Controller Data Queue command.

       nmcmr       NVM Subsystem Maximum CDQ Memory Ranges indicates the maximum number of memory
                   ranges for all Controller Data Queues in the NVM subsystem.

       mcdqpc      Maximum  Controller  Data Queue PRP Count indicates the maximum number of PRPs
                   allowed to be specified in the PRP list in the Controller Data Queue command.

       rsvd588     Reserved

       subnqn      NVM Subsystem NVMe Qualified Name, UTF-8 null terminated string

       rsvd1024    Reserved

       ioccsz      I/O Queue Command Capsule Supported Size,  defines  the  maximum  I/O  command
                   capsule size in 16 byte units.

       iorcsz      I/O  Queue  Response  Capsule Supported Size, defines the maximum I/O response
                   capsule size in 16 byte units.

       icdoff      In Capsule Data Offset, defines the offset where data starts within a capsule.
                   This value is applicable to I/O Queues only.

       fcatt       Fabrics Controller Attributes, see enum nvme_id_ctrl_fcatt.

       msdbd       Maximum  SGL  Data  Block Descriptors indicates the maximum number of SGL Data
                   Block or Keyed SGL Data Block descriptors that a host is allowed to place in a
                   capsule. A value of 0h indicates no limit.

       ofcs        Optional Fabric Commands Support, see enum nvme_id_ctrl_ofcs.

       dctype      Discovery  Controller  Type  (DCTYPE).  This  field  indicates  what  type  of
                   Discovery controller the controller is (see enum nvme_id_ctrl_dctype)

       rsvd1807    Reserved

       psd         Power State Descriptors, see struct nvme_id_psd.

       vs          Vendor Specific