Kconfig 3.9 KB

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