# SPDX-License-Identifier: GPL-2.0-only
config NET_DSA_MSCC_FELIX
	tristate "Ocelot / Felix Ethernet switch support"
	depends on NET_DSA && PCI
	depends on NET_VENDOR_MICROSEMI
	depends on NET_VENDOR_FREESCALE
	depends on HAS_IOMEM
	depends on PTP_1588_CLOCK_OPTIONAL
	select MSCC_OCELOT_SWITCH_LIB
	select NET_DSA_TAG_OCELOT_8021Q
	select NET_DSA_TAG_OCELOT
	select FSL_ENETC_MDIO
	select PCS_LYNX
	help
	  This driver supports the VSC9959 (Felix) switch, which is embedded as
	  a PCIe function of the NXP LS1028A ENETC RCiEP.

config NET_DSA_MSCC_SEVILLE
	tristate "Ocelot / Seville Ethernet switch support"
	depends on NET_DSA
	depends on NET_VENDOR_MICROSEMI
	depends on HAS_IOMEM
	depends on PTP_1588_CLOCK_OPTIONAL
	select MSCC_OCELOT_SWITCH_LIB
	select NET_DSA_TAG_OCELOT_8021Q
	select NET_DSA_TAG_OCELOT
	select PCS_LYNX
	help
	  This driver supports the VSC9953 (Seville) switch, which is embedded
	  as a platform device on the NXP T1040 SoC.
