xref: /linux/drivers/phy/qualcomm/Kconfig (revision 16e6a1a3cb3fa5fa11cd76a9d71235d927923329)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
20b56e9a7SVivek Gautam#
3cd3bf368SAlban Bedel# Phy drivers for Qualcomm and Atheros platforms
40b56e9a7SVivek Gautam#
5cd3bf368SAlban Bedelconfig PHY_ATH79_USB
6cd3bf368SAlban Bedel	tristate "Atheros AR71XX/9XXX USB PHY driver"
7cd3bf368SAlban Bedel	depends on OF && (ATH79 || COMPILE_TEST)
8cd3bf368SAlban Bedel	default y if USB_EHCI_HCD_PLATFORM || USB_OHCI_HCD_PLATFORM
9cd3bf368SAlban Bedel	select RESET_CONTROLLER
10cd3bf368SAlban Bedel	select GENERIC_PHY
11cd3bf368SAlban Bedel	help
12cd3bf368SAlban Bedel	  Enable this to support the USB PHY on Atheros AR71XX/9XXX SoCs.
13cd3bf368SAlban Bedel
140b56e9a7SVivek Gautamconfig PHY_QCOM_APQ8064_SATA
150b56e9a7SVivek Gautam	tristate "Qualcomm APQ8064 SATA SerDes/PHY driver"
160b56e9a7SVivek Gautam	depends on ARCH_QCOM
170b56e9a7SVivek Gautam	depends on HAS_IOMEM
180b56e9a7SVivek Gautam	depends on OF
190b56e9a7SVivek Gautam	select GENERIC_PHY
200b56e9a7SVivek Gautam
21f199223cSBjorn Anderssonconfig PHY_QCOM_EDP
22f199223cSBjorn Andersson	tristate "Qualcomm eDP PHY driver"
23f199223cSBjorn Andersson	depends on ARCH_QCOM || COMPILE_TEST
24f199223cSBjorn Andersson	depends on OF
25f199223cSBjorn Andersson	depends on COMMON_CLK
26f199223cSBjorn Andersson	select GENERIC_PHY
27f199223cSBjorn Andersson	help
28f199223cSBjorn Andersson	  Enable this driver to support the Qualcomm eDP PHY found in various
29f199223cSBjorn Andersson	  Qualcomm chipsets.
30f199223cSBjorn Andersson
313c9d8f6cSRobert Markoconfig PHY_QCOM_IPQ4019_USB
323c9d8f6cSRobert Marko	tristate "Qualcomm IPQ4019 USB PHY driver"
333c9d8f6cSRobert Marko	depends on OF && (ARCH_QCOM || COMPILE_TEST)
343c9d8f6cSRobert Marko	select GENERIC_PHY
353c9d8f6cSRobert Marko	help
363c9d8f6cSRobert Marko	  Support for the USB PHY-s on Qualcomm IPQ40xx SoC-s.
373c9d8f6cSRobert Marko
380b56e9a7SVivek Gautamconfig PHY_QCOM_IPQ806X_SATA
390b56e9a7SVivek Gautam	tristate "Qualcomm IPQ806x SATA SerDes/PHY driver"
400b56e9a7SVivek Gautam	depends on ARCH_QCOM
410b56e9a7SVivek Gautam	depends on HAS_IOMEM
420b56e9a7SVivek Gautam	depends on OF
430b56e9a7SVivek Gautam	select GENERIC_PHY
440b56e9a7SVivek Gautam
456ef72bc0SBjorn Anderssonconfig PHY_QCOM_PCIE2
466ef72bc0SBjorn Andersson	tristate "Qualcomm PCIe Gen2 PHY Driver"
476ef72bc0SBjorn Andersson	depends on OF && COMMON_CLK && (ARCH_QCOM || COMPILE_TEST)
486ef72bc0SBjorn Andersson	select GENERIC_PHY
496ef72bc0SBjorn Andersson	help
506ef72bc0SBjorn Andersson	  Enable this to support the Qualcomm PCIe PHY, used with the Synopsys
516ef72bc0SBjorn Andersson	  based PCIe controller.
526ef72bc0SBjorn Andersson
53d1abd695SStephen Boydmenuconfig PHY_QCOM_QMP
54d1abd695SStephen Boyd	tristate "Qualcomm QMP PHY Drivers"
550b56e9a7SVivek Gautam	depends on OF && COMMON_CLK && (ARCH_QCOM || COMPILE_TEST)
56d1abd695SStephen Boyd
57d1abd695SStephen Boydif PHY_QCOM_QMP
58d1abd695SStephen Boyd
59d1abd695SStephen Boydconfig PHY_QCOM_QMP_COMBO
60d1abd695SStephen Boyd	tristate "Qualcomm QMP Combo PHY Driver"
61d1abd695SStephen Boyd	default PHY_QCOM_QMP
622851117fSBjorn Andersson	depends on TYPEC || TYPEC=n
631904c3f5SBjorn Andersson	depends on DRM || DRM=n
640b56e9a7SVivek Gautam	select GENERIC_PHY
656c37a02bSJohan Hovold	select MFD_SYSCON
6635921910SDmitry Baryshkov	select DRM_AUX_BRIDGE if DRM_BRIDGE
670b56e9a7SVivek Gautam	help
68d1abd695SStephen Boyd	  Enable this to support the QMP Combo PHY transceiver that is used
69d1abd695SStephen Boyd	  with USB3 and DisplayPort controllers on Qualcomm chips.
70d1abd695SStephen Boyd
71d1abd695SStephen Boydconfig PHY_QCOM_QMP_PCIE
72d1abd695SStephen Boyd	tristate "Qualcomm QMP PCIe PHY Driver"
73d1abd695SStephen Boyd	depends on PCI || COMPILE_TEST
74d1abd695SStephen Boyd	select GENERIC_PHY
75d1abd695SStephen Boyd	default PHY_QCOM_QMP
76d1abd695SStephen Boyd	help
77d1abd695SStephen Boyd	  Enable this to support the QMP PCIe PHY transceiver that is used
78d1abd695SStephen Boyd	  with PCIe controllers on Qualcomm chips.
79d1abd695SStephen Boyd
80*1781be3cSQiang Yuconfig PHY_QCOM_QMP_PCIE_MULTIPHY
81*1781be3cSQiang Yu	tristate "Qualcomm QMP PCIe Multi PHY Driver"
82*1781be3cSQiang Yu	depends on PCI || COMPILE_TEST
83*1781be3cSQiang Yu	select GENERIC_PHY
84*1781be3cSQiang Yu	help
85*1781be3cSQiang Yu	  Enable this to support the QMP PCIe PHY transceiver that is used
86*1781be3cSQiang Yu	  with PCIe controllers on Qualcomm chips. This PHY is a single
87*1781be3cSQiang Yu	  multi-lane QMP block that can be configured either as one wide
88*1781be3cSQiang Yu	  link or as multiple narrower independent links (bifurcation).
89*1781be3cSQiang Yu
90d1abd695SStephen Boydconfig PHY_QCOM_QMP_PCIE_8996
91d1abd695SStephen Boyd	tristate "Qualcomm QMP PCIe 8996 PHY Driver"
92d1abd695SStephen Boyd	depends on PCI || COMPILE_TEST
93d1abd695SStephen Boyd	select GENERIC_PHY
94d1abd695SStephen Boyd	default PHY_QCOM_QMP
95d1abd695SStephen Boyd	help
96d1abd695SStephen Boyd	  Enable this to support the QMP PCIe PHY transceiver that is used
97d1abd695SStephen Boyd	  with PCIe controllers on Qualcomm msm8996 chips.
98d1abd695SStephen Boyd
99d1abd695SStephen Boydconfig PHY_QCOM_QMP_UFS
100d1abd695SStephen Boyd	tristate "Qualcomm QMP UFS PHY Driver"
101d1abd695SStephen Boyd	select GENERIC_PHY
102d1abd695SStephen Boyd	default PHY_QCOM_QMP
103d1abd695SStephen Boyd	help
104d1abd695SStephen Boyd	  Enable this to support the QMP UFS PHY transceiver that is used
105d1abd695SStephen Boyd	  with UFS controllers on Qualcomm chips.
106d1abd695SStephen Boyd
107d1abd695SStephen Boydconfig PHY_QCOM_QMP_USB
108d1abd695SStephen Boyd	tristate "Qualcomm QMP USB PHY Driver"
109d1abd695SStephen Boyd	select GENERIC_PHY
110d1abd695SStephen Boyd	default PHY_QCOM_QMP
111d1abd695SStephen Boyd	help
112d1abd695SStephen Boyd	  Enable this to support the QMP USB PHY transceiver that is used
113d1abd695SStephen Boyd	  with USB3 controllers on Qualcomm chips.
114d1abd695SStephen Boyd
115e464a318SDmitry Baryshkovconfig PHY_QCOM_QMP_USB_LEGACY
116e464a318SDmitry Baryshkov	tristate "Qualcomm QMP legacy USB PHY Driver"
117e464a318SDmitry Baryshkov	select GENERIC_PHY
118e464a318SDmitry Baryshkov	default n
119e464a318SDmitry Baryshkov	help
120e464a318SDmitry Baryshkov	  Enable this legacy driver to support the QMP USB+DisplayPort Combo
121e464a318SDmitry Baryshkov	  PHY transceivers working only in USB3 mode on Qualcomm chips. This
122e464a318SDmitry Baryshkov	  driver exists only for compatibility with older device trees,
123e464a318SDmitry Baryshkov	  existing users have been migrated to PHY_QCOM_QMP_COMBO driver.
124e464a318SDmitry Baryshkov
125d1abd695SStephen Boydendif # PHY_QCOM_QMP
1260b56e9a7SVivek Gautam
1270b56e9a7SVivek Gautamconfig PHY_QCOM_QUSB2
1280b56e9a7SVivek Gautam	tristate "Qualcomm QUSB2 PHY Driver"
1290b56e9a7SVivek Gautam	depends on OF && (ARCH_QCOM || COMPILE_TEST)
1300b56e9a7SVivek Gautam	depends on NVMEM || !NVMEM
1310b56e9a7SVivek Gautam	select GENERIC_PHY
1320b56e9a7SVivek Gautam	help
1330b56e9a7SVivek Gautam	  Enable this to support the HighSpeed QUSB2 PHY transceiver for USB
1340b56e9a7SVivek Gautam	  controllers on Qualcomm chips. This driver supports the high-speed
1350b56e9a7SVivek Gautam	  PHY which is usually paired with either the ChipIdea or Synopsys DWC3
1360b56e9a7SVivek Gautam	  USB IPs on MSM SOCs.
1370b56e9a7SVivek Gautam
13856d77c9aSAbel Vesaconfig PHY_QCOM_EUSB2_REPEATER
139b0d8d731SWesley Cheng	tristate "Qualcomm PMIC eUSB2 Repeater Driver"
14056d77c9aSAbel Vesa	depends on OF && (ARCH_QCOM || COMPILE_TEST)
14156d77c9aSAbel Vesa	select GENERIC_PHY
14256d77c9aSAbel Vesa	help
143b0d8d731SWesley Cheng	  Enable support for the USB high-speed eUSB2 repeater on Qualcomm
144b0d8d731SWesley Cheng	  PMICs. The repeater is paired with a Synopsys or M31 eUSB2 Phy
14556d77c9aSAbel Vesa	  on Qualcomm SOCs.
14656d77c9aSAbel Vesa
14708e49af5SVaradarajan Narayananconfig PHY_QCOM_M31_USB
14808e49af5SVaradarajan Narayanan	tristate "Qualcomm M31 HS PHY driver support"
14908e49af5SVaradarajan Narayanan	depends on USB && (ARCH_QCOM || COMPILE_TEST)
15008e49af5SVaradarajan Narayanan	select GENERIC_PHY
15108e49af5SVaradarajan Narayanan	help
15208e49af5SVaradarajan Narayanan	  Enable this to support M31 HS PHY transceivers on Qualcomm chips
15308e49af5SVaradarajan Narayanan	  with DWC3 USB core. It handles PHY initialization, clock
15408e49af5SVaradarajan Narayanan	  management required after resetting the hardware and power
15508e49af5SVaradarajan Narayanan	  management. This driver is required even for peripheral only or
15608e49af5SVaradarajan Narayanan	  host only mode configurations.
15708e49af5SVaradarajan Narayanan
15874badb8bSNitheesh Sekarconfig PHY_QCOM_UNIPHY_PCIE_28LP
15974badb8bSNitheesh Sekar	bool "PCIE UNIPHY 28LP PHY driver"
16074badb8bSNitheesh Sekar	depends on ARCH_QCOM
161be8f23ceSArnd Bergmann	depends on COMMON_CLK
16274badb8bSNitheesh Sekar	depends on HAS_IOMEM
16374badb8bSNitheesh Sekar	depends on OF
16474badb8bSNitheesh Sekar	select GENERIC_PHY
16574badb8bSNitheesh Sekar	help
16674badb8bSNitheesh Sekar	  Enable this to support the PCIe UNIPHY 28LP phy transceiver that
16774badb8bSNitheesh Sekar	  is used with PCIe controllers on Qualcomm IPQ5332 chips. It
16874badb8bSNitheesh Sekar	  handles PHY initialization, clock management required after
16974badb8bSNitheesh Sekar	  resetting the hardware and power management.
17074badb8bSNitheesh Sekar
1719c850486SWesley Chengconfig PHY_QCOM_M31_EUSB
1729c850486SWesley Cheng	tristate "Qualcomm M31 eUSB2 PHY driver support"
1739c850486SWesley Cheng	depends on USB && (ARCH_QCOM || COMPILE_TEST)
1749c850486SWesley Cheng	select GENERIC_PHY
1759c850486SWesley Cheng	help
1769c850486SWesley Cheng	  Enable this to support M31 EUSB2 PHY transceivers on Qualcomm
1779c850486SWesley Cheng	  chips with DWC3 USB core. It supports initializing and cleaning
1789c850486SWesley Cheng	  up of the associated USB repeater that is paired with the eUSB2
1799c850486SWesley Cheng	  PHY.
1809c850486SWesley Cheng
1810b56e9a7SVivek Gautamconfig PHY_QCOM_USB_HS
1820b56e9a7SVivek Gautam	tristate "Qualcomm USB HS PHY module"
1830b56e9a7SVivek Gautam	depends on USB_ULPI_BUS
1840b56e9a7SVivek Gautam	depends on EXTCON || !EXTCON # if EXTCON=m, this cannot be built-in
1850b56e9a7SVivek Gautam	select GENERIC_PHY
1860b56e9a7SVivek Gautam	help
1870b56e9a7SVivek Gautam	  Support for the USB high-speed ULPI compliant phy on Qualcomm
1880b56e9a7SVivek Gautam	  chipsets.
1890b56e9a7SVivek Gautam
19051e8114fSWesley Chengconfig PHY_QCOM_USB_SNPS_FEMTO_V2
19151e8114fSWesley Cheng	tristate "Qualcomm SNPS FEMTO USB HS PHY V2 module"
19251e8114fSWesley Cheng	depends on OF && (ARCH_QCOM || COMPILE_TEST)
19351e8114fSWesley Cheng	select GENERIC_PHY
19451e8114fSWesley Cheng	help
19551e8114fSWesley Cheng	  Enable support for the USB high-speed SNPS Femto phy on Qualcomm
19651e8114fSWesley Cheng	  chipsets.  This PHY has differences in the register map compared
19751e8114fSWesley Cheng	  to the V1 variants.  The PHY is paired with a Synopsys DWC3 USB
19851e8114fSWesley Cheng	  controller on Qualcomm SOCs.
19951e8114fSWesley Cheng
2000b56e9a7SVivek Gautamconfig PHY_QCOM_USB_HSIC
2010b56e9a7SVivek Gautam	tristate "Qualcomm USB HSIC ULPI PHY module"
2020b56e9a7SVivek Gautam	depends on USB_ULPI_BUS
2030b56e9a7SVivek Gautam	select GENERIC_PHY
2040b56e9a7SVivek Gautam	help
2050b56e9a7SVivek Gautam	  Support for the USB HSIC ULPI compliant PHY on QCOM chipsets.
20667b27dbeSShawn Guo
20767b27dbeSShawn Guoconfig PHY_QCOM_USB_HS_28NM
20867b27dbeSShawn Guo	tristate "Qualcomm 28nm High-Speed PHY"
20914839107SBryan O'Donoghue	depends on OF && (ARCH_QCOM || COMPILE_TEST)
21067b27dbeSShawn Guo	depends on EXTCON || !EXTCON # if EXTCON=m, this cannot be built-in
21167b27dbeSShawn Guo	select GENERIC_PHY
21267b27dbeSShawn Guo	help
21367b27dbeSShawn Guo	  Enable this to support the Qualcomm Synopsys DesignWare Core 28nm
21467b27dbeSShawn Guo	  High-Speed PHY driver. This driver supports the Hi-Speed PHY which
21567b27dbeSShawn Guo	  is usually paired with either the ChipIdea or Synopsys DWC3 USB
21667b27dbeSShawn Guo	  IPs on MSM SOCs.
2176076967aSJorge Ramirez-Ortiz
2186076967aSJorge Ramirez-Ortizconfig PHY_QCOM_USB_SS
2196076967aSJorge Ramirez-Ortiz	tristate "Qualcomm USB Super-Speed PHY driver"
22044786a26SBryan O'Donoghue	depends on OF && (ARCH_QCOM || COMPILE_TEST)
2216076967aSJorge Ramirez-Ortiz	depends on EXTCON || !EXTCON # if EXTCON=m, this cannot be built-in
2226076967aSJorge Ramirez-Ortiz	select GENERIC_PHY
2236076967aSJorge Ramirez-Ortiz	help
2246076967aSJorge Ramirez-Ortiz	  Enable this to support the Super-Speed USB transceiver on various
2256076967aSJorge Ramirez-Ortiz	  Qualcomm chipsets.
226ef19b117SAnsuel Smith
227ef19b117SAnsuel Smithconfig PHY_QCOM_IPQ806X_USB
228ef19b117SAnsuel Smith	tristate "Qualcomm IPQ806x DWC3 USB PHY driver"
229ef19b117SAnsuel Smith	depends on HAS_IOMEM
230ef19b117SAnsuel Smith	depends on OF && (ARCH_QCOM || COMPILE_TEST)
231ef19b117SAnsuel Smith	select GENERIC_PHY
232ef19b117SAnsuel Smith	help
233ef19b117SAnsuel Smith	  This option enables support for the Synopsis PHYs present inside the
234ef19b117SAnsuel Smith	  Qualcomm USB3.0 DWC3 controller on ipq806x SoC. This driver supports
235ef19b117SAnsuel Smith	  both HS and SS PHY controllers.
236601d0627SBartosz Golaszewski
237601d0627SBartosz Golaszewskiconfig PHY_QCOM_SGMII_ETH
238601d0627SBartosz Golaszewski	tristate "Qualcomm DWMAC SGMII SerDes/PHY driver"
239601d0627SBartosz Golaszewski	depends on OF && (ARCH_QCOM || COMPILE_TEST)
240601d0627SBartosz Golaszewski	depends on HAS_IOMEM
241601d0627SBartosz Golaszewski	select GENERIC_PHY
242601d0627SBartosz Golaszewski	help
243601d0627SBartosz Golaszewski	  Enable this to support the internal SerDes/SGMII PHY on various
244601d0627SBartosz Golaszewski	  Qualcomm chipsets.
245