1menuconfig INFINIBAND 2 tristate "InfiniBand support" 3 depends on HAS_IOMEM && HAS_DMA 4 depends on NET 5 depends on INET 6 depends on m || IPV6 != m 7 depends on !ALPHA 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 14if INFINIBAND 15 16config 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 rdma-core 24 <https://github.com/linux-rdma/rdma-core>. 25 26config INFINIBAND_USER_ACCESS 27 tristate "InfiniBand userspace access (verbs and CM)" 28 select ANON_INODES 29 depends on MMU 30 ---help--- 31 Userspace InfiniBand access support. This enables the 32 kernel side of userspace verbs and the userspace 33 communication manager (CM). This allows userspace processes 34 to set up connections and directly access InfiniBand 35 hardware for fast-path operations. You will also need 36 libibverbs, libibcm and a hardware driver library from 37 rdma-core <https://github.com/linux-rdma/rdma-core>. 38 39config INFINIBAND_USER_ACCESS_UCM 40 tristate "Userspace CM (UCM, DEPRECATED)" 41 depends on BROKEN || COMPILE_TEST 42 depends on INFINIBAND_USER_ACCESS 43 help 44 The UCM module has known security flaws, which no one is 45 interested to fix. The user-space part of this code was 46 dropped from the upstream a long time ago. 47 48 This option is DEPRECATED and planned to be removed. 49 50config INFINIBAND_EXP_LEGACY_VERBS_NEW_UAPI 51 bool "Allow experimental legacy verbs in new ioctl uAPI (EXPERIMENTAL)" 52 depends on INFINIBAND_USER_ACCESS 53 ---help--- 54 IOCTL based uAPI support for Infiniband is enabled by default for 55 new verbs only. This allows userspace to invoke the IOCTL based uAPI 56 for current legacy verbs too. 57 58config INFINIBAND_USER_MEM 59 bool 60 depends on INFINIBAND_USER_ACCESS != n 61 depends on MMU 62 default y 63 64config INFINIBAND_ON_DEMAND_PAGING 65 bool "InfiniBand on-demand paging support" 66 depends on INFINIBAND_USER_MEM 67 select MMU_NOTIFIER 68 default y 69 ---help--- 70 On demand paging support for the InfiniBand subsystem. 71 Together with driver support this allows registration of 72 memory regions without pinning their pages, fetching the 73 pages on demand instead. 74 75config INFINIBAND_ADDR_TRANS 76 bool "RDMA/CM" 77 depends on INFINIBAND 78 default y 79 ---help--- 80 Support for RDMA communication manager (CM). 81 This allows for a generic connection abstraction over RDMA. 82 83config INFINIBAND_ADDR_TRANS_CONFIGFS 84 bool 85 depends on INFINIBAND_ADDR_TRANS && CONFIGFS_FS && !(INFINIBAND=y && CONFIGFS_FS=m) 86 default y 87 ---help--- 88 ConfigFS support for RDMA communication manager (CM). 89 This allows the user to config the default GID type that the CM 90 uses for each device, when initiaing new connections. 91 92if INFINIBAND_USER_ACCESS || !INFINIBAND_USER_ACCESS 93source "drivers/infiniband/hw/mthca/Kconfig" 94source "drivers/infiniband/hw/qib/Kconfig" 95source "drivers/infiniband/hw/cxgb3/Kconfig" 96source "drivers/infiniband/hw/cxgb4/Kconfig" 97source "drivers/infiniband/hw/i40iw/Kconfig" 98source "drivers/infiniband/hw/mlx4/Kconfig" 99source "drivers/infiniband/hw/mlx5/Kconfig" 100source "drivers/infiniband/hw/nes/Kconfig" 101source "drivers/infiniband/hw/ocrdma/Kconfig" 102source "drivers/infiniband/hw/vmw_pvrdma/Kconfig" 103source "drivers/infiniband/hw/usnic/Kconfig" 104source "drivers/infiniband/hw/hns/Kconfig" 105source "drivers/infiniband/hw/bnxt_re/Kconfig" 106source "drivers/infiniband/hw/hfi1/Kconfig" 107source "drivers/infiniband/hw/qedr/Kconfig" 108source "drivers/infiniband/sw/rdmavt/Kconfig" 109source "drivers/infiniband/sw/rxe/Kconfig" 110endif 111 112source "drivers/infiniband/ulp/ipoib/Kconfig" 113 114source "drivers/infiniband/ulp/srp/Kconfig" 115source "drivers/infiniband/ulp/srpt/Kconfig" 116 117source "drivers/infiniband/ulp/iser/Kconfig" 118source "drivers/infiniband/ulp/isert/Kconfig" 119 120source "drivers/infiniband/ulp/opa_vnic/Kconfig" 121 122endif # INFINIBAND 123