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