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 320b9f9dfbSAndrew Lunnconfig NET_DSA_TAG_BRCM_COMMON 330b9f9dfbSAndrew Lunn tristate 340b9f9dfbSAndrew Lunn default n 350b9f9dfbSAndrew Lunn 365037d532SFlorian Fainelliconfig NET_DSA_TAG_BRCM 370b9f9dfbSAndrew Lunn tristate "Tag driver for Broadcom switches using in-frame headers" 380b9f9dfbSAndrew Lunn select NET_DSA_TAG_BRCM_COMMON 390b9f9dfbSAndrew Lunn help 400b9f9dfbSAndrew Lunn Say Y if you want to enable support for tagging frames for the 410b9f9dfbSAndrew Lunn Broadcom switches which place the tag after the MAC source address. 420b9f9dfbSAndrew Lunn 435037d532SFlorian Fainelli 44b74b70c4SFlorian Fainelliconfig NET_DSA_TAG_BRCM_PREPEND 450b9f9dfbSAndrew Lunn tristate "Tag driver for Broadcom switches using prepended headers" 460b9f9dfbSAndrew Lunn select NET_DSA_TAG_BRCM_COMMON 470b9f9dfbSAndrew Lunn help 480b9f9dfbSAndrew Lunn Say Y if you want to enable support for tagging frames for the 490b9f9dfbSAndrew Lunn Broadcom switches which places the tag before the Ethernet header 500b9f9dfbSAndrew Lunn (prepended). 5191da11f8SLennert Buytenhek 5279691192SHauke Mehrtensconfig NET_DSA_TAG_GSWIP 530b9f9dfbSAndrew Lunn tristate "Tag driver for Lantiq / Intel GSWIP switches" 540b9f9dfbSAndrew Lunn help 550b9f9dfbSAndrew Lunn Say Y or M if you want to enable support for tagging frames for the 560b9f9dfbSAndrew Lunn Lantiq / Intel GSWIP switches. 5779691192SHauke Mehrtens 580b9f9dfbSAndrew Lunnconfig NET_DSA_TAG_DSA 590b9f9dfbSAndrew Lunn tristate "Tag driver for Marvell switches using DSA headers" 600b9f9dfbSAndrew Lunn help 610b9f9dfbSAndrew Lunn Say Y or M if you want to enable support for tagging frames for the 620b9f9dfbSAndrew Lunn Marvell switches which use DSA headers. 638b8010fbSWoojung Huh 640b9f9dfbSAndrew Lunnconfig NET_DSA_TAG_EDSA 650b9f9dfbSAndrew Lunn tristate "Tag driver for Marvell switches using EtherType 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 EtherType DSA headers. 69cafdc45cSJohn Crispin 705cd8985aSSean Wangconfig NET_DSA_TAG_MTK 710b9f9dfbSAndrew Lunn tristate "Tag driver for Mediatek switches" 720b9f9dfbSAndrew Lunn help 730b9f9dfbSAndrew Lunn Say Y or M if you want to enable support for tagging frames for 740b9f9dfbSAndrew Lunn Mediatek switches. 75e8fe177aSJuergen Beisert 760b9f9dfbSAndrew Lunnconfig NET_DSA_TAG_KSZ 77f4073e91SGeorge McCollister tristate "Tag driver for Microchip 8795/9477/9893 families of switches" 780b9f9dfbSAndrew Lunn help 790b9f9dfbSAndrew Lunn Say Y if you want to enable support for tagging frames for the 80f4073e91SGeorge McCollister Microchip 8795/9477/9893 families of switches. 810b9f9dfbSAndrew Lunn 82eb7b7211SAndrew Lunnconfig NET_DSA_TAG_QCA 830b9f9dfbSAndrew Lunn tristate "Tag driver for Qualcomm Atheros QCA8K switches" 840b9f9dfbSAndrew Lunn help 850b9f9dfbSAndrew Lunn Say Y or M if you want to enable support for tagging frames for 860b9f9dfbSAndrew Lunn the Qualcomm Atheros QCA8K switches. 870b9f9dfbSAndrew Lunn 880b9f9dfbSAndrew Lunnconfig NET_DSA_TAG_LAN9303 890b9f9dfbSAndrew Lunn tristate "Tag driver for SMSC/Microchip LAN9303 family of switches" 900b9f9dfbSAndrew Lunn help 910b9f9dfbSAndrew Lunn Say Y or M if you want to enable support for tagging frames for the 920b9f9dfbSAndrew Lunn SMSC/Microchip LAN9303 family of switches. 930b9f9dfbSAndrew Lunn 94227d07a0SVladimir Olteanconfig NET_DSA_TAG_SJA1105 95227d07a0SVladimir Oltean tristate "Tag driver for NXP SJA1105 switches" 96227d07a0SVladimir Oltean select NET_DSA_TAG_8021Q 976358f38cSVladimir Oltean select PACKING 98227d07a0SVladimir Oltean help 99227d07a0SVladimir Oltean Say Y or M if you want to enable support for tagging frames with the 100227d07a0SVladimir Oltean NXP SJA1105 switch family. Both the native tagging protocol (which 101227d07a0SVladimir Oltean is only for link-local traffic) as well as non-native tagging (based 102227d07a0SVladimir Oltean on a custom 802.1Q VLAN header) are available. 103227d07a0SVladimir Oltean 1040b9f9dfbSAndrew Lunnconfig NET_DSA_TAG_TRAILER 1050b9f9dfbSAndrew Lunn tristate "Tag driver for switches using a trailer tag" 1060b9f9dfbSAndrew Lunn help 1070b9f9dfbSAndrew Lunn Say Y or M if you want to enable support for tagging frames at 1080b9f9dfbSAndrew Lunn with a trailed. e.g. Marvell 88E6060. 109e8fe177aSJuergen Beisert 110b3422a31SBen Hutchingsendif 111