Home
last modified time | relevance | path

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

123456789

/linux-6.14.4/drivers/nvme/target/
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 …]
DMakefile6 obj-$(CONFIG_NVME_TARGET_LOOP) += nvme-loop.o
9 obj-$(CONFIG_NVME_TARGET_FCLOOP) += nvme-fcloop.o
19 nvme-loop-y += loop.o
22 nvme-fcloop-y += fcloop.o
/linux-6.14.4/drivers/nvme/host/
DKconfig15 module will be called nvme.
18 bool "NVMe multipath support"
21 This option enables support for multipath access to NVMe
23 /dev/nvmeXnY device will show up for each NVMe namespace,
27 bool "NVMe verbose error reporting"
30 This option enables verbose reporting for NVMe errors. The
35 bool "NVMe hardware monitoring"
38 This provides support for NVMe hardware monitoring. If enabled,
39 a hardware monitoring device will be created for each NVMe drive
53 This provides support for the NVMe over Fabrics protocol using
[all …]
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 …]
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 …]
Dfabrics.h3 * NVMe over Fabrics common host code.
75 * on adding a NVMe controller.
80 * better description) that will be used by an NVMe controller
83 * in the NVMe specification, "NVMe Qualified Names").
88 * @host_traddr: A transport-specific field identifying the NVME host port
90 * @host_iface: A transport-specific field identifying the NVME host
97 * @host: Virtual NVMe host, contains the NQN and Host ID.
144 * fabric implementation of NVMe fabrics.
148 * @name: Name of the NVMe fabric driver implementation.
150 * when adding a new NVMe controller.
[all …]
Dfc.c13 #include "nvme.h"
15 #include <linux/nvme-fc-driver.h>
16 #include <linux/nvme-fc.h>
90 * nvme/host/core.c
231 /* *********************** FC-NVME Port Management ************************ */
331 * LLDD to register the existence of a NVME
447 * registered a NVME host FC port.
483 * TRADDR strings, per FC-NVME are fixed format:
560 "NVME-FC{%d}: connectivity re-established. " in nvme_fc_resume_controller()
649 * LLDD to register the existence of a NVME
[all …]
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-6.14.4/Documentation/nvme/
Dnvme-pci-endpoint-target.rst4 NVMe PCI Endpoint Function Target
9 The NVMe PCI endpoint function target driver implements a NVMe PCIe controller
10 using a NVMe fabrics target controller configured with the PCI transport type.
15 The NVMe PCI endpoint function target driver allows exposing a 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 a NVMe fabrics host controller (e.g. a NVMe TCP
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 …]
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-6.14.4/Documentation/devicetree/bindings/nvme/
Dapple,nvme-ans.yaml4 $id: http://devicetree.org/schemas/nvme/apple,nvme-ans.yaml#
16 - apple,t8103-nvme-ans2
17 - apple,t8112-nvme-ans2
18 - apple,t6000-nvme-ans2
19 - const: apple,nvme-ans2
23 - description: NVMe and NVMMU registers
28 - const: nvme
38 - description: power domain for the NVMe controller.
39 - description: power domain for the first PCIe bus connecting the NVMe
42 connecting the NVMe controller to the storage modules.
[all …]
/linux-6.14.4/drivers/scsi/qla2xxx/
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 …]
/linux-6.14.4/include/linux/
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 …]
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 …]
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-6.14.4/Documentation/PCI/endpoint/
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/nvmet-pciep.c.
13 See Documentation/nvme/nvme-pci-endpoint-target.rst for more details.
/linux-6.14.4/drivers/scsi/lpfc/
Dlpfc_nvme.c54 /* NVME initiator-based functions */
108 * NVME qidx == 0 is the admin queue, so both admin queue in lpfc_nvme_create_queue()
179 * @remoteport: Pointer to an nvme transport remoteport instance.
181 * This is a template downcall. NVME transport calls this function
213 * transport. Remove the ndlp reference for the NVME transport before in lpfc_nvme_remoteport_delete()
231 * NVME and SCSI rport unregister requests are complete. in lpfc_nvme_remoteport_delete()
241 * lpfc_nvme_handle_lsreq - Process an unsolicited NVME LS request
243 * @axchg: pointer to exchange context for the NVME LS request
245 * This routine is used for processing an asynchronously received NVME LS
247 * to the nvme-fc transport via nvme_fc_rcv_ls_req().
[all …]
/linux-6.14.4/arch/arm64/boot/dts/apple/
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-6.14.4/Documentation/fault-injection/
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-6.14.4/drivers/nvme/
DKconfig2 menu "NVME Support"
4 source "drivers/nvme/common/Kconfig"
5 source "drivers/nvme/host/Kconfig"
6 source "drivers/nvme/target/Kconfig"
/linux-6.14.4/drivers/nvme/common/
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
Dkeyring.c11 #include <linux/nvme.h>
12 #include <linux/nvme-tcp.h>
13 #include <linux/nvme-keyring.h>
105 snprintf(identity, identity_len, "NVMe%u%c%02u %s %s", in nvme_tls_psk_lookup()
128 * NVMe PSK priority list
196 nvme_keyring = keyring_alloc(".nvme", in nvme_keyring_init()
222 MODULE_DESCRIPTION("NVMe Keyring implementation");
/linux-6.14.4/Documentation/driver-api/pci/
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-6.14.4/Documentation/admin-guide/
Dnvme-multipath.rst4 Linux NVMe multipath
7 This document describes NVMe multipath and its path selection policies supported
8 by the Linux NVMe host driver.
14 The NVMe multipath feature in Linux integrates namespaces with the same
27 one. Current the NVMe multipath policies include numa(default), round-robin and
/linux-6.14.4/drivers/scsi/mpt3sas/mpi/
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 */

123456789