# SPDX-License-Identifier: GPL-2.0
#
# Phy drivers for Renesas platforms
#
# NOTE: Please sorted config names alphabetically.
config PHY_R8A779F0_ETHERNET_SERDES
	tristate "Renesas R-Car S4-8 Ethernet SERDES driver"
	depends on ARCH_RENESAS || COMPILE_TEST
	select GENERIC_PHY
	help
	  Support for Ethernet SERDES found on Renesas R-Car S4-8 SoCs.

config PHY_RCAR_GEN2
	tristate "Renesas R-Car generation 2 USB PHY driver"
	depends on ARCH_RENESAS
	depends on GENERIC_PHY
	help
	  Support for USB PHY found on Renesas R-Car generation 2 SoCs.

config PHY_RCAR_GEN3_PCIE
	tristate "Renesas R-Car generation 3 PCIe PHY driver"
	depends on ARCH_RENESAS
	select GENERIC_PHY
	help
	  Support for the PCIe PHY found on Renesas R-Car generation 3 SoCs.

config PHY_RCAR_GEN3_USB2
	tristate "Renesas R-Car generation 3 USB 2.0 PHY driver"
	depends on ARCH_RENESAS
	depends on EXTCON || !EXTCON # if EXTCON=m, this cannot be built-in
	depends on USB_SUPPORT
	select GENERIC_PHY
	select USB_COMMON
	help
	  Support for USB 2.0 PHY found on Renesas R-Car generation 3 SoCs.

config PHY_RCAR_GEN3_USB3
	tristate "Renesas R-Car generation 3 USB 3.0 PHY driver"
	depends on ARCH_RENESAS || COMPILE_TEST
	select GENERIC_PHY
	help
	  Support for USB 3.0 PHY found on Renesas R-Car generation 3 SoCs.
