IB/core: Expose ioctl interface through experimental Kconfig
[sfrench/cifs-2.6.git] / drivers / infiniband / Kconfig
1 menuconfig INFINIBAND
2         tristate "InfiniBand support"
3         depends on PCI || BROKEN
4         depends on HAS_IOMEM
5         depends on NET
6         depends on INET
7         depends on m || IPV6 != m
8         select IRQ_POLL
9         ---help---
10           Core support for InfiniBand (IB).  Make sure to also select
11           any protocols you wish to use as well as drivers for your
12           InfiniBand hardware.
13
14 if INFINIBAND
15
16 config INFINIBAND_USER_MAD
17         tristate "InfiniBand userspace MAD support"
18         depends on INFINIBAND
19         ---help---
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 <http://www.openfabrics.org/downloads/management/>.
24
25 config INFINIBAND_USER_ACCESS
26         tristate "InfiniBand userspace access (verbs and CM)"
27         select ANON_INODES
28         ---help---
29           Userspace InfiniBand access support.  This enables the
30           kernel side of userspace verbs and the userspace
31           communication manager (CM).  This allows userspace processes
32           to set up connections and directly access InfiniBand
33           hardware for fast-path operations.  You will also need
34           libibverbs, libibcm and a hardware driver library from
35           <http://www.openfabrics.org/git/>.
36
37 config INFINIBAND_EXP_USER_ACCESS
38         bool "Allow experimental support for Infiniband ABI"
39         depends on INFINIBAND_USER_ACCESS
40         ---help---
41           IOCTL based ABI support for Infiniband. This allows userspace
42           to invoke the experimental IOCTL based ABI.
43           These commands are parsed via per-device parsing tree and
44           enables per-device features.
45
46 config INFINIBAND_USER_MEM
47         bool
48         depends on INFINIBAND_USER_ACCESS != n
49         default y
50
51 config INFINIBAND_ON_DEMAND_PAGING
52         bool "InfiniBand on-demand paging support"
53         depends on INFINIBAND_USER_MEM
54         select MMU_NOTIFIER
55         default y
56         ---help---
57           On demand paging support for the InfiniBand subsystem.
58           Together with driver support this allows registration of
59           memory regions without pinning their pages, fetching the
60           pages on demand instead.
61
62 config INFINIBAND_ADDR_TRANS
63         bool
64         depends on INFINIBAND
65         default y
66
67 config INFINIBAND_ADDR_TRANS_CONFIGFS
68         bool
69         depends on INFINIBAND_ADDR_TRANS && CONFIGFS_FS && !(INFINIBAND=y && CONFIGFS_FS=m)
70         default y
71         ---help---
72           ConfigFS support for RDMA communication manager (CM).
73           This allows the user to config the default GID type that the CM
74           uses for each device, when initiaing new connections.
75
76 source "drivers/infiniband/hw/mthca/Kconfig"
77 source "drivers/infiniband/hw/qib/Kconfig"
78 source "drivers/infiniband/hw/cxgb3/Kconfig"
79 source "drivers/infiniband/hw/cxgb4/Kconfig"
80 source "drivers/infiniband/hw/i40iw/Kconfig"
81 source "drivers/infiniband/hw/mlx4/Kconfig"
82 source "drivers/infiniband/hw/mlx5/Kconfig"
83 source "drivers/infiniband/hw/nes/Kconfig"
84 source "drivers/infiniband/hw/ocrdma/Kconfig"
85 source "drivers/infiniband/hw/vmw_pvrdma/Kconfig"
86 source "drivers/infiniband/hw/usnic/Kconfig"
87 source "drivers/infiniband/hw/hns/Kconfig"
88
89 source "drivers/infiniband/ulp/ipoib/Kconfig"
90
91 source "drivers/infiniband/ulp/srp/Kconfig"
92 source "drivers/infiniband/ulp/srpt/Kconfig"
93
94 source "drivers/infiniband/ulp/iser/Kconfig"
95 source "drivers/infiniband/ulp/isert/Kconfig"
96
97 source "drivers/infiniband/ulp/opa_vnic/Kconfig"
98 source "drivers/infiniband/sw/rdmavt/Kconfig"
99 source "drivers/infiniband/sw/rxe/Kconfig"
100
101 source "drivers/infiniband/hw/hfi1/Kconfig"
102
103 source "drivers/infiniband/hw/qedr/Kconfig"
104
105 source "drivers/infiniband/hw/bnxt_re/Kconfig"
106
107 endif # INFINIBAND