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