1# Distributed Switch Architecture [DSA] configuration options
2
3# Copyright (c) 2020 DENX Software Engineering GmbH
4#               Lukasz Majewski <lukma@denx.de>
5# SPDX-License-Identifier: Apache-2.0
6
7config ETH_DSA_SUPPORT
8	bool
9	help
10	  Set by an ethernet driver that supports DSA.
11
12menuconfig NET_DSA
13	bool "Distributed Switch Architecture support"
14	depends on ETH_DSA_SUPPORT
15	help
16	  Enable Distributed Switch Architecture support. For now it
17	  only supports Kinetics and STM32 ENET drivers.
18
19if NET_DSA
20
21config DSA_KSZ8XXX
22	bool
23
24config DSA_KSZ8794
25	bool "Support for KSZ8794"
26	default y
27	depends on DT_HAS_MICROCHIP_KSZ8794_ENABLED
28	select DSA_KSZ8XXX
29	select SPI if $(dt_compat_on_bus,$(DT_COMPAT_MICROCHIP_KSZ8794),spi)
30	help
31	  Add support for KSZ8794 DSA device driver.
32
33config DSA_KSZ8863
34	bool "Support for KSZ8863"
35	default y
36	depends on DT_HAS_MICROCHIP_KSZ8863_ENABLED
37	select DSA_KSZ8XXX
38	select SPI if $(dt_compat_on_bus,$(DT_COMPAT_MICROCHIP_KSZ8863),spi)
39	help
40	  Add support for KSZ8863 DSA device driver.
41
42config DSA_KSZ8463
43	bool "Support for KSZ8463"
44	default y
45	depends on DT_HAS_MICROCHIP_KSZ8463_ENABLED
46	select DSA_KSZ8XXX
47	select SPI if $(dt_compat_on_bus,$(DT_COMPAT_MICROCHIP_KSZ8463),spi)
48	help
49	  Add support for KSZ8463 DSA device driver.
50
51config DSA_KSZ_TAIL_TAGGING
52	bool "Support for tail tagging"
53	depends on DSA_KSZ8794 || DSA_KSZ8863 || DSA_KSZ8463
54	help
55	  Add support for tail tagging on DSA device.
56
57config DSA_TAG_SIZE
58	int "DSA tag size in bytes"
59	default 1 if DSA_KSZ8794 || DSA_KSZ8863 || DSA_KSZ8463
60	default 0
61	depends on DSA_KSZ_TAIL_TAGGING
62	help
63	  Set the DSA tag length in bytes.
64
65config DSA_KSZ_PORT_ISOLATING
66	bool "Support for ports isolating"
67	depends on DSA_KSZ8794 || DSA_KSZ8863 || DSA_KSZ8463
68	help
69	  Add support for traffic isolation on DSA slave ports
70
71config DSA_SPI
72	bool "Support for PHY SPI interface"
73	depends on SPI && (DSA_KSZ8794 || DSA_KSZ8863 || DSA_KSZ8463)
74	help
75	  Use SPI bus to communicate with PHY
76
77module = NET_DSA
78module-dep = NET_LOG
79module-str = Log level for DSA
80module-help = Enables core DSA code to output debug messages.
81source "subsys/net/Kconfig.template.log_config.net"
82
83endif # NET_DSA
84