blob: fe63af421e798dfd1657bf44db9dd312ed461722 [file] [log] [blame]
Jan Engelhardt06cc8502007-05-23 14:21:22 -07001menuconfig INFINIBAND
Linus Torvalds1da177e2005-04-16 15:20:36 -07002 tristate "InfiniBand support"
Geert Uytterhoevendb0acbc2017-11-19 19:58:30 +01003 depends on HAS_IOMEM && HAS_DMA
Roland Dreierb2cbae22011-05-20 11:46:11 -07004 depends on NET
Matan Barak2f85d242014-01-16 17:16:47 +02005 depends on INET
6 depends on m || IPV6 != m
Christoph Hellwig14d3a3b2015-12-11 11:53:03 -08007 select IRQ_POLL
Linus Torvalds1da177e2005-04-16 15:20:36 -07008 ---help---
9 Core support for InfiniBand (IB). Make sure to also select
10 any protocols you wish to use as well as drivers for your
11 InfiniBand hardware.
12
Jan Engelhardt06cc8502007-05-23 14:21:22 -070013if INFINIBAND
14
James Lentini17781cd2005-09-07 12:43:08 -070015config INFINIBAND_USER_MAD
16 tristate "InfiniBand userspace MAD support"
Roland Dreier2d927d62005-07-07 17:57:14 -070017 depends on INFINIBAND
18 ---help---
James Lentini17781cd2005-09-07 12:43:08 -070019 Userspace InfiniBand Management Datagram (MAD) support. This
20 is the kernel side of the userspace MAD support, which allows
Roland Dreier3cd96562006-09-22 15:22:46 -070021 userspace processes to send and receive MADs. You will also
Jason Gunthorpe46adb172018-02-02 14:35:29 -070022 need libibumad from rdma-core
23 <https://github.com/linux-rdma/rdma-core>.
James Lentini17781cd2005-09-07 12:43:08 -070024
25config INFINIBAND_USER_ACCESS
26 tristate "InfiniBand userspace access (verbs and CM)"
Roland Dreiera265e552010-02-24 16:51:20 -080027 select ANON_INODES
James Lentini17781cd2005-09-07 12:43:08 -070028 ---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
Jason Gunthorpe46adb172018-02-02 14:35:29 -070035 rdma-core <https://github.com/linux-rdma/rdma-core>.
Roland Dreier2d927d62005-07-07 17:57:14 -070036
Matan Barak8eb19e82017-08-03 16:07:07 +030037config 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
Roland Dreierf7c6a7b2007-03-04 16:15:11 -080046config INFINIBAND_USER_MEM
47 bool
48 depends on INFINIBAND_USER_ACCESS != n
Arnd Bergmann9cc12ad2017-10-06 09:13:46 +020049 depends on MMU
Roland Dreierf7c6a7b2007-03-04 16:15:11 -080050 default y
51
Sagi Grimberg860f10a2014-12-11 17:04:16 +020052config INFINIBAND_ON_DEMAND_PAGING
53 bool "InfiniBand on-demand paging support"
54 depends on INFINIBAND_USER_MEM
Haggai Eran882214e2014-12-11 17:04:18 +020055 select MMU_NOTIFIER
Sagi Grimberg860f10a2014-12-11 17:04:16 +020056 default y
57 ---help---
58 On demand paging support for the InfiniBand subsystem.
59 Together with driver support this allows registration of
60 memory regions without pinning their pages, fetching the
61 pages on demand instead.
62
Sean Hefty7025fcd2006-06-17 20:37:28 -070063config INFINIBAND_ADDR_TRANS
64 bool
Matan Barak2f85d242014-01-16 17:16:47 +020065 depends on INFINIBAND
Sean Hefty7025fcd2006-06-17 20:37:28 -070066 default y
67
Matan Barak045959d2015-12-23 14:56:55 +020068config INFINIBAND_ADDR_TRANS_CONFIGFS
69 bool
70 depends on INFINIBAND_ADDR_TRANS && CONFIGFS_FS && !(INFINIBAND=y && CONFIGFS_FS=m)
71 default y
72 ---help---
73 ConfigFS support for RDMA communication manager (CM).
74 This allows the user to config the default GID type that the CM
75 uses for each device, when initiaing new connections.
76
Linus Torvalds1da177e2005-04-16 15:20:36 -070077source "drivers/infiniband/hw/mthca/Kconfig"
Ralph Campbellf9315512010-05-23 21:44:54 -070078source "drivers/infiniband/hw/qib/Kconfig"
Steve Wiseb038ced2007-02-12 16:16:18 -080079source "drivers/infiniband/hw/cxgb3/Kconfig"
Steve Wisecfdda9d2010-04-21 15:30:06 -070080source "drivers/infiniband/hw/cxgb4/Kconfig"
Faisal Latif6e4de862016-01-20 13:40:16 -060081source "drivers/infiniband/hw/i40iw/Kconfig"
Roland Dreier225c7b12007-05-08 18:00:38 -070082source "drivers/infiniband/hw/mlx4/Kconfig"
Eli Cohene126ba92013-07-07 17:25:49 +030083source "drivers/infiniband/hw/mlx5/Kconfig"
Glenn Streiff3c2d7742008-02-04 20:20:45 -080084source "drivers/infiniband/hw/nes/Kconfig"
Parav Panditfe2caef2012-03-21 04:09:06 +053085source "drivers/infiniband/hw/ocrdma/Kconfig"
Adit Ranadive29c8d9e2016-10-02 19:10:22 -070086source "drivers/infiniband/hw/vmw_pvrdma/Kconfig"
Upinder Malhie3cf00d2013-09-10 03:38:16 +000087source "drivers/infiniband/hw/usnic/Kconfig"
oulijun8793f772016-07-21 19:06:56 +080088source "drivers/infiniband/hw/hns/Kconfig"
Roland Dreier225c7b12007-05-08 18:00:38 -070089
Linus Torvalds1da177e2005-04-16 15:20:36 -070090source "drivers/infiniband/ulp/ipoib/Kconfig"
91
Roland Dreieraef9ec32005-11-02 14:07:13 -080092source "drivers/infiniband/ulp/srp/Kconfig"
Bart Van Asschea42d9852011-10-14 01:30:46 +000093source "drivers/infiniband/ulp/srpt/Kconfig"
Roland Dreieraef9ec32005-11-02 14:07:13 -080094
Or Gerlitz3f1244a2006-05-11 10:03:30 +030095source "drivers/infiniband/ulp/iser/Kconfig"
Nicholas Bellingerb8d26b32013-03-07 00:56:19 -080096source "drivers/infiniband/ulp/isert/Kconfig"
Or Gerlitz3f1244a2006-05-11 10:03:30 +030097
Vishwanathapura, Niranjana7d6f7282017-04-12 20:29:22 -070098source "drivers/infiniband/ulp/opa_vnic/Kconfig"
Dennis Dalessandro01946212016-01-06 09:50:24 -080099source "drivers/infiniband/sw/rdmavt/Kconfig"
Moni Shoua8700e3e2016-06-16 16:45:23 +0300100source "drivers/infiniband/sw/rxe/Kconfig"
Dennis Dalessandro01946212016-01-06 09:50:24 -0800101
Dennis Dalessandrof48ad612016-05-19 05:26:51 -0700102source "drivers/infiniband/hw/hfi1/Kconfig"
103
Ram Amrani2e0cbc42016-10-10 13:15:30 +0300104source "drivers/infiniband/hw/qedr/Kconfig"
105
Selvin Xavier592e8b32017-02-10 03:19:53 -0800106source "drivers/infiniband/hw/bnxt_re/Kconfig"
107
Jan Engelhardt06cc8502007-05-23 14:21:22 -0700108endif # INFINIBAND