xref: /linux/drivers/nvme/host/Kconfig (revision 80d443e8876602be2c130f79c4de81e12e2a700d)
1config NVME_CORE
2	tristate
3
4config BLK_DEV_NVME
5	tristate "NVM Express block device"
6	depends on PCI && BLOCK
7	select NVME_CORE
8	---help---
9	  The NVM Express driver is for solid state drives directly
10	  connected to the PCI or PCI Express bus.  If you know you
11	  don't have one of these, it is safe to answer N.
12
13	  To compile this driver as a module, choose M here: the
14	  module will be called nvme.
15
16config BLK_DEV_NVME_SCSI
17	bool "SCSI emulation for NVMe device nodes"
18	depends on NVME_CORE
19	---help---
20	  This adds support for the SG_IO ioctl on the NVMe character
21	  and block devices nodes, as well as a translation for a small
22	  number of selected SCSI commands to NVMe commands to the NVMe
23	  driver.  If you don't know what this means you probably want
24	  to say N here, unless you run a distro that abuses the SCSI
25	  emulation to provide stable device names for mount by id, like
26	  some OpenSuSE and SLES versions.
27
28config NVME_FABRICS
29	tristate
30
31config NVME_RDMA
32	tristate "NVM Express over Fabrics RDMA host driver"
33	depends on INFINIBAND && BLOCK
34	select NVME_CORE
35	select NVME_FABRICS
36	select SG_POOL
37	help
38	  This provides support for the NVMe over Fabrics protocol using
39	  the RDMA (Infiniband, RoCE, iWarp) transport.  This allows you
40	  to use remote block devices exported using the NVMe protocol set.
41
42	  To configure a NVMe over Fabrics controller use the nvme-cli tool
43	  from https://github.com/linux-nvme/nvme-cli.
44
45	  If unsure, say N.
46
47config NVME_FC
48	tristate "NVM Express over Fabrics FC host driver"
49	depends on BLOCK
50	depends on HAS_DMA
51	select NVME_CORE
52	select NVME_FABRICS
53	select SG_POOL
54	help
55	  This provides support for the NVMe over Fabrics protocol using
56	  the FC transport.  This allows you to use remote block devices
57	  exported using the NVMe protocol set.
58
59	  To configure a NVMe over Fabrics controller use the nvme-cli tool
60	  from https://github.com/linux-nvme/nvme-cli.
61
62	  If unsure, say N.
63