18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only 28c2ecf20Sopenharmony_ci# 38c2ecf20Sopenharmony_ci# Mellanox switch drivers configuration 48c2ecf20Sopenharmony_ci# 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ciconfig MLXSW_CORE 78c2ecf20Sopenharmony_ci tristate "Mellanox Technologies Switch ASICs support" 88c2ecf20Sopenharmony_ci select NET_DEVLINK 98c2ecf20Sopenharmony_ci select MLXFW 108c2ecf20Sopenharmony_ci help 118c2ecf20Sopenharmony_ci This driver supports Mellanox Technologies Switch ASICs family. 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 148c2ecf20Sopenharmony_ci module will be called mlxsw_core. 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_ciconfig MLXSW_CORE_HWMON 178c2ecf20Sopenharmony_ci bool "HWMON support for Mellanox Technologies Switch ASICs" 188c2ecf20Sopenharmony_ci depends on MLXSW_CORE && HWMON 198c2ecf20Sopenharmony_ci depends on !(MLXSW_CORE=y && HWMON=m) 208c2ecf20Sopenharmony_ci default y 218c2ecf20Sopenharmony_ci help 228c2ecf20Sopenharmony_ci Say Y here if you want to expose HWMON interface on mlxsw devices. 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ciconfig MLXSW_CORE_THERMAL 258c2ecf20Sopenharmony_ci bool "Thermal zone support for Mellanox Technologies Switch ASICs" 268c2ecf20Sopenharmony_ci depends on MLXSW_CORE && THERMAL 278c2ecf20Sopenharmony_ci default y 288c2ecf20Sopenharmony_ci help 298c2ecf20Sopenharmony_ci Say Y here if you want to automatically control fans speed according 308c2ecf20Sopenharmony_ci ambient temperature reported by ASIC. 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ciconfig MLXSW_PCI 338c2ecf20Sopenharmony_ci tristate "PCI bus implementation for Mellanox Technologies Switch ASICs" 348c2ecf20Sopenharmony_ci depends on PCI && HAS_IOMEM && MLXSW_CORE 358c2ecf20Sopenharmony_ci default m 368c2ecf20Sopenharmony_ci help 378c2ecf20Sopenharmony_ci This is PCI bus implementation for Mellanox Technologies Switch ASICs. 388c2ecf20Sopenharmony_ci 398c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 408c2ecf20Sopenharmony_ci module will be called mlxsw_pci. 418c2ecf20Sopenharmony_ci 428c2ecf20Sopenharmony_ciconfig MLXSW_I2C 438c2ecf20Sopenharmony_ci tristate "I2C bus implementation for Mellanox Technologies Switch ASICs" 448c2ecf20Sopenharmony_ci depends on I2C && MLXSW_CORE 458c2ecf20Sopenharmony_ci default m 468c2ecf20Sopenharmony_ci help 478c2ecf20Sopenharmony_ci This is I2C bus implementation for Mellanox Technologies Switch ASICs. 488c2ecf20Sopenharmony_ci 498c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 508c2ecf20Sopenharmony_ci module will be called mlxsw_i2c. 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ciconfig MLXSW_SWITCHIB 538c2ecf20Sopenharmony_ci tristate "Mellanox Technologies SwitchIB and SwitchIB-2 support" 548c2ecf20Sopenharmony_ci depends on MLXSW_CORE && MLXSW_PCI && NET_SWITCHDEV 558c2ecf20Sopenharmony_ci default m 568c2ecf20Sopenharmony_ci help 578c2ecf20Sopenharmony_ci This driver supports Mellanox Technologies SwitchIB and SwitchIB-2 588c2ecf20Sopenharmony_ci Infiniband Switch ASICs. 598c2ecf20Sopenharmony_ci 608c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 618c2ecf20Sopenharmony_ci module will be called mlxsw_switchib. 628c2ecf20Sopenharmony_ci 638c2ecf20Sopenharmony_ciconfig MLXSW_SWITCHX2 648c2ecf20Sopenharmony_ci tristate "Mellanox Technologies SwitchX-2 support" 658c2ecf20Sopenharmony_ci depends on MLXSW_CORE && MLXSW_PCI && NET_SWITCHDEV 668c2ecf20Sopenharmony_ci default m 678c2ecf20Sopenharmony_ci help 688c2ecf20Sopenharmony_ci This driver supports Mellanox Technologies SwitchX-2 Ethernet 698c2ecf20Sopenharmony_ci Switch ASICs. 708c2ecf20Sopenharmony_ci 718c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 728c2ecf20Sopenharmony_ci module will be called mlxsw_switchx2. 738c2ecf20Sopenharmony_ci 748c2ecf20Sopenharmony_ciconfig MLXSW_SPECTRUM 758c2ecf20Sopenharmony_ci tristate "Mellanox Technologies Spectrum family support" 768c2ecf20Sopenharmony_ci depends on MLXSW_CORE && MLXSW_PCI && NET_SWITCHDEV && VLAN_8021Q 778c2ecf20Sopenharmony_ci depends on PSAMPLE || PSAMPLE=n 788c2ecf20Sopenharmony_ci depends on BRIDGE || BRIDGE=n 798c2ecf20Sopenharmony_ci depends on IPV6 || IPV6=n 808c2ecf20Sopenharmony_ci depends on NET_IPGRE || NET_IPGRE=n 818c2ecf20Sopenharmony_ci depends on IPV6_GRE || IPV6_GRE=n 828c2ecf20Sopenharmony_ci depends on VXLAN || VXLAN=n 838c2ecf20Sopenharmony_ci select GENERIC_ALLOCATOR 848c2ecf20Sopenharmony_ci select PARMAN 858c2ecf20Sopenharmony_ci select OBJAGG 868c2ecf20Sopenharmony_ci imply PTP_1588_CLOCK 878c2ecf20Sopenharmony_ci select NET_PTP_CLASSIFY if PTP_1588_CLOCK 888c2ecf20Sopenharmony_ci default m 898c2ecf20Sopenharmony_ci help 908c2ecf20Sopenharmony_ci This driver supports Mellanox Technologies 918c2ecf20Sopenharmony_ci Spectrum/Spectrum-2/Spectrum-3 Ethernet Switch ASICs. 928c2ecf20Sopenharmony_ci 938c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 948c2ecf20Sopenharmony_ci module will be called mlxsw_spectrum. 958c2ecf20Sopenharmony_ci 968c2ecf20Sopenharmony_ciconfig MLXSW_SPECTRUM_DCB 978c2ecf20Sopenharmony_ci bool "Data Center Bridging (DCB) support" 988c2ecf20Sopenharmony_ci depends on MLXSW_SPECTRUM && DCB 998c2ecf20Sopenharmony_ci default y 1008c2ecf20Sopenharmony_ci help 1018c2ecf20Sopenharmony_ci Say Y here if you want to use Data Center Bridging (DCB) in the 1028c2ecf20Sopenharmony_ci driver. 1038c2ecf20Sopenharmony_ci 1048c2ecf20Sopenharmony_ciconfig MLXSW_MINIMAL 1058c2ecf20Sopenharmony_ci tristate "Mellanox Technologies minimal I2C support" 1068c2ecf20Sopenharmony_ci depends on MLXSW_CORE && MLXSW_I2C 1078c2ecf20Sopenharmony_ci default m 1088c2ecf20Sopenharmony_ci help 1098c2ecf20Sopenharmony_ci This driver supports I2C access for Mellanox Technologies Switch 1108c2ecf20Sopenharmony_ci ASICs. 1118c2ecf20Sopenharmony_ci 1128c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 1138c2ecf20Sopenharmony_ci module will be called mlxsw_minimal. 114