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 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 19if NET_DSA 20 21# tagging formats 22config NET_DSA_TAG_8021Q 23 tristate 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 32config NET_DSA_TAG_BRCM_COMMON 33 tristate 34 default n 35 36config 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 44config 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 52config 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 58config 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 64config 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 70config 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 76config NET_DSA_TAG_KSZ 77 tristate "Tag driver for Microchip 8795/9477/9893 families of switches" 78 help 79 Say Y if you want to enable support for tagging frames for the 80 Microchip 8795/9477/9893 families of switches. 81 82config 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 89config NET_DSA_TAG_QCA 90 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 101config NET_DSA_TAG_SJA1105 102 tristate "Tag driver for NXP SJA1105 switches" 103 select NET_DSA_TAG_8021Q 104 select PACKING 105 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 111config 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. 116 117endif 118