@@ -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 */
39513964enum 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