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 MLX_PLATFORM
18	tristate "Mellanox Technologies platform support"
19	depends on ACPI && I2C && PCI
20	select REGMAP
21	help
22	  This option enables system support for the Mellanox Technologies
23	  platform. The Mellanox systems provide data center networking
24	  solutions based on Virtual Protocol Interconnect (VPI) technology
25	  enable seamless connectivity to 56/100Gb/s InfiniBand or 10/40/56GbE
26	  connection.
27
28	  If you have a Mellanox system, say Y or M here.
29
30config MLXREG_HOTPLUG
31	tristate "Mellanox platform hotplug driver support"
32	depends on HWMON
33	depends on I2C
34	select REGMAP
35	help
36	  This driver handles hot-plug events for the power suppliers, power
37	  cables and fans on the wide range Mellanox IB and Ethernet systems.
38
39config MLXREG_IO
40	tristate "Mellanox platform register access driver support"
41	depends on HWMON
42	select REGMAP
43	help
44	  This driver allows access to Mellanox programmable device register
45	  space through sysfs interface. The sets of registers for sysfs access
46	  are defined per system type bases and include the registers related
47	  to system resets operation, system reset causes monitoring and some
48	  kinds of mux selection.
49
50config MLXREG_LC
51	tristate "Mellanox line card platform driver support"
52	depends on HWMON
53	depends on I2C
54	select REGMAP
55	help
56	  This driver provides support for the Mellanox MSN4800-XX line cards,
57	  which are the part of MSN4800 Ethernet modular switch systems
58	  providing a high performance switching solution for Enterprise Data
59	  Centers (EDC) for building Ethernet based clusters, High-Performance
60	  Computing (HPC) and embedded environments.
61
62config MLXBF_TMFIFO
63	tristate "Mellanox BlueField SoC TmFifo platform driver"
64	depends on ARM64
65	depends on ACPI
66	depends on VIRTIO_CONSOLE && VIRTIO_NET
67	help
68	  Say y here to enable TmFifo support. The TmFifo driver provides
69	  platform driver support for the TmFifo which supports console
70	  and networking based on the virtio framework.
71
72config MLXBF_BOOTCTL
73	tristate "Mellanox BlueField Firmware Boot Control driver"
74	depends on ARM64
75	depends on ACPI
76	depends on NET
77	help
78	  The Mellanox BlueField firmware implements functionality to
79	  request swapping the primary and alternate eMMC boot partition,
80	  and to set up a watchdog that can undo that swap if the system
81	  does not boot up correctly. This driver provides sysfs access
82	  to the userspace tools, to be used in conjunction with the eMMC
83	  device driver to do necessary initial swap of the boot partition.
84
85config MLXBF_PMC
86	tristate "Mellanox BlueField Performance Monitoring Counters driver"
87	depends on ARM64
88	depends on HWMON
89	depends on ACPI
90	help
91	  Say y here to enable PMC support. The PMC driver provides access
92	  to performance monitoring counters within various blocks in the
93	  Mellanox BlueField SoC via a sysfs interface.
94
95config NVSW_SN2201
96	tristate "Nvidia SN2201 platform driver support"
97	depends on HWMON && I2C
98	depends on ACPI || COMPILE_TEST
99	select REGMAP_I2C
100	help
101	  This driver provides support for the Nvidia SN2201 platform.
102	  The SN2201 is a highly integrated for one rack unit system with
103	  L3 management switches. It has 48 x 1Gbps RJ45 + 4 x 100G QSFP28
104	  ports in a compact 1RU form factor. The system also including a
105	  serial port (RS-232 interface), an OOB port (1G/100M MDI interface)
106	  and USB ports for management functions.
107	  The processor used on SN2201 is Intel Atom®Processor C Series,
108	  C3338R which is one of the Denverton product families.
109	  System equipped with Nvidia®Spectrum-1 32x100GbE Ethernet switch.
110
111endif # MELLANOX_PLATFORM
112