GNU Linux-libre 4.14.266-gnu1
[releases.git] / drivers / nvme / host / Kconfig
1 config NVME_CORE
2         tristate
3
4 config 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
16 config NVME_FABRICS
17         tristate
18
19 config NVME_RDMA
20         tristate "NVM Express over Fabrics RDMA host driver"
21         depends on INFINIBAND && INFINIBAND_ADDR_TRANS && BLOCK
22         select NVME_CORE
23         select NVME_FABRICS
24         select SG_POOL
25         help
26           This provides support for the NVMe over Fabrics protocol using
27           the RDMA (Infiniband, RoCE, iWarp) transport.  This allows you
28           to use remote block devices exported using the NVMe protocol set.
29
30           To configure a NVMe over Fabrics controller use the nvme-cli tool
31           from https://github.com/linux-nvme/nvme-cli.
32
33           If unsure, say N.
34
35 config NVME_FC
36         tristate "NVM Express over Fabrics FC host driver"
37         depends on BLOCK
38         depends on HAS_DMA
39         select NVME_CORE
40         select NVME_FABRICS
41         select SG_POOL
42         help
43           This provides support for the NVMe over Fabrics protocol using
44           the FC transport.  This allows you to use remote block devices
45           exported using the NVMe protocol set.
46
47           To configure a NVMe over Fabrics controller use the nvme-cli tool
48           from https://github.com/linux-nvme/nvme-cli.
49
50           If unsure, say N.