# SPDX-License-Identifier: GPL-2.0-only
|
#
|
# Mellanox driver configuration
|
#
|
|
config MLX5_CORE
|
tristate "Mellanox 5th generation network adapters (ConnectX series) core driver"
|
depends on PCI
|
select NET_DEVLINK
|
depends on VXLAN || !VXLAN
|
depends on MLXFW || !MLXFW
|
depends on PTP_1588_CLOCK || !PTP_1588_CLOCK
|
depends on PCI_HYPERV_INTERFACE || !PCI_HYPERV_INTERFACE
|
default n
|
help
|
Core driver for low level functionality of the ConnectX-4 and
|
Connect-IB cards by Mellanox Technologies.
|
|
config MLX5_ACCEL
|
bool
|
|
config MLX5_FPGA
|
bool "Mellanox Technologies Innova support"
|
depends on MLX5_CORE
|
select MLX5_ACCEL
|
help
|
Build support for the Innova family of network cards by Mellanox
|
Technologies. Innova network cards are comprised of a ConnectX chip
|
and an FPGA chip on one board. If you select this option, the
|
mlx5_core driver will include the Innova FPGA core and allow building
|
sandbox-specific client drivers.
|
|
config MLX5_CORE_EN
|
bool "Mellanox 5th generation network adapters (ConnectX series) Ethernet support"
|
depends on NETDEVICES && ETHERNET && INET && PCI && MLX5_CORE
|
select PAGE_POOL
|
select DIMLIB
|
default n
|
help
|
Ethernet support in Mellanox Technologies ConnectX-4 NIC.
|
|
config MLX5_EN_ARFS
|
bool "Mellanox MLX5 ethernet accelerated receive flow steering (ARFS) support"
|
depends on MLX5_CORE_EN && RFS_ACCEL
|
default y
|
help
|
Mellanox MLX5 ethernet hardware-accelerated receive flow steering support,
|
Enables ethernet netdevice arfs support and ntuple filtering.
|
|
config MLX5_EN_RXNFC
|
bool "Mellanox MLX5 ethernet rx nfc flow steering support"
|
depends on MLX5_CORE_EN
|
default y
|
help
|
Mellanox MLX5 ethernet rx nfc flow steering support
|
Enables ethtool receive network flow classification, which allows user defined
|
flow rules to direct traffic into arbitrary rx queue via ethtool set/get_rxnfc
|
API.
|
|
config MLX5_MPFS
|
bool "Mellanox Technologies MLX5 MPFS support"
|
depends on MLX5_CORE_EN
|
default y
|
help
|
Mellanox Technologies Ethernet Multi-Physical Function Switch (MPFS)
|
support in ConnectX NIC. MPFs is required for when multi-PF configuration
|
is enabled to allow passing user configured unicast MAC addresses to the
|
requesting PF.
|
|
config MLX5_ESWITCH
|
bool "Mellanox Technologies MLX5 SRIOV E-Switch support"
|
depends on MLX5_CORE_EN && NET_SWITCHDEV
|
default y
|
help
|
Mellanox Technologies Ethernet SRIOV E-Switch support in ConnectX NIC.
|
E-Switch provides internal SRIOV packet steering and switching for the
|
enabled VFs and PF in two available modes:
|
Legacy SRIOV mode (L2 mac vlan steering based).
|
Switchdev mode (eswitch offloads).
|
|
config MLX5_CLS_ACT
|
bool "MLX5 TC classifier action support"
|
depends on MLX5_ESWITCH && NET_CLS_ACT
|
default y
|
help
|
mlx5 ConnectX offloads support for TC classifier action (NET_CLS_ACT),
|
works in both native NIC mode and Switchdev SRIOV mode.
|
Actions get attached to a Hardware offloaded classifiers and are
|
invoked after a successful classification. Actions are used to
|
overwrite the classification result, instantly drop or redirect and/or
|
reformat packets in wire speeds without involving the host cpu.
|
|
If set to N, TC offloads in both NIC and switchdev modes will be disabled.
|
If unsure, set to Y
|
|
config MLX5_TC_CT
|
bool "MLX5 TC connection tracking offload support"
|
depends on MLX5_CLS_ACT && NF_FLOW_TABLE && NET_ACT_CT && NET_TC_SKB_EXT
|
default y
|
help
|
Say Y here if you want to support offloading connection tracking rules
|
via tc ct action.
|
|
If unsure, set to Y
|
|
config MLX5_CORE_EN_DCB
|
bool "Data Center Bridging (DCB) Support"
|
default y
|
depends on MLX5_CORE_EN && DCB
|
help
|
Say Y here if you want to use Data Center Bridging (DCB) in the
|
driver.
|
If set to N, will not be able to configure QoS and ratelimit attributes.
|
This flag is depended on the kernel's DCB support.
|
|
If unsure, set to Y
|
|
config MLX5_CORE_IPOIB
|
bool "Mellanox 5th generation network adapters (connectX series) IPoIB offloads support"
|
depends on MLX5_CORE_EN
|
default n
|
help
|
MLX5 IPoIB offloads & acceleration support.
|
|
config MLX5_FPGA_IPSEC
|
bool "Mellanox Technologies IPsec Innova support"
|
depends on MLX5_CORE
|
depends on MLX5_FPGA
|
default n
|
help
|
Build IPsec support for the Innova family of network cards by Mellanox
|
Technologies. Innova network cards are comprised of a ConnectX chip
|
and an FPGA chip on one board. If you select this option, the
|
mlx5_core driver will include the Innova FPGA core and allow building
|
sandbox-specific client drivers.
|
|
config MLX5_IPSEC
|
bool "Mellanox Technologies IPsec Connect-X support"
|
depends on MLX5_CORE_EN
|
depends on XFRM_OFFLOAD
|
depends on INET_ESP_OFFLOAD || INET6_ESP_OFFLOAD
|
select MLX5_ACCEL
|
default n
|
help
|
Build IPsec support for the Connect-X family of network cards by Mellanox
|
Technologies.
|
Note: If you select this option, the mlx5_core driver will include
|
IPsec support for the Connect-X family.
|
|
config MLX5_EN_IPSEC
|
bool "IPSec XFRM cryptography-offload accelaration"
|
depends on MLX5_CORE_EN
|
depends on XFRM_OFFLOAD
|
depends on INET_ESP_OFFLOAD || INET6_ESP_OFFLOAD
|
depends on MLX5_FPGA_IPSEC || MLX5_IPSEC
|
default n
|
help
|
Build support for IPsec cryptography-offload accelaration in the NIC.
|
Note: Support for hardware with this capability needs to be selected
|
for this option to become available.
|
|
config MLX5_FPGA_TLS
|
bool "Mellanox Technologies TLS Innova support"
|
depends on TLS_DEVICE
|
depends on TLS=y || MLX5_CORE=m
|
depends on MLX5_CORE_EN
|
depends on MLX5_FPGA
|
depends on XPS
|
select MLX5_EN_TLS
|
default n
|
help
|
Build TLS support for the Innova family of network cards by Mellanox
|
Technologies. Innova network cards are comprised of a ConnectX chip
|
and an FPGA chip on one board. If you select this option, the
|
mlx5_core driver will include the Innova FPGA core and allow building
|
sandbox-specific client drivers.
|
|
config MLX5_TLS
|
bool "Mellanox Technologies TLS Connect-X support"
|
depends on TLS_DEVICE
|
depends on TLS=y || MLX5_CORE=m
|
depends on MLX5_CORE_EN
|
depends on XPS
|
select MLX5_ACCEL
|
select MLX5_EN_TLS
|
default n
|
help
|
Build TLS support for the Connect-X family of network cards by Mellanox
|
Technologies.
|
|
config MLX5_EN_TLS
|
bool
|
help
|
Build support for TLS cryptography-offload accelaration in the NIC.
|
Note: Support for hardware with this capability needs to be selected
|
for this option to become available.
|
|
config MLX5_SW_STEERING
|
bool "Mellanox Technologies software-managed steering"
|
depends on MLX5_CORE_EN && MLX5_ESWITCH
|
select CRC32
|
default y
|
help
|
Build support for software-managed steering in the NIC.
|