xref: /linux/drivers/nvme/target/Kconfig (revision 71e2f4dd5a65bd8dbca0b77661e75eea471168f8)
1# SPDX-License-Identifier: GPL-2.0-only
2
3config NVME_TARGET
4	tristate "NVMe Target support"
5	depends on BLOCK
6	depends on CONFIGFS_FS
7	select SGL_ALLOC
8	help
9	  This enabled target side support for the NVMe protocol, that is
10	  it allows the Linux kernel to implement NVMe subsystems and
11	  controllers and export Linux block devices as NVMe namespaces.
12	  You need to select at least one of the transports below to make this
13	  functionality useful.
14
15	  To configure the NVMe target you probably want to use the nvmetcli
16	  tool from http://git.infradead.org/users/hch/nvmetcli.git.
17
18config NVME_TARGET_LOOP
19	tristate "NVMe loopback device support"
20	depends on NVME_TARGET
21	select NVME_CORE
22	select NVME_FABRICS
23	select SG_POOL
24	help
25	  This enables the NVMe loopback device support, which can be useful
26	  to test NVMe host and target side features.
27
28	  If unsure, say N.
29
30config NVME_TARGET_RDMA
31	tristate "NVMe over Fabrics RDMA target support"
32	depends on INFINIBAND && INFINIBAND_ADDR_TRANS
33	depends on NVME_TARGET
34	select SGL_ALLOC
35	help
36	  This enables the NVMe RDMA target support, which allows exporting NVMe
37	  devices over RDMA.
38
39	  If unsure, say N.
40
41config NVME_TARGET_FC
42	tristate "NVMe over Fabrics FC target driver"
43	depends on NVME_TARGET
44	depends on HAS_DMA
45	select SGL_ALLOC
46	help
47	  This enables the NVMe FC target support, which allows exporting NVMe
48	  devices over FC.
49
50	  If unsure, say N.
51
52config NVME_TARGET_FCLOOP
53	tristate "NVMe over Fabrics FC Transport Loopback Test driver"
54	depends on NVME_TARGET
55	select NVME_CORE
56	select NVME_FABRICS
57	select SG_POOL
58	depends on NVME_FC
59	depends on NVME_TARGET_FC
60	help
61	  This enables the NVMe FC loopback test support, which can be useful
62	  to test NVMe-FC transport interfaces.
63
64	  If unsure, say N.
65
66config NVME_TARGET_TCP
67	tristate "NVMe over Fabrics TCP target support"
68	depends on INET
69	depends on NVME_TARGET
70	help
71	  This enables the NVMe TCP target support, which allows exporting NVMe
72	  devices over TCP.
73
74	  If unsure, say N.
75