Merge tag 'platform-drivers-x86-v5.2-2' of git://git.infradead.org/linux-platform...
[linux-2.6-microblaze.git] / net / dsa / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 config 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
8 menuconfig NET_DSA
9         tristate "Distributed Switch Architecture"
10         depends on HAVE_NET_DSA
11         depends on BRIDGE || BRIDGE=n
12         select NET_SWITCHDEV
13         select PHYLINK
14         select NET_DEVLINK
15         ---help---
16           Say Y if you want to enable support for the hardware switches supported
17           by the Distributed Switch Architecture.
18
19 if NET_DSA
20
21 # tagging formats
22 config NET_DSA_TAG_8021Q
23         tristate "Tag driver for switches using custom 802.1Q VLAN headers"
24         select VLAN_8021Q
25         help
26           Unlike the other tagging protocols, the 802.1Q config option simply
27           provides helpers for other tagging implementations that might rely on
28           VLAN in one way or another. It is not a complete solution.
29
30           Drivers which use these helpers should select this as dependency.
31
32 config NET_DSA_TAG_BRCM_COMMON
33         tristate
34         default n
35
36 config NET_DSA_TAG_BRCM
37         tristate "Tag driver for Broadcom switches using in-frame headers"
38         select NET_DSA_TAG_BRCM_COMMON
39         help
40           Say Y if you want to enable support for tagging frames for the
41           Broadcom switches which place the tag after the MAC source address.
42
43
44 config NET_DSA_TAG_BRCM_PREPEND
45         tristate "Tag driver for Broadcom switches using prepended headers"
46         select NET_DSA_TAG_BRCM_COMMON
47         help
48           Say Y if you want to enable support for tagging frames for the
49           Broadcom switches which places the tag before the Ethernet header
50           (prepended).
51
52 config NET_DSA_TAG_GSWIP
53         tristate "Tag driver for Lantiq / Intel GSWIP switches"
54         help
55           Say Y or M if you want to enable support for tagging frames for the
56           Lantiq / Intel GSWIP switches.
57
58 config NET_DSA_TAG_DSA
59         tristate "Tag driver for Marvell switches using DSA headers"
60         help
61           Say Y or M if you want to enable support for tagging frames for the
62           Marvell switches which use DSA headers.
63
64 config NET_DSA_TAG_EDSA
65         tristate "Tag driver for Marvell switches using EtherType DSA headers"
66         help
67           Say Y or M if you want to enable support for tagging frames for the
68           Marvell switches which use EtherType DSA headers.
69
70 config NET_DSA_TAG_MTK
71         tristate "Tag driver for Mediatek switches"
72         help
73           Say Y or M if you want to enable support for tagging frames for
74           Mediatek switches.
75
76 config NET_DSA_TAG_KSZ_COMMON
77         tristate
78         default n
79
80 config NET_DSA_TAG_KSZ
81         tristate "Tag driver for Microchip 9893 family of switches"
82         select NET_DSA_TAG_KSZ_COMMON
83         help
84           Say Y if you want to enable support for tagging frames for the
85           Microchip 9893 family of switches.
86
87 config NET_DSA_TAG_KSZ9477
88         tristate "Tag driver for Microchip 9477 family of switches"
89         select NET_DSA_TAG_KSZ_COMMON
90         help
91           Say Y if you want to enable support for tagging frames for the
92           Microchip 9477 family of switches.
93
94 config NET_DSA_TAG_QCA
95         tristate "Tag driver for Qualcomm Atheros QCA8K switches"
96         help
97           Say Y or M if you want to enable support for tagging frames for
98           the Qualcomm Atheros QCA8K switches.
99
100 config NET_DSA_TAG_LAN9303
101         tristate "Tag driver for SMSC/Microchip LAN9303 family of switches"
102         help
103           Say Y or M if you want to enable support for tagging frames for the
104           SMSC/Microchip LAN9303 family of switches.
105
106 config NET_DSA_TAG_SJA1105
107         tristate "Tag driver for NXP SJA1105 switches"
108         select NET_DSA_TAG_8021Q
109         help
110           Say Y or M if you want to enable support for tagging frames with the
111           NXP SJA1105 switch family. Both the native tagging protocol (which
112           is only for link-local traffic) as well as non-native tagging (based
113           on a custom 802.1Q VLAN header) are available.
114
115 config NET_DSA_TAG_TRAILER
116         tristate "Tag driver for switches using a trailer tag"
117         help
118           Say Y or M if you want to enable support for tagging frames at
119           with a trailed. e.g. Marvell 88E6060.
120
121 endif