2 tristate "InfiniBand support"
3 depends on HAS_IOMEM && HAS_DMA
6 depends on m || IPV6 != m
10 Core support for InfiniBand (IB). Make sure to also select
11 any protocols you wish to use as well as drivers for your
16 config INFINIBAND_USER_MAD
17 tristate "InfiniBand userspace MAD support"
20 Userspace InfiniBand Management Datagram (MAD) support. This
21 is the kernel side of the userspace MAD support, which allows
22 userspace processes to send and receive MADs. You will also
23 need libibumad from rdma-core
24 <https://github.com/linux-rdma/rdma-core>.
26 config INFINIBAND_USER_ACCESS
27 tristate "InfiniBand userspace access (verbs and CM)"
30 Userspace InfiniBand access support. This enables the
31 kernel side of userspace verbs and the userspace
32 communication manager (CM). This allows userspace processes
33 to set up connections and directly access InfiniBand
34 hardware for fast-path operations. You will also need
35 libibverbs, libibcm and a hardware driver library from
36 rdma-core <https://github.com/linux-rdma/rdma-core>.
38 config INFINIBAND_USER_ACCESS_UCM
39 tristate "Userspace CM (UCM, DEPRECATED)"
40 depends on BROKEN || COMPILE_TEST
41 depends on INFINIBAND_USER_ACCESS
43 The UCM module has known security flaws, which no one is
44 interested to fix. The user-space part of this code was
45 dropped from the upstream a long time ago.
47 This option is DEPRECATED and planned to be removed.
49 config INFINIBAND_EXP_LEGACY_VERBS_NEW_UAPI
50 bool "Allow experimental legacy verbs in new ioctl uAPI (EXPERIMENTAL)"
51 depends on INFINIBAND_USER_ACCESS
53 IOCTL based uAPI support for Infiniband is enabled by default for
54 new verbs only. This allows userspace to invoke the IOCTL based uAPI
55 for current legacy verbs too.
57 config INFINIBAND_USER_MEM
59 depends on INFINIBAND_USER_ACCESS != n
63 config INFINIBAND_ON_DEMAND_PAGING
64 bool "InfiniBand on-demand paging support"
65 depends on INFINIBAND_USER_MEM
69 On demand paging support for the InfiniBand subsystem.
70 Together with driver support this allows registration of
71 memory regions without pinning their pages, fetching the
72 pages on demand instead.
74 config INFINIBAND_ADDR_TRANS
79 Support for RDMA communication manager (CM).
80 This allows for a generic connection abstraction over RDMA.
82 config INFINIBAND_ADDR_TRANS_CONFIGFS
84 depends on INFINIBAND_ADDR_TRANS && CONFIGFS_FS && !(INFINIBAND=y && CONFIGFS_FS=m)
87 ConfigFS support for RDMA communication manager (CM).
88 This allows the user to config the default GID type that the CM
89 uses for each device, when initiaing new connections.
91 source "drivers/infiniband/hw/mthca/Kconfig"
92 source "drivers/infiniband/hw/qib/Kconfig"
93 source "drivers/infiniband/hw/cxgb3/Kconfig"
94 source "drivers/infiniband/hw/cxgb4/Kconfig"
95 source "drivers/infiniband/hw/i40iw/Kconfig"
96 source "drivers/infiniband/hw/mlx4/Kconfig"
97 source "drivers/infiniband/hw/mlx5/Kconfig"
98 source "drivers/infiniband/hw/nes/Kconfig"
99 source "drivers/infiniband/hw/ocrdma/Kconfig"
100 source "drivers/infiniband/hw/vmw_pvrdma/Kconfig"
101 source "drivers/infiniband/hw/usnic/Kconfig"
102 source "drivers/infiniband/hw/hns/Kconfig"
104 source "drivers/infiniband/ulp/ipoib/Kconfig"
106 source "drivers/infiniband/ulp/srp/Kconfig"
107 source "drivers/infiniband/ulp/srpt/Kconfig"
109 source "drivers/infiniband/ulp/iser/Kconfig"
110 source "drivers/infiniband/ulp/isert/Kconfig"
112 source "drivers/infiniband/ulp/opa_vnic/Kconfig"
113 source "drivers/infiniband/sw/rdmavt/Kconfig"
114 source "drivers/infiniband/sw/rxe/Kconfig"
116 source "drivers/infiniband/hw/hfi1/Kconfig"
118 source "drivers/infiniband/hw/qedr/Kconfig"
120 source "drivers/infiniband/hw/bnxt_re/Kconfig"