blob: 1e6c3cac11e612923b2360cc02d8b3505c0f415a [file] [log] [blame]
Thomas Gleixnerec8f24b2019-05-19 13:07:45 +01001# SPDX-License-Identifier: GPL-2.0-only
Ben Hutchingsb3422a32012-11-26 09:16:10 +00002config HAVE_NET_DSA
3 def_bool y
Vivien Didelot3a89eaa2017-01-09 16:49:26 -05004 depends on INET && NETDEVICES && !S390
Ben Hutchingsb3422a32012-11-26 09:16:10 +00005
6# Drivers must select NET_DSA and the appropriate tagging format
7
Andrew Lunn0b9f9df2019-04-28 19:37:23 +02008menuconfig NET_DSA
Mathieu Olivaric6f15072015-03-20 18:31:03 -07009 tristate "Distributed Switch Architecture"
Jakub Kicinskif4b6bcc2019-02-25 19:34:02 -080010 depends on HAVE_NET_DSA
Andrew Lunnee0ab7a22017-11-11 16:29:41 +010011 depends on BRIDGE || BRIDGE=n
Vivien Didelot3a89eaa2017-01-09 16:49:26 -050012 select NET_SWITCHDEV
Florian Fainelli11d8f3d2018-05-10 13:17:32 -070013 select PHYLINK
Jiri Pirkof6b19b32019-03-24 11:14:38 +010014 select NET_DEVLINK
Mathieu Olivaric6f15072015-03-20 18:31:03 -070015 ---help---
16 Say Y if you want to enable support for the hardware switches supported
17 by the Distributed Switch Architecture.
Lennert Buytenhek91da11f2008-10-07 13:44:02 +000018
Ben Hutchingsb3422a32012-11-26 09:16:10 +000019if NET_DSA
Lennert Buytenhek91da11f2008-10-07 13:44:02 +000020
Vladimir Olteanf9bbe442019-05-05 13:19:22 +030021# tagging formats
22config NET_DSA_TAG_8021Q
Florian Fainelli129bd7c2019-11-11 20:38:46 -080023 tristate
Vladimir Olteanf9bbe442019-05-05 13:19:22 +030024 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
Andrew Lunn0b9f9df2019-04-28 19:37:23 +020032config NET_DSA_TAG_BRCM_COMMON
33 tristate
34 default n
35
Florian Fainelli5037d532014-08-27 17:04:55 -070036config NET_DSA_TAG_BRCM
Andrew Lunn0b9f9df2019-04-28 19:37:23 +020037 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
Florian Fainelli5037d532014-08-27 17:04:55 -070043
Florian Fainellib74b70c2017-11-10 15:22:54 -080044config NET_DSA_TAG_BRCM_PREPEND
Andrew Lunn0b9f9df2019-04-28 19:37:23 +020045 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).
Lennert Buytenhek91da11f2008-10-07 13:44:02 +000051
Hauke Mehrtens79691192018-09-09 22:16:43 +020052config NET_DSA_TAG_GSWIP
Andrew Lunn0b9f9df2019-04-28 19:37:23 +020053 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.
Hauke Mehrtens79691192018-09-09 22:16:43 +020057
Andrew Lunn0b9f9df2019-04-28 19:37:23 +020058config 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.
Woojung Huh8b8010f2017-05-31 20:19:06 +000063
Andrew Lunn0b9f9df2019-04-28 19:37:23 +020064config 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.
John Crispincafdc452016-09-15 16:26:40 +020069
Sean Wang5cd89852017-04-07 16:45:06 +080070config NET_DSA_TAG_MTK
Andrew Lunn0b9f9df2019-04-28 19:37:23 +020071 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.
Juergen Beiserte8fe1772017-04-18 10:48:24 +020075
Andrew Lunn0b9f9df2019-04-28 19:37:23 +020076config NET_DSA_TAG_KSZ
George McCollisterf4073e92019-09-10 08:18:36 -050077 tristate "Tag driver for Microchip 8795/9477/9893 families of switches"
Andrew Lunn0b9f9df2019-04-28 19:37:23 +020078 help
79 Say Y if you want to enable support for tagging frames for the
George McCollisterf4073e92019-09-10 08:18:36 -050080 Microchip 8795/9477/9893 families of switches.
Andrew Lunn0b9f9df2019-04-28 19:37:23 +020081
Vladimir Oltean8dce89aa2019-11-14 17:03:29 +020082config NET_DSA_TAG_OCELOT
83 tristate "Tag driver for Ocelot family of switches"
84 select PACKING
85 help
86 Say Y or M if you want to enable support for tagging frames for the
87 Ocelot switches (VSC7511, VSC7512, VSC7513, VSC7514, VSC9959).
88
Andrew Lunneb7b7212017-05-16 22:40:07 +020089config NET_DSA_TAG_QCA
Andrew Lunn0b9f9df2019-04-28 19:37:23 +020090 tristate "Tag driver for Qualcomm Atheros QCA8K switches"
91 help
92 Say Y or M if you want to enable support for tagging frames for
93 the Qualcomm Atheros QCA8K switches.
94
95config NET_DSA_TAG_LAN9303
96 tristate "Tag driver for SMSC/Microchip LAN9303 family of switches"
97 help
98 Say Y or M if you want to enable support for tagging frames for the
99 SMSC/Microchip LAN9303 family of switches.
100
Vladimir Oltean227d07a2019-05-05 13:19:27 +0300101config NET_DSA_TAG_SJA1105
102 tristate "Tag driver for NXP SJA1105 switches"
103 select NET_DSA_TAG_8021Q
Vladimir Oltean6358f382019-06-11 21:47:45 +0300104 select PACKING
Vladimir Oltean227d07a2019-05-05 13:19:27 +0300105 help
106 Say Y or M if you want to enable support for tagging frames with the
107 NXP SJA1105 switch family. Both the native tagging protocol (which
108 is only for link-local traffic) as well as non-native tagging (based
109 on a custom 802.1Q VLAN header) are available.
110
Andrew Lunn0b9f9df2019-04-28 19:37:23 +0200111config NET_DSA_TAG_TRAILER
112 tristate "Tag driver for switches using a trailer tag"
113 help
114 Say Y or M if you want to enable support for tagging frames at
115 with a trailed. e.g. Marvell 88E6060.
Juergen Beiserte8fe1772017-04-18 10:48:24 +0200116
Ben Hutchingsb3422a32012-11-26 09:16:10 +0000117endif