dsa: simplify Kconfig symbols and dependencies
[platform/kernel/linux-starfive.git] / drivers / net / dsa / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 menu "Distributed Switch Architecture drivers"
3         depends on NET_DSA
4
5 source "drivers/net/dsa/b53/Kconfig"
6
7 config NET_DSA_BCM_SF2
8         tristate "Broadcom Starfighter 2 Ethernet switch support"
9         depends on HAS_IOMEM
10         select NET_DSA_TAG_BRCM
11         select FIXED_PHY
12         select BCM7XXX_PHY
13         select MDIO_BCM_UNIMAC
14         select B53
15         help
16           This enables support for the Broadcom Starfighter 2 Ethernet
17           switch chips.
18
19 config NET_DSA_LOOP
20         tristate "DSA mock-up Ethernet switch chip support"
21         select FIXED_PHY
22         help
23           This enables support for a fake mock-up switch chip which
24           exercises the DSA APIs.
25
26 source "drivers/net/dsa/hirschmann/Kconfig"
27
28 config NET_DSA_LANTIQ_GSWIP
29         tristate "Lantiq / Intel GSWIP"
30         depends on HAS_IOMEM
31         select NET_DSA_TAG_GSWIP
32         help
33           This enables support for the Lantiq / Intel GSWIP 2.1 found in
34           the xrx200 / VR9 SoC.
35
36 config NET_DSA_MT7530
37         tristate "MediaTek MT753x and MT7621 Ethernet switch support"
38         select NET_DSA_TAG_MTK
39         help
40           This enables support for the MediaTek MT7530, MT7531, and MT7621
41           Ethernet switch chips.
42
43 config NET_DSA_MV88E6060
44         tristate "Marvell 88E6060 ethernet switch chip support"
45         select NET_DSA_TAG_TRAILER
46         help
47           This enables support for the Marvell 88E6060 ethernet switch
48           chip.
49
50 source "drivers/net/dsa/microchip/Kconfig"
51
52 source "drivers/net/dsa/mv88e6xxx/Kconfig"
53
54 source "drivers/net/dsa/ocelot/Kconfig"
55
56 source "drivers/net/dsa/qca/Kconfig"
57
58 source "drivers/net/dsa/sja1105/Kconfig"
59
60 source "drivers/net/dsa/xrs700x/Kconfig"
61
62 config NET_DSA_QCA8K
63         tristate "Qualcomm Atheros QCA8K Ethernet switch family support"
64         select NET_DSA_TAG_QCA
65         select REGMAP
66         help
67           This enables support for the Qualcomm Atheros QCA8K Ethernet
68           switch chips.
69
70 config NET_DSA_REALTEK_SMI
71         tristate "Realtek SMI Ethernet switch family support"
72         select NET_DSA_TAG_RTL4_A
73         select FIXED_PHY
74         select IRQ_DOMAIN
75         select REALTEK_PHY
76         select REGMAP
77         help
78           This enables support for the Realtek SMI-based switch
79           chips, currently only RTL8366RB.
80
81 config NET_DSA_SMSC_LAN9303
82         tristate
83         select NET_DSA_TAG_LAN9303
84         select REGMAP
85         help
86           This enables support for the SMSC/Microchip LAN9303 3 port ethernet
87           switch chips.
88
89 config NET_DSA_SMSC_LAN9303_I2C
90         tristate "SMSC/Microchip LAN9303 3-ports 10/100 ethernet switch in I2C managed mode"
91         depends on I2C
92         select NET_DSA_SMSC_LAN9303
93         select REGMAP_I2C
94         help
95           Enable access functions if the SMSC/Microchip LAN9303 is configured
96           for I2C managed mode.
97
98 config NET_DSA_SMSC_LAN9303_MDIO
99         tristate "SMSC/Microchip LAN9303 3-ports 10/100 ethernet switch in MDIO managed mode"
100         select NET_DSA_SMSC_LAN9303
101         help
102           Enable access functions if the SMSC/Microchip LAN9303 is configured
103           for MDIO managed mode.
104
105 config NET_DSA_VITESSE_VSC73XX
106         tristate
107         select FIXED_PHY
108         select VITESSE_PHY
109         select GPIOLIB
110         help
111           This enables support for the Vitesse VSC7385, VSC7388,
112           VSC7395 and VSC7398 SparX integrated ethernet switches.
113
114 config NET_DSA_VITESSE_VSC73XX_SPI
115         tristate "Vitesse VSC7385/7388/7395/7398 SPI mode support"
116         depends on SPI
117         select NET_DSA_VITESSE_VSC73XX
118         help
119           This enables support for the Vitesse VSC7385, VSC7388, VSC7395
120           and VSC7398 SparX integrated ethernet switches in SPI managed mode.
121
122 config NET_DSA_VITESSE_VSC73XX_PLATFORM
123         tristate "Vitesse VSC7385/7388/7395/7398 Platform mode support"
124         depends on HAS_IOMEM
125         select NET_DSA_VITESSE_VSC73XX
126         help
127           This enables support for the Vitesse VSC7385, VSC7388, VSC7395
128           and VSC7398 SparX integrated ethernet switches, connected over
129           a CPU-attached address bus and work in memory-mapped I/O mode.
130 endmenu