# SPDX-License-Identifier: GPL-2.0-only
config NET_DSA_MSCC_FELIX_DSA_LIB
tristate
help
This is an umbrella module for all network switches that are
register-compatible with Ocelot and that perform I/O to their host
CPU through an NPI (Node Processor Interface) Ethernet port.
Its name comes from the first hardware chip to make use of it
(VSC9959), code named Felix.
config NET_DSA_MSCC_OCELOT_EXT
tristate "Ocelot External Ethernet switch support"
depends on NET_DSA && SPI
depends on NET_VENDOR_MICROSEMI
depends on PTP_1588_CLOCK_OPTIONAL
select MDIO_MSCC_MIIM
select MFD_OCELOT
select MSCC_OCELOT_SWITCH_LIB
select NET_DSA_MSCC_FELIX_DSA_LIB
select NET_DSA_TAG_OCELOT_8021Q
select NET_DSA_TAG_OCELOT
help
This driver supports the VSC7511, VSC7512, VSC7513 and VSC7514 chips
when controlled through SPI.
The Ocelot switch family is a set of multi-port networking chips. All
of these chips have the ability to be controlled externally through
SPI or PCIe interfaces.
Say "Y" here to enable external control to these chips.
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
depends on NET_SCH_TAPRIO || NET_SCH_TAPRIO=n
select MSCC_OCELOT_SWITCH_LIB
select NET_DSA_MSCC_FELIX_DSA_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 MDIO_MSCC_MIIM
select MSCC_OCELOT_SWITCH_LIB
select NET_DSA_MSCC_FELIX_DSA_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.