1# SPDX-License-Identifier: GPL-2.0-only
2menuconfig NET_DSA_MICROCHIP_KSZ_COMMON
3	tristate "Microchip KSZ8XXX/KSZ9XXX/LAN937X series switch support"
4	depends on NET_DSA
5	select NET_DSA_TAG_KSZ
6	select NET_DSA_TAG_NONE
7	select NET_IEEE8021Q_HELPERS
8	select DCB
9	select PCS_XPCS
10	help
11	  This driver adds support for Microchip KSZ8, KSZ9 and
12	  LAN937X series switch chips, being KSZ8863/8873,
13	  KSZ8895/8864, KSZ8794/8795/8765,
14	  KSZ9477/9897/9896/9567/8567, KSZ9893/9563/8563 and
15	  LAN9370/9371/9372/9373/9374.
16
17config NET_DSA_MICROCHIP_KSZ9477_I2C
18	tristate "KSZ series I2C connected switch driver"
19	depends on NET_DSA_MICROCHIP_KSZ_COMMON && I2C
20	select REGMAP_I2C
21	help
22	  Select to enable support for registering switches configured through I2C.
23
24config NET_DSA_MICROCHIP_KSZ_SPI
25	tristate "KSZ series SPI connected switch driver"
26	depends on NET_DSA_MICROCHIP_KSZ_COMMON && SPI
27	select REGMAP_SPI
28	help
29	  Select to enable support for registering switches configured through SPI.
30
31config NET_DSA_MICROCHIP_KSZ_PTP
32	bool "Support for the PTP clock on the KSZ9563/LAN937x Ethernet Switch"
33	depends on NET_DSA_MICROCHIP_KSZ_COMMON && PTP_1588_CLOCK
34	depends on NET_DSA_MICROCHIP_KSZ_COMMON=m || PTP_1588_CLOCK=y
35	help
36	  Select to enable support for timestamping & PTP clock manipulation in
37	  KSZ8563/KSZ9563/LAN937x series of switches. KSZ9563/KSZ8563 supports
38	  only one step timestamping. LAN937x switch supports both one step and
39	  two step timestamping.
40
41config NET_DSA_MICROCHIP_KSZ8863_SMI
42	tristate "KSZ series SMI connected switch driver"
43	depends on NET_DSA_MICROCHIP_KSZ_COMMON
44	select MDIO_BITBANG
45	help
46	  Select to enable support for registering switches configured through
47	  Microchip SMI. It supports the KSZ8863 and KSZ8873 switch.
48