xref: /linux/drivers/net/ethernet/mellanox/mlxsw/Kconfig (revision a1ff5a7d78a036d6c2178ee5acd6ba4946243800)
1ec8f24b7SThomas 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
9fb738b99SIdo Schimmel	select MLXFW
10bd02fd76SJiri Pirko	select AUXILIARY_BUS
11a7f7f624SMasahiro Yamada	help
1293c1edb2SJiri Pirko	  This driver supports Mellanox Technologies Switch ASICs family.
1393c1edb2SJiri Pirko
1493c1edb2SJiri Pirko	  To compile this driver as a module, choose M here: the
1593c1edb2SJiri Pirko	  module will be called mlxsw_core.
16eda6500aSJiri Pirko
1789309da3SJiri Pirkoconfig MLXSW_CORE_HWMON
1889309da3SJiri Pirko	bool "HWMON support for Mellanox Technologies Switch ASICs"
1989309da3SJiri Pirko	depends on MLXSW_CORE && HWMON
2089309da3SJiri Pirko	depends on !(MLXSW_CORE=y && HWMON=m)
2189309da3SJiri Pirko	default y
22a7f7f624SMasahiro Yamada	help
2389309da3SJiri Pirko	  Say Y here if you want to expose HWMON interface on mlxsw devices.
2489309da3SJiri Pirko
25a50c1e35SIvan Veceraconfig MLXSW_CORE_THERMAL
26a50c1e35SIvan Vecera	bool "Thermal zone support for Mellanox Technologies Switch ASICs"
27a50c1e35SIvan Vecera	depends on MLXSW_CORE && THERMAL
28a50c1e35SIvan Vecera	default y
29a7f7f624SMasahiro Yamada	help
30a50c1e35SIvan Vecera	 Say Y here if you want to automatically control fans speed according
31a50c1e35SIvan Vecera	 ambient temperature reported by ASIC.
32a50c1e35SIvan Vecera
33eda6500aSJiri Pirkoconfig MLXSW_PCI
34eda6500aSJiri Pirko	tristate "PCI bus implementation for Mellanox Technologies Switch ASICs"
35e020797bSGeert Uytterhoeven	depends on PCI && HAS_IOMEM && MLXSW_CORE
36*5642c6a0SAmit Cohen	select PAGE_POOL
37eda6500aSJiri Pirko	default m
38a7f7f624SMasahiro Yamada	help
39eda6500aSJiri Pirko	  This is PCI bus implementation for Mellanox Technologies Switch ASICs.
40eda6500aSJiri Pirko
41eda6500aSJiri Pirko	  To compile this driver as a module, choose M here: the
42eda6500aSJiri Pirko	  module will be called mlxsw_pci.
4331557f0fSJiri Pirko
446882b0aeSVadim Pasternakconfig MLXSW_I2C
456882b0aeSVadim Pasternak	tristate "I2C bus implementation for Mellanox Technologies Switch ASICs"
466882b0aeSVadim Pasternak	depends on I2C && MLXSW_CORE
476882b0aeSVadim Pasternak	default m
48a7f7f624SMasahiro Yamada	help
496882b0aeSVadim Pasternak	  This is I2C bus implementation for Mellanox Technologies Switch ASICs.
506882b0aeSVadim Pasternak
516882b0aeSVadim Pasternak	  To compile this driver as a module, choose M here: the
526882b0aeSVadim Pasternak	  module will be called mlxsw_i2c.
536882b0aeSVadim Pasternak
5456ade8feSJiri Pirkoconfig MLXSW_SPECTRUM
55da382875SJiri Pirko	tristate "Mellanox Technologies Spectrum family support"
561d20d23cSJiri Pirko	depends on MLXSW_CORE && MLXSW_PCI && NET_SWITCHDEV && VLAN_8021Q
578d1fb01dSArnd Bergmann	depends on PSAMPLE || PSAMPLE=n
580266f797SIdo Schimmel	depends on BRIDGE || BRIDGE=n
59428b851fSIdo Schimmel	depends on IPV6 || IPV6=n
6099db5229SPetr Machata	depends on NET_IPGRE || NET_IPGRE=n
6199db5229SPetr Machata	depends on IPV6_GRE || IPV6_GRE=n
62143a8e03SIdo Schimmel	depends on VXLAN || VXLAN=n
63e5f31552SArnd Bergmann	depends on PTP_1588_CLOCK_OPTIONAL
64f465261aSIdo Schimmel	select GENERIC_ALLOCATOR
6522a67766SJiri Pirko	select PARMAN
66c71abd7dSJiri Pirko	select OBJAGG
67d92e4e6eSPetr Machata	select NET_PTP_CLASSIFY if PTP_1588_CLOCK
6856ade8feSJiri Pirko	default m
69a7f7f624SMasahiro Yamada	help
70da382875SJiri Pirko	  This driver supports Mellanox Technologies
7147354021SAmit Cohen	  Spectrum/Spectrum-2/Spectrum-3/Spectrum-4 Ethernet Switch ASICs.
7256ade8feSJiri Pirko
7356ade8feSJiri Pirko	  To compile this driver as a module, choose M here: the
7456ade8feSJiri Pirko	  module will be called mlxsw_spectrum.
75f00817dfSIdo Schimmel
76f00817dfSIdo Schimmelconfig MLXSW_SPECTRUM_DCB
77f00817dfSIdo Schimmel	bool "Data Center Bridging (DCB) support"
78f00817dfSIdo Schimmel	depends on MLXSW_SPECTRUM && DCB
79f00817dfSIdo Schimmel	default y
80a7f7f624SMasahiro Yamada	help
81f00817dfSIdo Schimmel	  Say Y here if you want to use Data Center Bridging (DCB) in the
82f00817dfSIdo Schimmel	  driver.
83d556e929SVadim Pasternak
84d556e929SVadim Pasternakconfig MLXSW_MINIMAL
85d556e929SVadim Pasternak	tristate "Mellanox Technologies minimal I2C support"
86d556e929SVadim Pasternak	depends on MLXSW_CORE && MLXSW_I2C
87d556e929SVadim Pasternak	default m
88a7f7f624SMasahiro Yamada	help
89d556e929SVadim Pasternak	  This driver supports I2C access for Mellanox Technologies Switch
90d556e929SVadim Pasternak	  ASICs.
91d556e929SVadim Pasternak
92d556e929SVadim Pasternak	  To compile this driver as a module, choose M here: the
93d556e929SVadim Pasternak	  module will be called mlxsw_minimal.
94