1#
2# Mellanox driver configuration
3#
4
5config MLX5_CORE
6	tristate "Mellanox Technologies ConnectX-4 and Connect-IB core driver"
7	depends on MAY_USE_DEVLINK
8	depends on PCI
9	default n
10	---help---
11	  Core driver for low level functionality of the ConnectX-4 and
12	  Connect-IB cards by Mellanox Technologies.
13
14config MLX5_ACCEL
15	bool
16
17config MLX5_FPGA
18        bool "Mellanox Technologies Innova support"
19        depends on MLX5_CORE
20	select MLX5_ACCEL
21        ---help---
22          Build support for the Innova family of network cards by Mellanox
23          Technologies. Innova network cards are comprised of a ConnectX chip
24          and an FPGA chip on one board. If you select this option, the
25          mlx5_core driver will include the Innova FPGA core and allow building
26          sandbox-specific client drivers.
27
28config MLX5_CORE_EN
29	bool "Mellanox Technologies ConnectX-4 Ethernet support"
30	depends on NETDEVICES && ETHERNET && INET && PCI && MLX5_CORE
31	depends on IPV6=y || IPV6=n || MLX5_CORE=m
32	imply PTP_1588_CLOCK
33	default n
34	---help---
35	  Ethernet support in Mellanox Technologies ConnectX-4 NIC.
36
37config MLX5_MPFS
38        bool "Mellanox Technologies MLX5 MPFS support"
39        depends on MLX5_CORE_EN
40	default y
41        ---help---
42	  Mellanox Technologies Ethernet Multi-Physical Function Switch (MPFS)
43          support in ConnectX NIC. MPFs is required for when multi-PF configuration
44          is enabled to allow passing user configured unicast MAC addresses to the
45          requesting PF.
46
47config MLX5_ESWITCH
48	bool "Mellanox Technologies MLX5 SRIOV E-Switch support"
49	depends on MLX5_CORE_EN
50	default y
51	---help---
52	  Mellanox Technologies Ethernet SRIOV E-Switch support in ConnectX NIC.
53          E-Switch provides internal SRIOV packet steering and switching for the
54          enabled VFs and PF in two available modes:
55                Legacy SRIOV mode (L2 mac vlan steering based).
56                Switchdev mode (eswitch offloads).
57
58config MLX5_CORE_EN_DCB
59	bool "Data Center Bridging (DCB) Support"
60	default y
61	depends on MLX5_CORE_EN && DCB
62	---help---
63	  Say Y here if you want to use Data Center Bridging (DCB) in the
64	  driver.
65	  If set to N, will not be able to configure QoS and ratelimit attributes.
66	  This flag is depended on the kernel's DCB support.
67
68	  If unsure, set to Y
69
70config MLX5_CORE_IPOIB
71	bool "Mellanox Technologies ConnectX-4 IPoIB offloads support"
72	depends on MLX5_CORE_EN
73	default n
74	---help---
75	  MLX5 IPoIB offloads & acceleration support.
76
77config MLX5_EN_IPSEC
78	bool "IPSec XFRM cryptography-offload accelaration"
79	depends on MLX5_ACCEL
80	depends on MLX5_CORE_EN
81	depends on XFRM_OFFLOAD
82	depends on INET_ESP_OFFLOAD || INET6_ESP_OFFLOAD
83	default n
84	---help---
85	  Build support for IPsec cryptography-offload accelaration in the NIC.
86	  Note: Support for hardware with this capability needs to be selected
87	  for this option to become available.
88