1# SPDX-License-Identifier: GPL-2.0
2#
3# Platform support for Mellanox hardware
4#
5
6menuconfig MELLANOX_PLATFORM
7	bool "Platform support for Mellanox hardware"
8	depends on X86 || ARM || ARM64 || COMPILE_TEST
9	help
10	  Say Y here to get to see options for platform support for
11	  Mellanox systems. This option alone does not add any kernel code.
12
13	  If you say N, all options in this submenu will be skipped and disabled.
14
15if MELLANOX_PLATFORM
16
17config MLXREG_HOTPLUG
18	tristate "Mellanox platform hotplug driver support"
19	depends on HWMON
20	depends on I2C
21	select REGMAP
22	help
23	  This driver handles hot-plug events for the power suppliers, power
24	  cables and fans on the wide range Mellanox IB and Ethernet systems.
25
26config MLXREG_IO
27	tristate "Mellanox platform register access driver support"
28	depends on HWMON
29	select REGMAP
30	help
31	  This driver allows access to Mellanox programmable device register
32	  space through sysfs interface. The sets of registers for sysfs access
33	  are defined per system type bases and include the registers related
34	  to system resets operation, system reset causes monitoring and some
35	  kinds of mux selection.
36
37config MLXREG_LC
38	tristate "Mellanox line card platform driver support"
39	depends on HWMON
40	depends on I2C
41	select REGMAP
42	help
43	  This driver provides support for the Mellanox MSN4800-XX line cards,
44	  which are the part of MSN4800 Ethernet modular switch systems
45	  providing a high performance switching solution for Enterprise Data
46	  Centers (EDC) for building Ethernet based clusters, High-Performance
47	  Computing (HPC) and embedded environments.
48
49config MLXBF_TMFIFO
50	tristate "Mellanox BlueField SoC TmFifo platform driver"
51	depends on ARM64
52	depends on ACPI
53	depends on VIRTIO_CONSOLE && VIRTIO_NET
54	help
55	  Say y here to enable TmFifo support. The TmFifo driver provides
56	  platform driver support for the TmFifo which supports console
57	  and networking based on the virtio framework.
58
59config MLXBF_BOOTCTL
60	tristate "Mellanox BlueField Firmware Boot Control driver"
61	depends on ARM64
62	depends on ACPI
63	depends on NET
64	help
65	  The Mellanox BlueField firmware implements functionality to
66	  request swapping the primary and alternate eMMC boot partition,
67	  and to set up a watchdog that can undo that swap if the system
68	  does not boot up correctly. This driver provides sysfs access
69	  to the userspace tools, to be used in conjunction with the eMMC
70	  device driver to do necessary initial swap of the boot partition.
71
72config MLXBF_PMC
73	tristate "Mellanox BlueField Performance Monitoring Counters driver"
74	depends on ARM64
75	depends on HWMON
76	depends on ACPI
77	help
78	  Say y here to enable PMC support. The PMC driver provides access
79	  to performance monitoring counters within various blocks in the
80	  Mellanox BlueField SoC via a sysfs interface.
81
82config NVSW_SN2201
83	tristate "Nvidia SN2201 platform driver support"
84	depends on HWMON && I2C
85	depends on ACPI || COMPILE_TEST
86	select REGMAP_I2C
87	help
88	  This driver provides support for the Nvidia SN2201 platform.
89	  The SN2201 is a highly integrated for one rack unit system with
90	  L3 management switches. It has 48 x 1Gbps RJ45 + 4 x 100G QSFP28
91	  ports in a compact 1RU form factor. The system also including a
92	  serial port (RS-232 interface), an OOB port (1G/100M MDI interface)
93	  and USB ports for management functions.
94	  The processor used on SN2201 is Intel Atom��Processor C Series,
95	  C3338R which is one of the Denverton product families.
96	  System equipped with Nvidia��Spectrum-1 32x100GbE Ethernet switch.
97
98endif # MELLANOX_PLATFORM
99