GNU Linux-libre 4.14.251-gnu1
[releases.git] / drivers / net / ethernet / mellanox / mlxsw / Kconfig
1 #
2 # Mellanox switch drivers configuration
3 #
4
5 config MLXSW_CORE
6         tristate "Mellanox Technologies Switch ASICs support"
7         depends on MAY_USE_DEVLINK
8         ---help---
9           This driver supports Mellanox Technologies Switch ASICs family.
10
11           To compile this driver as a module, choose M here: the
12           module will be called mlxsw_core.
13
14 config MLXSW_CORE_HWMON
15         bool "HWMON support for Mellanox Technologies Switch ASICs"
16         depends on MLXSW_CORE && HWMON
17         depends on !(MLXSW_CORE=y && HWMON=m)
18         default y
19         ---help---
20           Say Y here if you want to expose HWMON interface on mlxsw devices.
21
22 config MLXSW_CORE_THERMAL
23         bool "Thermal zone support for Mellanox Technologies Switch ASICs"
24         depends on MLXSW_CORE && THERMAL
25         depends on !(MLXSW_CORE=y && THERMAL=m)
26         default y
27         ---help---
28          Say Y here if you want to automatically control fans speed according
29          ambient temperature reported by ASIC.
30
31 config MLXSW_PCI
32         tristate "PCI bus implementation for Mellanox Technologies Switch ASICs"
33         depends on PCI && HAS_DMA && HAS_IOMEM && MLXSW_CORE
34         default m
35         ---help---
36           This is PCI bus implementation for Mellanox Technologies Switch ASICs.
37
38           To compile this driver as a module, choose M here: the
39           module will be called mlxsw_pci.
40
41 config MLXSW_I2C
42         tristate "I2C bus implementation for Mellanox Technologies Switch ASICs"
43         depends on I2C && MLXSW_CORE
44         default m
45         ---help---
46           This is I2C bus implementation for Mellanox Technologies Switch ASICs.
47
48           To compile this driver as a module, choose M here: the
49           module will be called mlxsw_i2c.
50
51 config MLXSW_SWITCHIB
52         tristate "Mellanox Technologies SwitchIB and SwitchIB-2 support"
53         depends on MLXSW_CORE && MLXSW_PCI && NET_SWITCHDEV
54         default m
55         ---help---
56           This driver supports Mellanox Technologies SwitchIB and SwitchIB-2
57           Infiniband Switch ASICs.
58
59           To compile this driver as a module, choose M here: the
60           module will be called mlxsw_switchib.
61
62 config MLXSW_SWITCHX2
63         tristate "Mellanox Technologies SwitchX-2 support"
64         depends on MLXSW_CORE && MLXSW_PCI && NET_SWITCHDEV
65         default m
66         ---help---
67           This driver supports Mellanox Technologies SwitchX-2 Ethernet
68           Switch ASICs.
69
70           To compile this driver as a module, choose M here: the
71           module will be called mlxsw_switchx2.
72
73 config MLXSW_SPECTRUM
74         tristate "Mellanox Technologies Spectrum support"
75         depends on MLXSW_CORE && MLXSW_PCI && NET_SWITCHDEV && VLAN_8021Q
76         depends on PSAMPLE || PSAMPLE=n
77         depends on BRIDGE || BRIDGE=n
78         depends on IPV6 || IPV6=n
79         select PARMAN
80         select MLXFW
81         default m
82         ---help---
83           This driver supports Mellanox Technologies Spectrum Ethernet
84           Switch ASICs.
85
86           To compile this driver as a module, choose M here: the
87           module will be called mlxsw_spectrum.
88
89 config MLXSW_SPECTRUM_DCB
90         bool "Data Center Bridging (DCB) support"
91         depends on MLXSW_SPECTRUM && DCB
92         default y
93         ---help---
94           Say Y here if you want to use Data Center Bridging (DCB) in the
95           driver.
96
97 config MLXSW_MINIMAL
98         tristate "Mellanox Technologies minimal I2C support"
99         depends on MLXSW_CORE && MLXSW_I2C
100         default m
101         ---help---
102           This driver supports I2C access for Mellanox Technologies Switch
103           ASICs.
104
105           To compile this driver as a module, choose M here: the
106           module will be called mlxsw_minimal.