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

config NET_VENDOR_QUALCOMM
	bool "Qualcomm devices"
	default y
	help
	  If you have a network (Ethernet) card belonging to this class, say Y.

	  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 Qualcomm cards. If you say Y, you will be asked
	  for your specific card in the following questions.

if NET_VENDOR_QUALCOMM

config QCA7000
	tristate
	help
	  This enables support for the Qualcomm Atheros QCA7000.

config QCA7000_SPI
	tristate "Qualcomm Atheros QCA7000 SPI support"
	select QCA7000
	depends on SPI_MASTER && OF
	help
	  This SPI protocol driver supports the Qualcomm Atheros QCA7000.

	  To compile this driver as a module, choose M here. The module
	  will be called qcaspi.

config QCA7000_UART
	tristate "Qualcomm Atheros QCA7000 UART support"
	select QCA7000
	depends on SERIAL_DEV_BUS && OF
	help
	  This UART protocol driver supports the Qualcomm Atheros QCA7000.

	  Currently the driver assumes these device UART settings:
	    Data bits: 8
	    Parity: None
	    Stop bits: 1
	    Flow control: None

	  To compile this driver as a module, choose M here. The module
	  will be called qcauart.

config QCOM_EMAC
	tristate "Qualcomm Technologies, Inc. EMAC Gigabit Ethernet support"
	depends on HAS_DMA && HAS_IOMEM
	select CRC32
	select PHYLIB
	select MDIO_DEVRES
	help
	  This driver supports the Qualcomm Technologies, Inc. Gigabit
	  Ethernet Media Access Controller (EMAC). The controller
	  supports IEEE 802.3-2002, half-duplex mode at 10/100 Mb/s,
	  full-duplex mode at 10/100/1000Mb/s, Wake On LAN (WOL) for
	  low power, Receive-Side Scaling (RSS), and IEEE 1588-2008
	  Precision Clock Synchronization Protocol.

source "drivers/net/ethernet/qualcomm/rmnet/Kconfig"

endif # NET_VENDOR_QUALCOMM
