1# SPDX-License-Identifier: GPL-2.0-only
2#
3# Solarflare device configuration
4#
5
6config NET_VENDOR_SOLARFLARE
7	bool "Solarflare devices"
8	default y
9	help
10	  If you have a network (Ethernet) card belonging to this class, say Y.
11
12	  Note that the answer to this question doesn't directly affect the
13	  kernel: saying N will just cause the configurator to skip all
14	  the questions about Solarflare devices. If you say Y, you will be asked
15	  for your specific card in the following questions.
16
17if NET_VENDOR_SOLARFLARE
18
19config SFC
20	tristate "Solarflare SFC9100/EF100-family support"
21	depends on PCI
22	depends on PTP_1588_CLOCK_OPTIONAL
23	select MDIO
24	select CRC32
25	select NET_DEVLINK
26	help
27	  This driver supports 10/40-gigabit Ethernet cards based on
28	  the Solarflare SFC9100-family controllers.
29
30	  It also supports 10/25/40/100-gigabit Ethernet cards based
31	  on the Solarflare EF100 networking IP in Xilinx FPGAs.
32
33	  To compile this driver as a module, choose M here.  The module
34	  will be called sfc.
35config SFC_MTD
36	bool "Solarflare SFC9100-family MTD support"
37	depends on SFC && MTD && !(SFC=y && MTD=m)
38	default y
39	help
40	  This exposes the on-board flash and/or EEPROM as MTD devices
41	  (e.g. /dev/mtd1).  This is required to update the firmware or
42	  the boot configuration under Linux.
43config SFC_MCDI_MON
44	bool "Solarflare SFC9100-family hwmon support"
45	depends on SFC && HWMON && !(SFC=y && HWMON=m)
46	default y
47	help
48	  This exposes the on-board firmware-managed sensors as a
49	  hardware monitor device.
50config SFC_SRIOV
51	bool "Solarflare SFC9100-family SR-IOV support"
52	depends on SFC && PCI_IOV
53	depends on INET
54	default y
55	help
56	  This enables support for the Single Root I/O Virtualization
57	  features, allowing accelerated network performance in
58	  virtualized environments.
59config SFC_MCDI_LOGGING
60	bool "Solarflare SFC9100-family MCDI logging support"
61	depends on SFC
62	default y
63	help
64	  This enables support for tracing of MCDI (Management-Controller-to-
65	  Driver-Interface) commands and responses, allowing debugging of
66	  driver/firmware interaction.  The tracing is actually enabled by
67	  a sysfs file 'mcdi_logging' under the PCI device.
68
69source "drivers/net/ethernet/sfc/falcon/Kconfig"
70source "drivers/net/ethernet/sfc/siena/Kconfig"
71
72endif # NET_VENDOR_SOLARFLARE
73