xref: /linux/drivers/net/ethernet/mellanox/mlxsw/Kconfig (revision ec8f24b7faaf3d4799a7c3f4c1b87f6b02778ad1)
1*ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
293c1edb2SJiri Pirko#
393c1edb2SJiri Pirko# Mellanox switch drivers configuration
493c1edb2SJiri Pirko#
593c1edb2SJiri Pirko
693c1edb2SJiri Pirkoconfig MLXSW_CORE
793c1edb2SJiri Pirko	tristate "Mellanox Technologies Switch ASICs support"
8f6b19b35SJiri Pirko	select NET_DEVLINK
993c1edb2SJiri Pirko	---help---
1093c1edb2SJiri Pirko	  This driver supports Mellanox Technologies Switch ASICs family.
1193c1edb2SJiri Pirko
1293c1edb2SJiri Pirko	  To compile this driver as a module, choose M here: the
1393c1edb2SJiri Pirko	  module will be called mlxsw_core.
14eda6500aSJiri Pirko
1589309da3SJiri Pirkoconfig MLXSW_CORE_HWMON
1689309da3SJiri Pirko	bool "HWMON support for Mellanox Technologies Switch ASICs"
1789309da3SJiri Pirko	depends on MLXSW_CORE && HWMON
1889309da3SJiri Pirko	depends on !(MLXSW_CORE=y && HWMON=m)
1989309da3SJiri Pirko	default y
2089309da3SJiri Pirko	---help---
2189309da3SJiri Pirko	  Say Y here if you want to expose HWMON interface on mlxsw devices.
2289309da3SJiri Pirko
23a50c1e35SIvan Veceraconfig MLXSW_CORE_THERMAL
24a50c1e35SIvan Vecera	bool "Thermal zone support for Mellanox Technologies Switch ASICs"
25a50c1e35SIvan Vecera	depends on MLXSW_CORE && THERMAL
26a50c1e35SIvan Vecera	default y
27a50c1e35SIvan Vecera	---help---
28a50c1e35SIvan Vecera	 Say Y here if you want to automatically control fans speed according
29a50c1e35SIvan Vecera	 ambient temperature reported by ASIC.
30a50c1e35SIvan Vecera
31eda6500aSJiri Pirkoconfig MLXSW_PCI
32eda6500aSJiri Pirko	tristate "PCI bus implementation for Mellanox Technologies Switch ASICs"
33e020797bSGeert Uytterhoeven	depends on PCI && HAS_IOMEM && MLXSW_CORE
34eda6500aSJiri Pirko	default m
35eda6500aSJiri Pirko	---help---
36eda6500aSJiri Pirko	  This is PCI bus implementation for Mellanox Technologies Switch ASICs.
37eda6500aSJiri Pirko
38eda6500aSJiri Pirko	  To compile this driver as a module, choose M here: the
39eda6500aSJiri Pirko	  module will be called mlxsw_pci.
4031557f0fSJiri Pirko
416882b0aeSVadim Pasternakconfig MLXSW_I2C
426882b0aeSVadim Pasternak	tristate "I2C bus implementation for Mellanox Technologies Switch ASICs"
436882b0aeSVadim Pasternak	depends on I2C && MLXSW_CORE
446882b0aeSVadim Pasternak	default m
456882b0aeSVadim Pasternak	---help---
466882b0aeSVadim Pasternak	  This is I2C bus implementation for Mellanox Technologies Switch ASICs.
476882b0aeSVadim Pasternak
486882b0aeSVadim Pasternak	  To compile this driver as a module, choose M here: the
496882b0aeSVadim Pasternak	  module will be called mlxsw_i2c.
506882b0aeSVadim Pasternak
51d1ba5263SElad Razconfig MLXSW_SWITCHIB
52d1ba5263SElad Raz	tristate "Mellanox Technologies SwitchIB and SwitchIB-2 support"
5367ea7ef1SArnd Bergmann	depends on MLXSW_CORE && MLXSW_PCI && NET_SWITCHDEV
54d1ba5263SElad Raz	default m
55d1ba5263SElad Raz	---help---
56d1ba5263SElad Raz	  This driver supports Mellanox Technologies SwitchIB and SwitchIB-2
57d1ba5263SElad Raz	  Infiniband Switch ASICs.
58d1ba5263SElad Raz
59d1ba5263SElad Raz	  To compile this driver as a module, choose M here: the
60d1ba5263SElad Raz	  module will be called mlxsw_switchib.
61d1ba5263SElad Raz
6231557f0fSJiri Pirkoconfig MLXSW_SWITCHX2
6331557f0fSJiri Pirko	tristate "Mellanox Technologies SwitchX-2 support"
641d20d23cSJiri Pirko	depends on MLXSW_CORE && MLXSW_PCI && NET_SWITCHDEV
6531557f0fSJiri Pirko	default m
6631557f0fSJiri Pirko	---help---
6731557f0fSJiri Pirko	  This driver supports Mellanox Technologies SwitchX-2 Ethernet
6831557f0fSJiri Pirko	  Switch ASICs.
6931557f0fSJiri Pirko
7031557f0fSJiri Pirko	  To compile this driver as a module, choose M here: the
7131557f0fSJiri Pirko	  module will be called mlxsw_switchx2.
7256ade8feSJiri Pirko
7356ade8feSJiri Pirkoconfig MLXSW_SPECTRUM
7456ade8feSJiri Pirko	tristate "Mellanox Technologies Spectrum support"
751d20d23cSJiri Pirko	depends on MLXSW_CORE && MLXSW_PCI && NET_SWITCHDEV && VLAN_8021Q
768d1fb01dSArnd Bergmann	depends on PSAMPLE || PSAMPLE=n
770266f797SIdo Schimmel	depends on BRIDGE || BRIDGE=n
78428b851fSIdo Schimmel	depends on IPV6 || IPV6=n
7999db5229SPetr Machata	depends on NET_IPGRE || NET_IPGRE=n
8099db5229SPetr Machata	depends on IPV6_GRE || IPV6_GRE=n
81143a8e03SIdo Schimmel	depends on VXLAN || VXLAN=n
82f465261aSIdo Schimmel	select GENERIC_ALLOCATOR
8322a67766SJiri Pirko	select PARMAN
84c71abd7dSJiri Pirko	select OBJAGG
856b742199SYotam Gigi	select MLXFW
8656ade8feSJiri Pirko	default m
8756ade8feSJiri Pirko	---help---
8856ade8feSJiri Pirko	  This driver supports Mellanox Technologies Spectrum Ethernet
8956ade8feSJiri Pirko	  Switch ASICs.
9056ade8feSJiri Pirko
9156ade8feSJiri Pirko	  To compile this driver as a module, choose M here: the
9256ade8feSJiri Pirko	  module will be called mlxsw_spectrum.
93f00817dfSIdo Schimmel
94f00817dfSIdo Schimmelconfig MLXSW_SPECTRUM_DCB
95f00817dfSIdo Schimmel	bool "Data Center Bridging (DCB) support"
96f00817dfSIdo Schimmel	depends on MLXSW_SPECTRUM && DCB
97f00817dfSIdo Schimmel	default y
98f00817dfSIdo Schimmel	---help---
99f00817dfSIdo Schimmel	  Say Y here if you want to use Data Center Bridging (DCB) in the
100f00817dfSIdo Schimmel	  driver.
101d556e929SVadim Pasternak
102d556e929SVadim Pasternakconfig MLXSW_MINIMAL
103d556e929SVadim Pasternak	tristate "Mellanox Technologies minimal I2C support"
104d556e929SVadim Pasternak	depends on MLXSW_CORE && MLXSW_I2C
105d556e929SVadim Pasternak	default m
106d556e929SVadim Pasternak	---help---
107d556e929SVadim Pasternak	  This driver supports I2C access for Mellanox Technologies Switch
108d556e929SVadim Pasternak	  ASICs.
109d556e929SVadim Pasternak
110d556e929SVadim Pasternak	  To compile this driver as a module, choose M here: the
111d556e929SVadim Pasternak	  module will be called mlxsw_minimal.
112