/linux-6.14.4/drivers/nvme/target/ |
D | Kconfig | 4 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 …]
|
D | Makefile | 6 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/ |
D | Kconfig | 15 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 …]
|
D | Makefile | 5 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 …]
|
D | fabrics.c | 3 * 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 …]
|
D | fabrics.h | 3 * 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 …]
|
D | fc.c | 13 #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 …]
|
D | trace.h | 8 #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/ |
D | nvme-pci-endpoint-target.rst | 4 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 …]
|
D | feature-and-quirk-policy.rst | 4 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/ |
D | apple,nvme-ans.yaml | 4 $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/ |
D | qla_nvme.c | 9 #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/ |
D | nvme-tcp.h | 3 * 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 …]
|
D | nvme-fc-driver.h | 14 * ********************** 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 …]
|
D | nvme-fc.h | 7 * 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/ |
D | pci-nvme-function.rst | 4 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/ |
D | lpfc_nvme.c | 54 /* 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/ |
D | t600x-nvme.dtsi | 3 * 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/ |
D | nvme-fault-injection.rst | 1 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/ |
D | Kconfig | 2 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/ |
D | Makefile | 5 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
|
D | keyring.c | 11 #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/ |
D | p2pdma.rst | 46 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/ |
D | nvme-multipath.rst | 4 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/ |
D | mpi2_pci.h | 25 * 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 */
|