1 # SPDX-License-Identifier: GPL-2.0-only
3 # Mellanox driver configuration
7 tristate "Mellanox 5th generation network adapters (ConnectX series) core driver"
10 depends on VXLAN || !VXLAN
11 depends on MLXFW || !MLXFW
12 depends on PTP_1588_CLOCK || !PTP_1588_CLOCK
13 depends on PCI_HYPERV_INTERFACE || !PCI_HYPERV_INTERFACE
16 Core driver for low level functionality of the ConnectX-4 and
17 Connect-IB cards by Mellanox Technologies.
23 bool "Mellanox Technologies Innova support"
27 Build support for the Innova family of network cards by Mellanox
28 Technologies. Innova network cards are comprised of a ConnectX chip
29 and an FPGA chip on one board. If you select this option, the
30 mlx5_core driver will include the Innova FPGA core and allow building
31 sandbox-specific client drivers.
34 bool "Mellanox 5th generation network adapters (ConnectX series) Ethernet support"
35 depends on NETDEVICES && ETHERNET && INET && PCI && MLX5_CORE
40 Ethernet support in Mellanox Technologies ConnectX-4 NIC.
43 bool "Mellanox MLX5 ethernet accelerated receive flow steering (ARFS) support"
44 depends on MLX5_CORE_EN && RFS_ACCEL
47 Mellanox MLX5 ethernet hardware-accelerated receive flow steering support,
48 Enables ethernet netdevice arfs support and ntuple filtering.
51 bool "Mellanox MLX5 ethernet rx nfc flow steering support"
52 depends on MLX5_CORE_EN
55 Mellanox MLX5 ethernet rx nfc flow steering support
56 Enables ethtool receive network flow classification, which allows user defined
57 flow rules to direct traffic into arbitrary rx queue via ethtool set/get_rxnfc
61 bool "Mellanox Technologies MLX5 MPFS support"
62 depends on MLX5_CORE_EN
65 Mellanox Technologies Ethernet Multi-Physical Function Switch (MPFS)
66 support in ConnectX NIC. MPFs is required for when multi-PF configuration
67 is enabled to allow passing user configured unicast MAC addresses to the
71 bool "Mellanox Technologies MLX5 SRIOV E-Switch support"
72 depends on MLX5_CORE_EN && NET_SWITCHDEV
75 Mellanox Technologies Ethernet SRIOV E-Switch support in ConnectX NIC.
76 E-Switch provides internal SRIOV packet steering and switching for the
77 enabled VFs and PF in two available modes:
78 Legacy SRIOV mode (L2 mac vlan steering based).
79 Switchdev mode (eswitch offloads).
82 bool "MLX5 TC connection tracking offload support"
83 depends on MLX5_CORE_EN && NET_SWITCHDEV && NF_FLOW_TABLE && NET_ACT_CT && NET_TC_SKB_EXT
86 Say Y here if you want to support offloading connection tracking rules
91 config MLX5_CORE_EN_DCB
92 bool "Data Center Bridging (DCB) Support"
94 depends on MLX5_CORE_EN && DCB
96 Say Y here if you want to use Data Center Bridging (DCB) in the
98 If set to N, will not be able to configure QoS and ratelimit attributes.
99 This flag is depended on the kernel's DCB support.
103 config MLX5_CORE_IPOIB
104 bool "Mellanox 5th generation network adapters (connectX series) IPoIB offloads support"
105 depends on MLX5_CORE_EN
108 MLX5 IPoIB offloads & acceleration support.
110 config MLX5_FPGA_IPSEC
111 bool "Mellanox Technologies IPsec Innova support"
116 Build IPsec support for the Innova family of network cards by Mellanox
117 Technologies. Innova network cards are comprised of a ConnectX chip
118 and an FPGA chip on one board. If you select this option, the
119 mlx5_core driver will include the Innova FPGA core and allow building
120 sandbox-specific client drivers.
123 bool "IPSec XFRM cryptography-offload accelaration"
124 depends on MLX5_CORE_EN
125 depends on XFRM_OFFLOAD
126 depends on INET_ESP_OFFLOAD || INET6_ESP_OFFLOAD
127 depends on MLX5_FPGA_IPSEC
130 Build support for IPsec cryptography-offload accelaration in the NIC.
131 Note: Support for hardware with this capability needs to be selected
132 for this option to become available.
135 bool "Mellanox Technologies TLS Innova support"
136 depends on TLS_DEVICE
137 depends on TLS=y || MLX5_CORE=m
141 Build TLS support for the Innova family of network cards by Mellanox
142 Technologies. Innova network cards are comprised of a ConnectX chip
143 and an FPGA chip on one board. If you select this option, the
144 mlx5_core driver will include the Innova FPGA core and allow building
145 sandbox-specific client drivers.
148 bool "Mellanox Technologies TLS Connect-X support"
149 depends on MLX5_CORE_EN
150 depends on TLS_DEVICE
151 depends on TLS=y || MLX5_CORE=m
155 Build TLS support for the Connect-X family of network cards by Mellanox
159 bool "TLS cryptography-offload accelaration"
160 depends on MLX5_CORE_EN
161 depends on MLX5_FPGA_TLS || MLX5_TLS
164 Build support for TLS cryptography-offload accelaration in the NIC.
165 Note: Support for hardware with this capability needs to be selected
166 for this option to become available.
168 config MLX5_SW_STEERING
169 bool "Mellanox Technologies software-managed steering"
170 depends on MLX5_CORE_EN && MLX5_ESWITCH
173 Build support for software-managed steering in the NIC.