Skip to content

Commit 29eac20

Browse files
authored
Merge pull request #178 from tbzatek/docs-updates-5
Docs strings updates (#5)
2 parents 67414dc + 4e678f8 commit 29eac20

2 files changed

Lines changed: 48 additions & 12 deletions

File tree

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# libnvme
22

33
This is the libnvme development C library. libnvme provides type
4-
defintions for NVMe specification structures, enumerations, and bit
4+
definitions for NVMe specification structures, enumerations, and bit
55
fields, helper functions to construct, dispatch, and decode commands
66
and payloads, and utilities to connect, scan, and manage nvme devices
77
on a Linux system.

src/nvme/types.h

Lines changed: 47 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3944,9 +3944,22 @@ enum nvme_ae_info_notice {
39443944

39453945
/**
39463946
* enum nvme_subsys_type - Type of the NVM subsystem.
3947-
* @NVME_NQN_DISC: Discovery type target subsystem
3948-
* @NVME_NQN_NVME: NVME type target subsystem
3949-
* @NVME_NQN_CURR: Current Discovery type target subsystem
3947+
* @NVME_NQN_DISC: Discovery type target subsystem. Describes a referral to another
3948+
* Discovery Service composed of Discovery controllers that provide
3949+
* additional discovery records. Multiple Referral entries may
3950+
* be reported for each Discovery Service (if that Discovery Service
3951+
* has multiple NVM subsystem ports or supports multiple protocols).
3952+
* @NVME_NQN_NVME: NVME type target subsystem. Describes an NVM subsystem whose
3953+
* controllers may have attached namespaces (an NVM subsystem
3954+
* that is not composed of Discovery controllers). Multiple NVM
3955+
* Subsystem entries may be reported for each NVM subsystem if
3956+
* that NVM subsystem has multiple NVM subsystem ports.
3957+
* @NVME_NQN_CURR: Current Discovery type target subsystem. Describes this Discovery
3958+
* subsystem (the Discovery Service that contains the controller
3959+
* processing the Get Log Page command). Multiple Current Discovery
3960+
* Subsystem entries may be reported for this Discovery subsystem
3961+
* if the current Discovery subsystem has multiple NVM subsystem
3962+
* ports.
39503963
*/
39513964
enum nvme_subsys_type {
39523965
NVME_NQN_DISC = 1,
@@ -3962,10 +3975,28 @@ enum nvme_subsys_type {
39623975
#define NVMF_NQN_SIZE 223
39633976
#define NVMF_TRSVCID_SIZE 32
39643977

3965-
#define NVMF_DISC_EFLAGS_NONE 0
3966-
#define NVMF_DISC_EFLAGS_DUPRETINFO 1
3967-
#define NVMF_DISC_EFLAGS_EPCSD 2
3968-
#define NVMF_DISC_EFLAGS_BOTH 3
3978+
/**
3979+
* enum nvmf_disc_eflags - Discovery Log Page entry flags.
3980+
* @NVMF_DISC_EFLAGS_NONE: Indicates that none of the DUPRETINFO or EPCSD
3981+
* features are supported.
3982+
* @NVMF_DISC_EFLAGS_DUPRETINFO: Duplicate Returned Information (DUPRETINFO):
3983+
* Indicates that using the content of this entry
3984+
* to access this Discovery Service returns the same
3985+
* information that is returned by using the content
3986+
* of other entries in this log page that also have
3987+
* this flag set.
3988+
* @NVMF_DISC_EFLAGS_EPCSD: Explicit Persistent Connection Support for Discovery (EPCSD):
3989+
* Indicates that Explicit Persistent Connections are
3990+
* supported for the Discovery controller.
3991+
* @NVMF_DISC_EFLAGS_BOTH: Indicates that both the DUPRETINFO and EPCSD
3992+
* features are supported.
3993+
*/
3994+
enum nvmf_disc_eflags {
3995+
NVMF_DISC_EFLAGS_NONE = 0,
3996+
NVMF_DISC_EFLAGS_DUPRETINFO = 1,
3997+
NVMF_DISC_EFLAGS_EPCSD = 2,
3998+
NVMF_DISC_EFLAGS_BOTH = 3,
3999+
};
39694000

39704001
/**
39714002
* struct nvmf_disc_log_entry - Discovery Log Page entry
@@ -3992,15 +4023,20 @@ enum nvme_subsys_type {
39924023
* @asqsz: Admin Max SQ Size (ASQSZ): Specifies the maximum size of an Admin
39934024
* Submission Queue. This applies to all controllers in the NVM
39944025
* subsystem. The value shall be a minimum of 32 entries.
3995-
* @eflags:
4026+
* @eflags: Entry Flags (EFLAGS): Indicates additional information related to
4027+
* the current entry. See &enum nvmf_disc_eflags.
39964028
* @trsvcid: Transport Service Identifier (TRSVCID): Specifies the NVMe Transport
39974029
* service identifier as an ASCII string. The NVMe Transport service
39984030
* identifier is specified by the associated NVMe Transport binding
39994031
* specification.
40004032
* @subnqn: NVM Subsystem Qualified Name (SUBNQN): NVMe Qualified Name (NQN)
4001-
* that uniquely identifies the NVM subsystem. For a Discovery Service,
4002-
* the value returned shall be the well-known Discovery Service NQN
4003-
* (nqn.2014-08.org.nvmexpress.discovery).
4033+
* that uniquely identifies the NVM subsystem. For a subsystem, if that
4034+
* Discovery subsystem has a unique NQN (i.e., the NVM Subsystem NVMe
4035+
* Qualified Name (SUBNQN) field in that Discovery subsystem's Identify
4036+
* Controller data structure contains a unique NQN value), then the
4037+
* value returned shall be that unique NQN. If the Discovery subsystem
4038+
* does not have a unique NQN, then the value returned shall be the
4039+
* well-known Discovery Service NQN (nqn.2014-08.org.nvmexpress.discovery).
40044040
* @traddr: Transport Address (TRADDR): Specifies the address of the NVM subsystem
40054041
* that may be used for a Connect command as an ASCII string. The
40064042
* Address Family field describes the reference for parsing this field.

0 commit comments

Comments
 (0)