# SPDX-License-Identifier: GPL-2.0-only
#
# Meta Platforms network device configuration
#

config NET_VENDOR_META
	bool "Meta Platforms devices"
	default y
	help
	  If you have a network (Ethernet) card designed by Meta, say Y.
	  That's Meta as in the parent company of Facebook.

	  Note that the answer to this question doesn't directly affect the
	  kernel: saying N will just cause the configurator to skip all
	  the questions about Meta cards. If you say Y, you will be asked for
	  your specific card in the following questions.

if NET_VENDOR_META

config FBNIC
	tristate "Meta Platforms Host Network Interface"
	depends on X86_64 || COMPILE_TEST
	depends on !S390
	depends on MAX_SKB_FRAGS < 22
	depends on PCI_MSI
	select NET_DEVLINK
	select PAGE_POOL
	select PHYLINK
	help
	  This driver supports Meta Platforms Host Network Interface.

	  To compile this driver as a module, choose M here. The module
	  will be called fbnic.  MSI-X interrupt support is required.

endif # NET_VENDOR_META
