1 # SPDX-License-Identifier: GPL-2.0-only
4 depends on INET && NETDEVICES && !S390
6 # Drivers must select NET_DSA and the appropriate tagging format
9 tristate "Distributed Switch Architecture"
10 depends on HAVE_NET_DSA
11 depends on BRIDGE || BRIDGE=n
17 Say Y if you want to enable support for the hardware switches supported
18 by the Distributed Switch Architecture.
23 config NET_DSA_TAG_8021Q
27 Unlike the other tagging protocols, the 802.1Q config option simply
28 provides helpers for other tagging implementations that might rely on
29 VLAN in one way or another. It is not a complete solution.
31 Drivers which use these helpers should select this as dependency.
33 config NET_DSA_TAG_AR9331
34 tristate "Tag driver for Atheros AR9331 SoC with built-in switch"
36 Say Y or M if you want to enable support for tagging frames for
37 the Atheros AR9331 SoC with built-in switch.
39 config NET_DSA_TAG_BRCM_COMMON
43 config NET_DSA_TAG_BRCM
44 tristate "Tag driver for Broadcom switches using in-frame headers"
45 select NET_DSA_TAG_BRCM_COMMON
47 Say Y if you want to enable support for tagging frames for the
48 Broadcom switches which place the tag after the MAC source address.
51 config NET_DSA_TAG_BRCM_PREPEND
52 tristate "Tag driver for Broadcom switches using prepended headers"
53 select NET_DSA_TAG_BRCM_COMMON
55 Say Y if you want to enable support for tagging frames for the
56 Broadcom switches which places the tag before the Ethernet header
59 config NET_DSA_TAG_GSWIP
60 tristate "Tag driver for Lantiq / Intel GSWIP switches"
62 Say Y or M if you want to enable support for tagging frames for the
63 Lantiq / Intel GSWIP switches.
65 config NET_DSA_TAG_DSA
66 tristate "Tag driver for Marvell switches using DSA headers"
68 Say Y or M if you want to enable support for tagging frames for the
69 Marvell switches which use DSA headers.
71 config NET_DSA_TAG_EDSA
72 tristate "Tag driver for Marvell switches using EtherType DSA headers"
74 Say Y or M if you want to enable support for tagging frames for the
75 Marvell switches which use EtherType DSA headers.
77 config NET_DSA_TAG_MTK
78 tristate "Tag driver for Mediatek switches"
80 Say Y or M if you want to enable support for tagging frames for
83 config NET_DSA_TAG_KSZ
84 tristate "Tag driver for Microchip 8795/9477/9893 families of switches"
86 Say Y if you want to enable support for tagging frames for the
87 Microchip 8795/9477/9893 families of switches.
89 config NET_DSA_TAG_OCELOT
90 tristate "Tag driver for Ocelot family of switches"
93 Say Y or M if you want to enable support for tagging frames for the
94 Ocelot switches (VSC7511, VSC7512, VSC7513, VSC7514, VSC9959).
96 config NET_DSA_TAG_QCA
97 tristate "Tag driver for Qualcomm Atheros QCA8K switches"
99 Say Y or M if you want to enable support for tagging frames for
100 the Qualcomm Atheros QCA8K switches.
102 config NET_DSA_TAG_LAN9303
103 tristate "Tag driver for SMSC/Microchip LAN9303 family of switches"
105 Say Y or M if you want to enable support for tagging frames for the
106 SMSC/Microchip LAN9303 family of switches.
108 config NET_DSA_TAG_SJA1105
109 tristate "Tag driver for NXP SJA1105 switches"
110 select NET_DSA_TAG_8021Q
113 Say Y or M if you want to enable support for tagging frames with the
114 NXP SJA1105 switch family. Both the native tagging protocol (which
115 is only for link-local traffic) as well as non-native tagging (based
116 on a custom 802.1Q VLAN header) are available.
118 config NET_DSA_TAG_TRAILER
119 tristate "Tag driver for switches using a trailer tag"
121 Say Y or M if you want to enable support for tagging frames at
122 with a trailed. e.g. Marvell 88E6060.