mirror of
https://github.com/torvalds/linux.git
synced 2024-11-19 02:21:47 +00:00
01ef09caad
The Hirschmann Hellcreek TSN switches have a special tagging protocol for frames exchanged between the CPU port and the master interface. The format is a one byte trailer indicating the destination or origin port. It's quite similar to the Micrel KSZ tagging. That's why the implementation is based on that code. Signed-off-by: Kurt Kanzenbach <kurt@linutronix.de> Reviewed-by: Vladimir Oltean <olteanv@gmail.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
138 lines
4.3 KiB
Plaintext
138 lines
4.3 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
config HAVE_NET_DSA
|
|
def_bool y
|
|
depends on INET && NETDEVICES && !S390
|
|
|
|
# Drivers must select NET_DSA and the appropriate tagging format
|
|
|
|
menuconfig NET_DSA
|
|
tristate "Distributed Switch Architecture"
|
|
depends on HAVE_NET_DSA
|
|
depends on BRIDGE || BRIDGE=n
|
|
select GRO_CELLS
|
|
select NET_SWITCHDEV
|
|
select PHYLINK
|
|
select NET_DEVLINK
|
|
help
|
|
Say Y if you want to enable support for the hardware switches supported
|
|
by the Distributed Switch Architecture.
|
|
|
|
if NET_DSA
|
|
|
|
# tagging formats
|
|
config NET_DSA_TAG_8021Q
|
|
tristate
|
|
select VLAN_8021Q
|
|
help
|
|
Unlike the other tagging protocols, the 802.1Q config option simply
|
|
provides helpers for other tagging implementations that might rely on
|
|
VLAN in one way or another. It is not a complete solution.
|
|
|
|
Drivers which use these helpers should select this as dependency.
|
|
|
|
config NET_DSA_TAG_AR9331
|
|
tristate "Tag driver for Atheros AR9331 SoC with built-in switch"
|
|
help
|
|
Say Y or M if you want to enable support for tagging frames for
|
|
the Atheros AR9331 SoC with built-in switch.
|
|
|
|
config NET_DSA_TAG_BRCM_COMMON
|
|
tristate
|
|
default n
|
|
|
|
config NET_DSA_TAG_BRCM
|
|
tristate "Tag driver for Broadcom switches using in-frame headers"
|
|
select NET_DSA_TAG_BRCM_COMMON
|
|
help
|
|
Say Y if you want to enable support for tagging frames for the
|
|
Broadcom switches which place the tag after the MAC source address.
|
|
|
|
|
|
config NET_DSA_TAG_BRCM_PREPEND
|
|
tristate "Tag driver for Broadcom switches using prepended headers"
|
|
select NET_DSA_TAG_BRCM_COMMON
|
|
help
|
|
Say Y if you want to enable support for tagging frames for the
|
|
Broadcom switches which places the tag before the Ethernet header
|
|
(prepended).
|
|
|
|
config NET_DSA_TAG_HELLCREEK
|
|
tristate "Tag driver for Hirschmann Hellcreek TSN switches"
|
|
help
|
|
Say Y or M if you want to enable support for tagging frames
|
|
for the Hirschmann Hellcreek TSN switches.
|
|
|
|
config NET_DSA_TAG_GSWIP
|
|
tristate "Tag driver for Lantiq / Intel GSWIP switches"
|
|
help
|
|
Say Y or M if you want to enable support for tagging frames for the
|
|
Lantiq / Intel GSWIP switches.
|
|
|
|
config NET_DSA_TAG_DSA
|
|
tristate "Tag driver for Marvell switches using DSA headers"
|
|
help
|
|
Say Y or M if you want to enable support for tagging frames for the
|
|
Marvell switches which use DSA headers.
|
|
|
|
config NET_DSA_TAG_EDSA
|
|
tristate "Tag driver for Marvell switches using EtherType DSA headers"
|
|
help
|
|
Say Y or M if you want to enable support for tagging frames for the
|
|
Marvell switches which use EtherType DSA headers.
|
|
|
|
config NET_DSA_TAG_MTK
|
|
tristate "Tag driver for Mediatek switches"
|
|
help
|
|
Say Y or M if you want to enable support for tagging frames for
|
|
Mediatek switches.
|
|
|
|
config NET_DSA_TAG_KSZ
|
|
tristate "Tag driver for Microchip 8795/9477/9893 families of switches"
|
|
help
|
|
Say Y if you want to enable support for tagging frames for the
|
|
Microchip 8795/9477/9893 families of switches.
|
|
|
|
config NET_DSA_TAG_RTL4_A
|
|
tristate "Tag driver for Realtek 4 byte protocol A tags"
|
|
help
|
|
Say Y or M if you want to enable support for tagging frames for the
|
|
Realtek switches with 4 byte protocol A tags, sich as found in
|
|
the Realtek RTL8366RB.
|
|
|
|
config NET_DSA_TAG_OCELOT
|
|
tristate "Tag driver for Ocelot family of switches"
|
|
select PACKING
|
|
help
|
|
Say Y or M if you want to enable support for tagging frames for the
|
|
Ocelot switches (VSC7511, VSC7512, VSC7513, VSC7514, VSC9959).
|
|
|
|
config NET_DSA_TAG_QCA
|
|
tristate "Tag driver for Qualcomm Atheros QCA8K switches"
|
|
help
|
|
Say Y or M if you want to enable support for tagging frames for
|
|
the Qualcomm Atheros QCA8K switches.
|
|
|
|
config NET_DSA_TAG_LAN9303
|
|
tristate "Tag driver for SMSC/Microchip LAN9303 family of switches"
|
|
help
|
|
Say Y or M if you want to enable support for tagging frames for the
|
|
SMSC/Microchip LAN9303 family of switches.
|
|
|
|
config NET_DSA_TAG_SJA1105
|
|
tristate "Tag driver for NXP SJA1105 switches"
|
|
select NET_DSA_TAG_8021Q
|
|
select PACKING
|
|
help
|
|
Say Y or M if you want to enable support for tagging frames with the
|
|
NXP SJA1105 switch family. Both the native tagging protocol (which
|
|
is only for link-local traffic) as well as non-native tagging (based
|
|
on a custom 802.1Q VLAN header) are available.
|
|
|
|
config NET_DSA_TAG_TRAILER
|
|
tristate "Tag driver for switches using a trailer tag"
|
|
help
|
|
Say Y or M if you want to enable support for tagging frames at
|
|
with a trailed. e.g. Marvell 88E6060.
|
|
|
|
endif
|