1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 2b3422a31SBen Hutchingsconfig HAVE_NET_DSA 3b3422a31SBen Hutchings def_bool y 43a89eaa6SVivien Didelot depends on INET && NETDEVICES && !S390 5b3422a31SBen Hutchings 6b3422a31SBen Hutchings# Drivers must select NET_DSA and the appropriate tagging format 7b3422a31SBen Hutchings 80b9f9dfbSAndrew Lunnmenuconfig NET_DSA 9c6f15070SMathieu Olivari tristate "Distributed Switch Architecture" 10f4b6bcc7SJakub Kicinski depends on HAVE_NET_DSA 11ee0ab7a2SAndrew Lunn depends on BRIDGE || BRIDGE=n 123a89eaa6SVivien Didelot select NET_SWITCHDEV 1311d8f3ddSFlorian Fainelli select PHYLINK 14f6b19b35SJiri Pirko select NET_DEVLINK 15c6f15070SMathieu Olivari ---help--- 16c6f15070SMathieu Olivari Say Y if you want to enable support for the hardware switches supported 17c6f15070SMathieu Olivari by the Distributed Switch Architecture. 1891da11f8SLennert Buytenhek 19b3422a31SBen Hutchingsif NET_DSA 2091da11f8SLennert Buytenhek 21f9bbe447SVladimir Oltean# tagging formats 22f9bbe447SVladimir Olteanconfig NET_DSA_TAG_8021Q 23129bd7caSFlorian Fainelli tristate 24f9bbe447SVladimir Oltean select VLAN_8021Q 25f9bbe447SVladimir Oltean help 26f9bbe447SVladimir Oltean Unlike the other tagging protocols, the 802.1Q config option simply 27f9bbe447SVladimir Oltean provides helpers for other tagging implementations that might rely on 28f9bbe447SVladimir Oltean VLAN in one way or another. It is not a complete solution. 29f9bbe447SVladimir Oltean 30f9bbe447SVladimir Oltean Drivers which use these helpers should select this as dependency. 31f9bbe447SVladimir Oltean 3248fda74fSOleksij Rempelconfig NET_DSA_TAG_AR9331 3348fda74fSOleksij Rempel tristate "Tag driver for Atheros AR9331 SoC with built-in switch" 3448fda74fSOleksij Rempel help 3548fda74fSOleksij Rempel Say Y or M if you want to enable support for tagging frames for 3648fda74fSOleksij Rempel the Atheros AR9331 SoC with built-in switch. 3748fda74fSOleksij Rempel 380b9f9dfbSAndrew Lunnconfig NET_DSA_TAG_BRCM_COMMON 390b9f9dfbSAndrew Lunn tristate 400b9f9dfbSAndrew Lunn default n 410b9f9dfbSAndrew Lunn 425037d532SFlorian Fainelliconfig NET_DSA_TAG_BRCM 430b9f9dfbSAndrew Lunn tristate "Tag driver for Broadcom switches using in-frame headers" 440b9f9dfbSAndrew Lunn select NET_DSA_TAG_BRCM_COMMON 450b9f9dfbSAndrew Lunn help 460b9f9dfbSAndrew Lunn Say Y if you want to enable support for tagging frames for the 470b9f9dfbSAndrew Lunn Broadcom switches which place the tag after the MAC source address. 480b9f9dfbSAndrew Lunn 495037d532SFlorian Fainelli 50b74b70c4SFlorian Fainelliconfig NET_DSA_TAG_BRCM_PREPEND 510b9f9dfbSAndrew Lunn tristate "Tag driver for Broadcom switches using prepended headers" 520b9f9dfbSAndrew Lunn select NET_DSA_TAG_BRCM_COMMON 530b9f9dfbSAndrew Lunn help 540b9f9dfbSAndrew Lunn Say Y if you want to enable support for tagging frames for the 550b9f9dfbSAndrew Lunn Broadcom switches which places the tag before the Ethernet header 560b9f9dfbSAndrew Lunn (prepended). 5791da11f8SLennert Buytenhek 5879691192SHauke Mehrtensconfig NET_DSA_TAG_GSWIP 590b9f9dfbSAndrew Lunn tristate "Tag driver for Lantiq / Intel GSWIP switches" 600b9f9dfbSAndrew Lunn help 610b9f9dfbSAndrew Lunn Say Y or M if you want to enable support for tagging frames for the 620b9f9dfbSAndrew Lunn Lantiq / Intel GSWIP switches. 6379691192SHauke Mehrtens 640b9f9dfbSAndrew Lunnconfig NET_DSA_TAG_DSA 650b9f9dfbSAndrew Lunn tristate "Tag driver for Marvell switches using DSA headers" 660b9f9dfbSAndrew Lunn help 670b9f9dfbSAndrew Lunn Say Y or M if you want to enable support for tagging frames for the 680b9f9dfbSAndrew Lunn Marvell switches which use DSA headers. 698b8010fbSWoojung Huh 700b9f9dfbSAndrew Lunnconfig NET_DSA_TAG_EDSA 710b9f9dfbSAndrew Lunn tristate "Tag driver for Marvell switches using EtherType DSA headers" 720b9f9dfbSAndrew Lunn help 730b9f9dfbSAndrew Lunn Say Y or M if you want to enable support for tagging frames for the 740b9f9dfbSAndrew Lunn Marvell switches which use EtherType DSA headers. 75cafdc45cSJohn Crispin 765cd8985aSSean Wangconfig NET_DSA_TAG_MTK 770b9f9dfbSAndrew Lunn tristate "Tag driver for Mediatek switches" 780b9f9dfbSAndrew Lunn help 790b9f9dfbSAndrew Lunn Say Y or M if you want to enable support for tagging frames for 800b9f9dfbSAndrew Lunn Mediatek switches. 81e8fe177aSJuergen Beisert 820b9f9dfbSAndrew Lunnconfig NET_DSA_TAG_KSZ 83f4073e91SGeorge McCollister tristate "Tag driver for Microchip 8795/9477/9893 families of switches" 840b9f9dfbSAndrew Lunn help 850b9f9dfbSAndrew Lunn Say Y if you want to enable support for tagging frames for the 86f4073e91SGeorge McCollister Microchip 8795/9477/9893 families of switches. 870b9f9dfbSAndrew Lunn 888dce89aaSVladimir Olteanconfig NET_DSA_TAG_OCELOT 898dce89aaSVladimir Oltean tristate "Tag driver for Ocelot family of switches" 908dce89aaSVladimir Oltean select PACKING 918dce89aaSVladimir Oltean help 928dce89aaSVladimir Oltean Say Y or M if you want to enable support for tagging frames for the 938dce89aaSVladimir Oltean Ocelot switches (VSC7511, VSC7512, VSC7513, VSC7514, VSC9959). 948dce89aaSVladimir Oltean 95eb7b7211SAndrew Lunnconfig NET_DSA_TAG_QCA 960b9f9dfbSAndrew Lunn tristate "Tag driver for Qualcomm Atheros QCA8K switches" 970b9f9dfbSAndrew Lunn help 980b9f9dfbSAndrew Lunn Say Y or M if you want to enable support for tagging frames for 990b9f9dfbSAndrew Lunn the Qualcomm Atheros QCA8K switches. 1000b9f9dfbSAndrew Lunn 1010b9f9dfbSAndrew Lunnconfig NET_DSA_TAG_LAN9303 1020b9f9dfbSAndrew Lunn tristate "Tag driver for SMSC/Microchip LAN9303 family of switches" 1030b9f9dfbSAndrew Lunn help 1040b9f9dfbSAndrew Lunn Say Y or M if you want to enable support for tagging frames for the 1050b9f9dfbSAndrew Lunn SMSC/Microchip LAN9303 family of switches. 1060b9f9dfbSAndrew Lunn 107227d07a0SVladimir Olteanconfig NET_DSA_TAG_SJA1105 108227d07a0SVladimir Oltean tristate "Tag driver for NXP SJA1105 switches" 109227d07a0SVladimir Oltean select NET_DSA_TAG_8021Q 1106358f38cSVladimir Oltean select PACKING 111227d07a0SVladimir Oltean help 112227d07a0SVladimir Oltean Say Y or M if you want to enable support for tagging frames with the 113227d07a0SVladimir Oltean NXP SJA1105 switch family. Both the native tagging protocol (which 114227d07a0SVladimir Oltean is only for link-local traffic) as well as non-native tagging (based 115227d07a0SVladimir Oltean on a custom 802.1Q VLAN header) are available. 116227d07a0SVladimir Oltean 1170b9f9dfbSAndrew Lunnconfig NET_DSA_TAG_TRAILER 1180b9f9dfbSAndrew Lunn tristate "Tag driver for switches using a trailer tag" 1190b9f9dfbSAndrew Lunn help 1200b9f9dfbSAndrew Lunn Say Y or M if you want to enable support for tagging frames at 1210b9f9dfbSAndrew Lunn with a trailed. e.g. Marvell 88E6060. 122e8fe177aSJuergen Beisert 123b3422a31SBen Hutchingsendif 124