Kconfig 5.5 KB
Newer Older
1
# SPDX-License-Identifier: GPL-2.0-only
2

3
menuconfig NET_DSA
4
	tristate "Distributed Switch Architecture"
A
Andrew Lunn 已提交
5
	depends on BRIDGE || BRIDGE=n
6
	depends on HSR || HSR=n
7
	depends on INET && NETDEVICES
8
	select GRO_CELLS
V
Vivien Didelot 已提交
9
	select NET_SWITCHDEV
10
	select PHYLINK
11
	select NET_DEVLINK
12
	imply NET_SELFTESTS
13
	help
14 15
	  Say Y if you want to enable support for the hardware switches supported
	  by the Distributed Switch Architecture.
16

17
if NET_DSA
18

19 20
# Drivers must select the appropriate tagging format(s)

21 22 23 24 25 26
config NET_DSA_TAG_AR9331
	tristate "Tag driver for Atheros AR9331 SoC with built-in switch"
	help
	  Say Y or M if you want to enable support for tagging frames for
	  the Atheros AR9331 SoC with built-in switch.

27 28 29 30
config NET_DSA_TAG_BRCM_COMMON
	tristate
	default n

31
config NET_DSA_TAG_BRCM
32 33 34 35 36 37
	tristate "Tag driver for Broadcom switches using in-frame headers"
	select NET_DSA_TAG_BRCM_COMMON
	help
	  Say Y if you want to enable support for tagging frames for the
	  Broadcom switches which place the tag after the MAC source address.

38 39 40 41 42 43 44
config NET_DSA_TAG_BRCM_LEGACY
	tristate "Tag driver for Broadcom legacy switches using in-frame headers"
	select NET_DSA_TAG_BRCM_COMMON
	help
	  Say Y if you want to enable support for tagging frames for the
	  Broadcom legacy switches which place the tag after the MAC source
	  address.
45

46
config NET_DSA_TAG_BRCM_PREPEND
47 48 49 50 51 52 53
	tristate "Tag driver for Broadcom switches using prepended headers"
	select NET_DSA_TAG_BRCM_COMMON
	help
	  Say Y if you want to enable support for tagging frames for the
	  Broadcom switches which places the tag before the Ethernet header
	  (prepended).

54 55 56 57 58 59
config NET_DSA_TAG_HELLCREEK
	tristate "Tag driver for Hirschmann Hellcreek TSN switches"
	help
	  Say Y or M if you want to enable support for tagging frames
	  for the Hirschmann Hellcreek TSN switches.

60 61 62 63 64
config NET_DSA_TAG_GSWIP
	tristate "Tag driver for Lantiq / Intel GSWIP switches"
	help
	  Say Y or M if you want to enable support for tagging frames for the
	  Lantiq / Intel GSWIP switches.
65

66 67 68
config NET_DSA_TAG_DSA_COMMON
	tristate

69
config NET_DSA_TAG_DSA
70
	tristate "Tag driver for Marvell switches using DSA headers"
71
	select NET_DSA_TAG_DSA_COMMON
72 73 74
	help
	  Say Y or M if you want to enable support for tagging frames for the
	  Marvell switches which use DSA headers.
75

76
config NET_DSA_TAG_EDSA
77
	tristate "Tag driver for Marvell switches using EtherType DSA headers"
78
	select NET_DSA_TAG_DSA_COMMON
79 80 81
	help
	  Say Y or M if you want to enable support for tagging frames for the
	  Marvell switches which use EtherType DSA headers.
82

83 84 85 86 87 88
config NET_DSA_TAG_MTK
	tristate "Tag driver for Mediatek switches"
	help
	  Say Y or M if you want to enable support for tagging frames for
	  Mediatek switches.

89
config NET_DSA_TAG_KSZ
90
	tristate "Tag driver for Microchip 8795/9477/9893 families of switches"
91 92
	help
	  Say Y if you want to enable support for tagging frames for the
93
	  Microchip 8795/9477/9893 families of switches.
94

95 96 97 98 99 100 101
config NET_DSA_TAG_RTL4_A
	tristate "Tag driver for Realtek 4 byte protocol A tags"
	help
	  Say Y or M if you want to enable support for tagging frames for the
	  Realtek switches with 4 byte protocol A tags, sich as found in
	  the Realtek RTL8366RB.

102
config NET_DSA_TAG_OCELOT
103
	tristate "Tag driver for Ocelot family of switches, using NPI port"
104 105
	depends on MSCC_OCELOT_SWITCH_LIB || \
		   (MSCC_OCELOT_SWITCH_LIB=n && COMPILE_TEST)
106 107
	select PACKING
	help
108 109 110 111 112 113 114 115 116
	  Say Y or M if you want to enable NPI tagging for the Ocelot switches
	  (VSC7511, VSC7512, VSC7513, VSC7514, VSC9953, VSC9959). In this mode,
	  the frames over the Ethernet CPU port are prepended with a
	  hardware-defined injection/extraction frame header.  Flow control
	  (PAUSE frames) over the CPU port is not supported when operating in
	  this mode.

config NET_DSA_TAG_OCELOT_8021Q
	tristate "Tag driver for Ocelot family of switches, using VLAN"
117 118
	depends on MSCC_OCELOT_SWITCH_LIB || \
	          (MSCC_OCELOT_SWITCH_LIB=n && COMPILE_TEST)
119 120 121 122 123 124 125
	help
	  Say Y or M if you want to enable support for tagging frames with a
	  custom VLAN-based header. Frames that require timestamping, such as
	  PTP, are not delivered over Ethernet but over register-based MMIO.
	  Flow control over the CPU port is functional in this mode. When using
	  this mode, less TCAM resources (VCAP IS1, IS2, ES0) are available for
	  use with tc-flower.
126

127 128 129 130 131
config NET_DSA_TAG_QCA
	tristate "Tag driver for Qualcomm Atheros QCA8K switches"
	help
	  Say Y or M if you want to enable support for tagging frames for
	  the Qualcomm Atheros QCA8K switches.
132

133 134 135 136 137
config NET_DSA_TAG_LAN9303
	tristate "Tag driver for SMSC/Microchip LAN9303 family of switches"
	help
	  Say Y or M if you want to enable support for tagging frames for the
	  SMSC/Microchip LAN9303 family of switches.
138

139 140
config NET_DSA_TAG_SJA1105
	tristate "Tag driver for NXP SJA1105 switches"
141
	depends on (NET_DSA_SJA1105 && NET_DSA_SJA1105_PTP) || !NET_DSA_SJA1105 || !NET_DSA_SJA1105_PTP
142
	select PACKING
143 144 145 146 147 148
	help
	  Say Y or M if you want to enable support for tagging frames with the
	  NXP SJA1105 switch family. Both the native tagging protocol (which
	  is only for link-local traffic) as well as non-native tagging (based
	  on a custom 802.1Q VLAN header) are available.

149
config NET_DSA_TAG_TRAILER
150 151 152 153
	tristate "Tag driver for switches using a trailer tag"
	help
	  Say Y or M if you want to enable support for tagging frames at
	  with a trailed. e.g. Marvell 88E6060.
154

155 156 157 158 159 160
config NET_DSA_TAG_XRS700X
	tristate "Tag driver for XRS700x switches"
	help
	  Say Y or M if you want to enable support for tagging frames for
	  Arrow SpeedChips XRS700x switches that use a single byte tag trailer.

161
endif