xref: /linux/drivers/platform/mellanox/Kconfig (revision 1193e205dbb6feca917dc8e1862ffcdf2194234b)
11f976f69SVadim Pasternak# SPDX-License-Identifier: GPL-2.0
21f976f69SVadim Pasternak#
31f976f69SVadim Pasternak# Platform support for Mellanox hardware
41f976f69SVadim Pasternak#
51f976f69SVadim Pasternak
61f976f69SVadim Pasternakmenuconfig MELLANOX_PLATFORM
71f976f69SVadim Pasternak	bool "Platform support for Mellanox hardware"
81357dfd7SLiming Sun	depends on X86 || ARM || ARM64 || COMPILE_TEST
9a7f7f624SMasahiro Yamada	help
101f976f69SVadim Pasternak	  Say Y here to get to see options for platform support for
111f976f69SVadim Pasternak	  Mellanox systems. This option alone does not add any kernel code.
121f976f69SVadim Pasternak
131f976f69SVadim Pasternak	  If you say N, all options in this submenu will be skipped and disabled.
141f976f69SVadim Pasternak
151f976f69SVadim Pasternakif MELLANOX_PLATFORM
161f976f69SVadim Pasternak
178c03f64dSVadim Pasternakconfig MLX_PLATFORM
188c03f64dSVadim Pasternak	tristate "Mellanox Technologies platform support"
198c03f64dSVadim Pasternak	depends on ACPI && I2C && PCI
208c03f64dSVadim Pasternak	select REGMAP
218c03f64dSVadim Pasternak	help
228c03f64dSVadim Pasternak	  This option enables system support for the Mellanox Technologies
238c03f64dSVadim Pasternak	  platform. The Mellanox systems provide data center networking
248c03f64dSVadim Pasternak	  solutions based on Virtual Protocol Interconnect (VPI) technology
258c03f64dSVadim Pasternak	  enable seamless connectivity to 56/100Gb/s InfiniBand or 10/40/56GbE
268c03f64dSVadim Pasternak	  connection.
278c03f64dSVadim Pasternak
288c03f64dSVadim Pasternak	  If you have a Mellanox system, say Y or M here.
298c03f64dSVadim Pasternak
30*d00f779eSVadim Pasternakconfig MLXREG_DPU
31*d00f779eSVadim Pasternak	tristate "Nvidia Data Processor Unit platform driver support"
32*d00f779eSVadim Pasternak	depends on I2C
33*d00f779eSVadim Pasternak	select REGMAP_I2C
34*d00f779eSVadim Pasternak	help
35*d00f779eSVadim Pasternak	  This driver provides support for the Nvidia BF3 Data Processor Units,
36*d00f779eSVadim Pasternak	  which are the part of SN4280 Ethernet smart switch systems
37*d00f779eSVadim Pasternak	  providing a high performance switching solution for Enterprise Data
38*d00f779eSVadim Pasternak	  Centers (EDC) for building Ethernet based clusters, High-Performance
39*d00f779eSVadim Pasternak	  Computing (HPC) and embedded environments.
40*d00f779eSVadim Pasternak
41*d00f779eSVadim Pasternak	  If you have a Nvidia smart switch system, say Y or M here.
42*d00f779eSVadim Pasternak
431f976f69SVadim Pasternakconfig MLXREG_HOTPLUG
441f976f69SVadim Pasternak	tristate "Mellanox platform hotplug driver support"
451f976f69SVadim Pasternak	depends on HWMON
461f976f69SVadim Pasternak	depends on I2C
4703f5eb30SRandy Dunlap	select REGMAP
48a7f7f624SMasahiro Yamada	help
491f976f69SVadim Pasternak	  This driver handles hot-plug events for the power suppliers, power
501f976f69SVadim Pasternak	  cables and fans on the wide range Mellanox IB and Ethernet systems.
511f976f69SVadim Pasternak
525ec4a8acSVadim Pasternakconfig MLXREG_IO
535ec4a8acSVadim Pasternak	tristate "Mellanox platform register access driver support"
545ec4a8acSVadim Pasternak	depends on HWMON
5503f5eb30SRandy Dunlap	select REGMAP
565ec4a8acSVadim Pasternak	help
575ec4a8acSVadim Pasternak	  This driver allows access to Mellanox programmable device register
585ec4a8acSVadim Pasternak	  space through sysfs interface. The sets of registers for sysfs access
595ec4a8acSVadim Pasternak	  are defined per system type bases and include the registers related
605ec4a8acSVadim Pasternak	  to system resets operation, system reset causes monitoring and some
615ec4a8acSVadim Pasternak	  kinds of mux selection.
625ec4a8acSVadim Pasternak
6362f9529bSVadim Pasternakconfig MLXREG_LC
6462f9529bSVadim Pasternak	tristate "Mellanox line card platform driver support"
6562f9529bSVadim Pasternak	depends on HWMON
6662f9529bSVadim Pasternak	depends on I2C
6703f5eb30SRandy Dunlap	select REGMAP
6862f9529bSVadim Pasternak	help
6962f9529bSVadim Pasternak	  This driver provides support for the Mellanox MSN4800-XX line cards,
7062f9529bSVadim Pasternak	  which are the part of MSN4800 Ethernet modular switch systems
7162f9529bSVadim Pasternak	  providing a high performance switching solution for Enterprise Data
7262f9529bSVadim Pasternak	  Centers (EDC) for building Ethernet based clusters, High-Performance
7362f9529bSVadim Pasternak	  Computing (HPC) and embedded environments.
7462f9529bSVadim Pasternak
751357dfd7SLiming Sunconfig MLXBF_TMFIFO
761357dfd7SLiming Sun	tristate "Mellanox BlueField SoC TmFifo platform driver"
771357dfd7SLiming Sun	depends on ARM64
781357dfd7SLiming Sun	depends on ACPI
791357dfd7SLiming Sun	depends on VIRTIO_CONSOLE && VIRTIO_NET
801357dfd7SLiming Sun	help
811357dfd7SLiming Sun	  Say y here to enable TmFifo support. The TmFifo driver provides
821357dfd7SLiming Sun	  platform driver support for the TmFifo which supports console
831357dfd7SLiming Sun	  and networking based on the virtio framework.
841357dfd7SLiming Sun
8579e29cb8SLiming Sunconfig MLXBF_BOOTCTL
8679e29cb8SLiming Sun	tristate "Mellanox BlueField Firmware Boot Control driver"
8779e29cb8SLiming Sun	depends on ARM64
8879e29cb8SLiming Sun	depends on ACPI
89c2dffda1SDavid Thompson	depends on NET
9079e29cb8SLiming Sun	help
9179e29cb8SLiming Sun	  The Mellanox BlueField firmware implements functionality to
9279e29cb8SLiming Sun	  request swapping the primary and alternate eMMC boot partition,
9379e29cb8SLiming Sun	  and to set up a watchdog that can undo that swap if the system
9479e29cb8SLiming Sun	  does not boot up correctly. This driver provides sysfs access
9579e29cb8SLiming Sun	  to the userspace tools, to be used in conjunction with the eMMC
9679e29cb8SLiming Sun	  device driver to do necessary initial swap of the boot partition.
9779e29cb8SLiming Sun
981a218d31SShravan Kumar Ramaniconfig MLXBF_PMC
991a218d31SShravan Kumar Ramani	tristate "Mellanox BlueField Performance Monitoring Counters driver"
1001a218d31SShravan Kumar Ramani	depends on ARM64
1011a218d31SShravan Kumar Ramani	depends on HWMON
1021a218d31SShravan Kumar Ramani	depends on ACPI
1031a218d31SShravan Kumar Ramani	help
1041a218d31SShravan Kumar Ramani	  Say y here to enable PMC support. The PMC driver provides access
1051a218d31SShravan Kumar Ramani	  to performance monitoring counters within various blocks in the
1061a218d31SShravan Kumar Ramani	  Mellanox BlueField SoC via a sysfs interface.
1071a218d31SShravan Kumar Ramani
108662f2482SMichael Shychconfig NVSW_SN2201
109662f2482SMichael Shych	tristate "Nvidia SN2201 platform driver support"
1100a138f16SGeert Uytterhoeven	depends on HWMON && I2C
1110a138f16SGeert Uytterhoeven	depends on ACPI || COMPILE_TEST
11203f5eb30SRandy Dunlap	select REGMAP_I2C
113662f2482SMichael Shych	help
114a4c934d7SGeert Uytterhoeven	  This driver provides support for the Nvidia SN2201 platform.
115662f2482SMichael Shych	  The SN2201 is a highly integrated for one rack unit system with
116662f2482SMichael Shych	  L3 management switches. It has 48 x 1Gbps RJ45 + 4 x 100G QSFP28
117662f2482SMichael Shych	  ports in a compact 1RU form factor. The system also including a
118662f2482SMichael Shych	  serial port (RS-232 interface), an OOB port (1G/100M MDI interface)
119662f2482SMichael Shych	  and USB ports for management functions.
120662f2482SMichael Shych	  The processor used on SN2201 is Intel Atom®Processor C Series,
121662f2482SMichael Shych	  C3338R which is one of the Denverton product families.
122662f2482SMichael Shych	  System equipped with Nvidia®Spectrum-1 32x100GbE Ethernet switch.
123662f2482SMichael Shych
1241f976f69SVadim Pasternakendif # MELLANOX_PLATFORM
125