Home
last modified time | relevance | path

Searched full:nvme (Results 1 – 25 of 117) sorted by relevance

12345

/linux/drivers/nvme/host/
H A DKconfig15 module will be called nvme.
18 bool "NVMe multipath support"
21 This option controls support for multipath access to NVMe
22 subsystems. If this option is enabled support for NVMe multipath
24 for NVMe multipath access is excluded from the kernel. When this
26 own /dev/nvmeXnY device entry and NVMe multipath access is
32 bool "NVMe verbose error reporting"
35 This option enables verbose reporting for NVMe errors. The
40 bool "NVMe hardware monitoring"
43 This provides support for NVMe hardware monitoring. If enabled,
[all …]
H A DMakefile5 obj-$(CONFIG_NVME_CORE) += nvme-core.o
6 obj-$(CONFIG_BLK_DEV_NVME) += nvme.o
7 obj-$(CONFIG_NVME_FABRICS) += nvme-fabrics.o
8 obj-$(CONFIG_NVME_RDMA) += nvme-rdma.o
9 obj-$(CONFIG_NVME_FC) += nvme-fc.o
10 obj-$(CONFIG_NVME_TCP) += nvme-tcp.o
11 obj-$(CONFIG_NVME_APPLE) += nvme-apple.o
13 nvme-core-y += core.o ioctl.o sysfs.o pr.o
14 nvme-core-$(CONFIG_NVME_VERBOSE_ERRORS) += constants.o
15 nvme-core-$(CONFIG_TRACING) += trace.o
[all …]
H A Dfabrics.c3 * NVMe over Fabrics common host code.
13 #include "nvme.h"
15 #include <linux/nvme-keyring.h>
126 * @ctrl: Host NVMe controller instance which we got the address
152 * nvmf_reg_read32() - NVMe Fabrics "Property Get" API function.
153 * @ctrl: Host NVMe controller instance maintaining the admin
155 * the allocated NVMe controller resource on the target system.
157 * register (see the fabrics section of the NVMe standard).
162 * from an NVMe controller on the target system.
165 * NVMe fabrics space.)
[all …]
H A Dfabrics.h3 * NVMe over Fabrics common host code.
76 * on adding a NVMe controller.
81 * better description) that will be used by an NVMe controller
84 * in the NVMe specification, "NVMe Qualified Names").
89 * @host_traddr: A transport-specific field identifying the NVME host port
91 * @host_iface: A transport-specific field identifying the NVME host
98 * @host: Virtual NVMe host, contains the NQN and Host ID.
147 * fabric implementation of NVMe fabrics.
151 * @name: Name of the NVMe fabric driver implementation.
153 * when adding a new NVMe controller.
[all …]
H A Dtrace.h8 #define TRACE_SYSTEM nvme
13 #include <linux/nvme.h>
17 #include "nvme.h"
75 TP_printk("nvme%d: %sqid=%d, cmdid=%u, nsid=%u, flags=0x%x, meta=0x%x, cmd=(%s %s)",
108 TP_printk("nvme%d: %sqid=%d, cmdid=%u, res=%#llx, retries=%u, flags=0x%x, status=%#x",
128 TP_printk("nvme%d: NVME_AEN=%#08x [%s]",
158 TP_printk("nvme%d: %sqid=%d, head=%u, tail=%u",
/linux/drivers/nvme/target/
H A DKconfig4 tristate "NVMe Target support"
11 This enabled target side support for the NVMe protocol, that is
12 it allows the Linux kernel to implement NVMe subsystems and
13 controllers and export Linux block devices as NVMe namespaces.
17 To configure the NVMe target you probably want to use the nvmetcli
21 bool "NVMe Target debugfs support"
30 bool "NVMe Target Passthrough support"
34 This enables target side NVMe passthru controller support for the
35 NVMe Over Fabrics protocol. It allows for hosts to manage and
36 directly access an actual NVMe controller residing on the target
[all …]
/linux/Documentation/nvme/
H A Dnvme-pci-endpoint-target.rst4 NVMe PCI Endpoint Function Target
9 The NVMe PCI endpoint function target driver implements an NVMe PCIe controller
10 using an NVMe fabrics target controller configured with the PCI transport type.
15 The NVMe PCI endpoint function target driver allows exposing an NVMe target
16 controller over a PCIe link, thus implementing an NVMe PCIe device similar to a
18 using NVMe over fabrics: the controller represents the interface to an NVMe
21 files or block devices, or can use NVMe passthrough to expose to the PCI host an
22 existing physical NVMe device or an NVMe fabrics host controller (e.g. a NVMe
25 The NVMe PCI endpoint function target driver relies as much as possible on the
26 NVMe target core code to parse and execute NVMe commands submitted by the PCIe
[all …]
H A Dfeature-and-quirk-policy.rst4 Linux NVMe feature and quirk policy
8 Linux NVMe driver and what is not.
16 The Linux NVMe host driver in drivers/nvme/host/ supports devices
17 implementing the NVM Express (NVMe) family of specifications, which
20 - the NVMe Base specification
23 - the NVMe Management Interface specification
25 See https://nvmexpress.org/developers/ for the NVMe specifications.
31 NVMe is a large suite of specifications, and contains features that are only
36 maintainability of the NVMe host driver.
38 Any feature implemented in the Linux NVMe host driver must support the
[all …]
/linux/drivers/scsi/qla2xxx/
H A Dqla_nvme.c9 #include <linux/nvme.h>
10 #include <linux/nvme-fc.h>
46 "%s: Not registering target since Host NVME is not enabled\n", in qla_nvme_register_remote()
113 /* Allocate a queue for NVMe traffic */
169 struct srb_iocb *nvme; in qla_nvme_release_fcp_cmd_kref() local
175 nvme = &sp->u.iocb_cmd; in qla_nvme_release_fcp_cmd_kref()
176 fd = nvme->u.nvme.desc; in qla_nvme_release_fcp_cmd_kref()
182 fd->rcv_rsplen = le16_to_cpu(nvme->u.nvme.rsp_pyld_len); in qla_nvme_release_fcp_cmd_kref()
314 __func__, sp, sp->handle, fcport, sp->u.iocb_cmd.u.nvme.desc, fcport->deleted); in qla_nvme_abort_work()
373 struct srb_iocb *nvme; in qla_nvme_xmt_ls_rsp() local
[all …]
H A Dqla_nvme.h11 #include <linux/nvme-fc-driver.h>
44 #define COMMAND_NVME 0x88 /* Command Type FC-NVMe IOCB */
56 __le16 nvme_rsp_dsd_len; /* NVMe RSP DSD length */
111 #define PT_LS4_UNSOL 0x56 /* pass-up unsolicited rec FC-NVMe request */
/linux/include/linux/
H A Dnvme-fc-driver.h14 * ********************** FC-NVME LS API ********************
16 * Data structures used by both FC-NVME hosts and FC-NVME
17 * targets to perform FC-NVME LS requests or transmit
25 * to the LLDD to perform a NVME-FC LS request and obtain
27 * Used by nvme-fc transport (host) to send LS's such as
71 * to request the transmit the NVME-FC LS response to a
72 * NVME-FC LS request. The structure originates in the LLDD
75 * FC exchange context for the NVME-FC LS request that was
80 * Used by the LLDD to pass the nvme-fc transport (host)
86 * or nvme-fc layer via the xxx_rcv_ls_req() transport routines.
[all …]
H A Dnvme-tcp.h3 * NVMe over Fabrics TCP protocol header.
10 #include <linux/nvme.h>
64 * struct nvme_tcp_hdr - nvme tcp pdu common header
81 * struct nvme_tcp_icreq_pdu - nvme tcp initialize connection request pdu
99 * struct nvme_tcp_icresp_pdu - nvme tcp initialize connection response pdu
117 * struct nvme_tcp_term_pdu - nvme tcp terminate connection pdu
132 * struct nvme_tcp_cmd_pdu - nvme tcp command capsule pdu
135 * @cmd: nvme command
143 * struct nvme_tcp_rsp_pdu - nvme tcp response capsule pdu
146 * @hdr: nvme-tcp generic header
[all …]
H A Dnvme-fc.h7 * This file contains definitions relative to FC-NVME-2 r1.08
19 /* FC-NVME Cmd IU Flags */
114 /* FC-NVME Link Services - LS cmd values (w0 bits 31:24) */
125 /* FC-NVME Link Service Descriptors */
162 /* FC-NVME LS RJT reason_code values */
195 /* FC-NVME LS RJT reason_explanation values */
423 * Note: FC-NVME-2 standard requires a "0x" prefix.
/linux/Documentation/PCI/endpoint/
H A Dpci-nvme-function.rst4 PCI NVMe Function
9 The PCI NVMe endpoint function implements a PCI NVMe controller using the NVMe
10 subsystem target core code. The driver for this function resides with the NVMe
11 subsystem as drivers/nvme/target/pci-epf.c.
13 See Documentation/nvme/nvme-pci-endpoint-target.rst for more details.
/linux/arch/arm64/boot/dts/apple/
H A Dt600x-nvme.dtsi3 * NVMe related devices for Apple T600x SoCs.
28 DIE_NODE(nvme): nvme@393cc0000 {
29 compatible = "apple,t6000-nvme-ans2", "apple,nvme-ans2";
31 reg-names = "nvme", "ans";
33 /* The NVME interrupt is always routed to die */
/linux/Documentation/fault-injection/
H A Dnvme-fault-injection.rst1 NVMe Fault Injection
8 Status can be found in include/linux/nvme.h
10 Following examples show how to inject an error into the nvme.
42 nvme_process_cq+0xe7/0x1d0 [nvme]
43 nvme_irq+0x1e/0x40 [nvme]
130 nvme reset /dev/nvme0
134 After NVMe controller reset, the reinitialization may or may not succeed.
139 nvme nvme0: resetting controller
149 nvme_irq+0x129/0x280 [nvme]
177 nvme nvme0: Could not set queue count (16385)
[all …]
/linux/drivers/nvme/
H A DKconfig2 menu "NVME Support"
4 source "drivers/nvme/common/Kconfig"
5 source "drivers/nvme/host/Kconfig"
6 source "drivers/nvme/target/Kconfig"
/linux/drivers/nvme/common/
H A DMakefile5 obj-$(CONFIG_NVME_AUTH) += nvme-auth.o
6 obj-$(CONFIG_NVME_KEYRING) += nvme-keyring.o
8 nvme-auth-y += auth.o
9 nvme-keyring-y += keyring.o
H A Dkeyring.c10 #include <linux/nvme.h>
11 #include <linux/nvme-tcp.h>
12 #include <linux/nvme-keyring.h>
104 snprintf(identity, identity_len, "NVMe%u%c%02u %s %s", in nvme_tls_psk_lookup()
191 * NVMe PSK priority list
259 nvme_keyring = keyring_alloc(".nvme", in nvme_keyring_init()
285 MODULE_DESCRIPTION("NVMe Keyring implementation");
/linux/Documentation/driver-api/pci/
H A Dp2pdma.rst46 For example, in the NVMe Target Copy Offload implementation:
48 * The NVMe PCI driver is both a client, provider and orchestrator
54 can DMA directly to the memory exposed by the NVMe device.
55 * The NVMe Target driver (nvmet) can orchestrate the data from the RNIC
56 to the P2P memory (CMB) and then to the NVMe device (and vice versa).
62 then the NVMe Target could use the RNIC's memory instead of the CMB
63 in cases where the NVMe cards in use do not have CMB support.
96 example, the NVMe Target driver creates a list including the namespace
/linux/drivers/scsi/lpfc/
H A Dlpfc_disc.h113 #define NLP_NVME_TARGET 0x20 /* entry is a NVME Target */
114 #define NLP_NVME_INITIATOR 0x40 /* entry is a NVME Initiator */
115 #define NLP_NVME_DISCOVERY 0x80 /* entry has NVME disc srvc */
119 * FCP (0x8) and NVME (0x28)
124 #define NLP_FC4_NVME 0x2 /* FC4 TYPE NVME (value x28) */
137 u8 nlp_nvme_info; /* NVME NSLER Support */
139 #define NLP_NVME_NSLER 0x1 /* NVME NSLER device */
144 struct lpfc_nvme_rport *nrport; /* nvme transport rport struct. */
161 uint32_t nvme_fb_size; /* NVME target's supported byte cnt */
H A Dlpfc_nvme.h24 #include <linux/nvme.h>
25 #include <linux/nvme-fc-driver.h>
26 #include <linux/nvme-fc.h>
47 /* Declare nvme-based local and remote port definitions. */
80 * set NVME LS request timeouts to 30s. It is larger than the 2*R_A_TOV
97 /* Used for NVME Target */
H A Dlpfc_nvmet.c76 /* Setup WQE templates for NVME IOs */
285 * transmission of an NVME LS response.
292 * used to send the NVME LS RSP.
338 * lock held. This function is the completion handler for NVME LS commands
550 * to FCP command is passed to NVME Layer. in lpfc_nvmet_ktime()
552 * off to NVME Layer to Driver receives a Command op in lpfc_nvmet_ktime()
553 * from NVME Layer. in lpfc_nvmet_ktime()
555 * from NVME Layer to Command is put on WQ. in lpfc_nvmet_ktime()
559 * Command cmpl is passed to NVME Layer. in lpfc_nvmet_ktime()
560 * Segment 6 - Time from Command cmpl is passed to NVME in lpfc_nvmet_ktime()
[all …]
/linux/drivers/scsi/mpt3sas/mpi/
H A Dmpi2_pci.h25 * NVME Encapsulated Request.
26 * 07-22-18 02.00.03 Updted flags field for NVME Encapsulated req
49 * NVMe Encapsulated message
52 /*NVME Encapsulated Request Message */
91 /*NVMe Encapuslated Reply Message */
/linux/arch/s390/kernel/
H A Dipl.c49 #define IPL_NVME_STR "nvme"
56 #define DUMP_NVME_STR "nvme"
357 if (ipl_block.nvme.opt == IPL_PB0_NVME_OPT_DUMP) in get_ipl_type()
428 return sysfs_emit(page, "%08ux\n", ipl_block.nvme.fid); in sys_ipl_device_show()
456 DEFINE_IPL_ATTR_SCP_DATA_RO(ipl_nvme, ipl_block.nvme, PAGE_SIZE);
483 /* NVMe ipl device attributes */
485 (unsigned long long)ipl_block.nvme.fid);
487 (unsigned long long)ipl_block.nvme.nsid);
489 (unsigned long long)ipl_block.nvme.bootprog);
491 (unsigned long long)ipl_block.nvme.br_lba);
[all …]

12345