Loading...
1menuconfig NET_DSA
2 bool "Distributed Switch Architecture support"
3 default n
4 depends on EXPERIMENTAL && NETDEVICES && !S390
5 select PHYLIB
6 ---help---
7 This allows you to use hardware switch chips that use
8 the Distributed Switch Architecture.
9
10
11if NET_DSA
12
13# tagging formats
14config NET_DSA_TAG_DSA
15 bool
16 default n
17
18config NET_DSA_TAG_EDSA
19 bool
20 default n
21
22config NET_DSA_TAG_TRAILER
23 bool
24 default n
25
26
27# switch drivers
28config NET_DSA_MV88E6XXX
29 bool
30 default n
31
32config NET_DSA_MV88E6060
33 bool "Marvell 88E6060 ethernet switch chip support"
34 select NET_DSA_TAG_TRAILER
35 ---help---
36 This enables support for the Marvell 88E6060 ethernet switch
37 chip.
38
39config NET_DSA_MV88E6XXX_NEED_PPU
40 bool
41 default n
42
43config NET_DSA_MV88E6131
44 bool "Marvell 88E6085/6095/6095F/6131 ethernet switch chip support"
45 select NET_DSA_MV88E6XXX
46 select NET_DSA_MV88E6XXX_NEED_PPU
47 select NET_DSA_TAG_DSA
48 ---help---
49 This enables support for the Marvell 88E6085/6095/6095F/6131
50 ethernet switch chips.
51
52config NET_DSA_MV88E6123_61_65
53 bool "Marvell 88E6123/6161/6165 ethernet switch chip support"
54 select NET_DSA_MV88E6XXX
55 select NET_DSA_TAG_EDSA
56 ---help---
57 This enables support for the Marvell 88E6123/6161/6165
58 ethernet switch chips.
59
60endif
1# SPDX-License-Identifier: GPL-2.0-only
2config HAVE_NET_DSA
3 def_bool y
4 depends on INET && NETDEVICES && !S390
5
6# Drivers must select NET_DSA and the appropriate tagging format
7
8menuconfig NET_DSA
9 tristate "Distributed Switch Architecture"
10 depends on HAVE_NET_DSA
11 depends on BRIDGE || BRIDGE=n
12 select GRO_CELLS
13 select NET_SWITCHDEV
14 select PHYLINK
15 select NET_DEVLINK
16 help
17 Say Y if you want to enable support for the hardware switches supported
18 by the Distributed Switch Architecture.
19
20if NET_DSA
21
22# tagging formats
23config NET_DSA_TAG_8021Q
24 tristate
25 select VLAN_8021Q
26 help
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.
30
31 Drivers which use these helpers should select this as dependency.
32
33config NET_DSA_TAG_AR9331
34 tristate "Tag driver for Atheros AR9331 SoC with built-in switch"
35 help
36 Say Y or M if you want to enable support for tagging frames for
37 the Atheros AR9331 SoC with built-in switch.
38
39config NET_DSA_TAG_BRCM_COMMON
40 tristate
41 default n
42
43config NET_DSA_TAG_BRCM
44 tristate "Tag driver for Broadcom switches using in-frame headers"
45 select NET_DSA_TAG_BRCM_COMMON
46 help
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.
49
50
51config NET_DSA_TAG_BRCM_PREPEND
52 tristate "Tag driver for Broadcom switches using prepended headers"
53 select NET_DSA_TAG_BRCM_COMMON
54 help
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
57 (prepended).
58
59config NET_DSA_TAG_GSWIP
60 tristate "Tag driver for Lantiq / Intel GSWIP switches"
61 help
62 Say Y or M if you want to enable support for tagging frames for the
63 Lantiq / Intel GSWIP switches.
64
65config NET_DSA_TAG_DSA
66 tristate "Tag driver for Marvell switches using DSA headers"
67 help
68 Say Y or M if you want to enable support for tagging frames for the
69 Marvell switches which use DSA headers.
70
71config NET_DSA_TAG_EDSA
72 tristate "Tag driver for Marvell switches using EtherType DSA headers"
73 help
74 Say Y or M if you want to enable support for tagging frames for the
75 Marvell switches which use EtherType DSA headers.
76
77config NET_DSA_TAG_MTK
78 tristate "Tag driver for Mediatek switches"
79 help
80 Say Y or M if you want to enable support for tagging frames for
81 Mediatek switches.
82
83config NET_DSA_TAG_KSZ
84 tristate "Tag driver for Microchip 8795/9477/9893 families of switches"
85 help
86 Say Y if you want to enable support for tagging frames for the
87 Microchip 8795/9477/9893 families of switches.
88
89config NET_DSA_TAG_RTL4_A
90 tristate "Tag driver for Realtek 4 byte protocol A tags"
91 help
92 Say Y or M if you want to enable support for tagging frames for the
93 Realtek switches with 4 byte protocol A tags, sich as found in
94 the Realtek RTL8366RB.
95
96config NET_DSA_TAG_OCELOT
97 tristate "Tag driver for Ocelot family of switches"
98 select PACKING
99 help
100 Say Y or M if you want to enable support for tagging frames for the
101 Ocelot switches (VSC7511, VSC7512, VSC7513, VSC7514, VSC9959).
102
103config NET_DSA_TAG_QCA
104 tristate "Tag driver for Qualcomm Atheros QCA8K switches"
105 help
106 Say Y or M if you want to enable support for tagging frames for
107 the Qualcomm Atheros QCA8K switches.
108
109config NET_DSA_TAG_LAN9303
110 tristate "Tag driver for SMSC/Microchip LAN9303 family of switches"
111 help
112 Say Y or M if you want to enable support for tagging frames for the
113 SMSC/Microchip LAN9303 family of switches.
114
115config NET_DSA_TAG_SJA1105
116 tristate "Tag driver for NXP SJA1105 switches"
117 select NET_DSA_TAG_8021Q
118 select PACKING
119 help
120 Say Y or M if you want to enable support for tagging frames with the
121 NXP SJA1105 switch family. Both the native tagging protocol (which
122 is only for link-local traffic) as well as non-native tagging (based
123 on a custom 802.1Q VLAN header) are available.
124
125config NET_DSA_TAG_TRAILER
126 tristate "Tag driver for switches using a trailer tag"
127 help
128 Say Y or M if you want to enable support for tagging frames at
129 with a trailed. e.g. Marvell 88E6060.
130
131endif