1 2menu "PHY Subsystem" 3 4config PHY 5 bool "PHY Core" 6 depends on DM 7 help 8 PHY support. 9 10 This framework is designed to provide a generic interface for PHY 11 devices. PHY devices are dedicated hardware that handle the physical 12 layer of the protocols in the OSI model. 13 PHYs are commonly used for high speed interfaces such as Serial-ATA 14 or PCI express. 15 The API provides functions to initialize/deinitialize the 16 PHY, power on/off the PHY, and reset the PHY. It's meant to be as 17 compatible as possible with the equivalent framework found in the 18 linux kernel. 19 20config SPL_PHY 21 bool "PHY Core in SPL" 22 depends on DM && SPL 23 help 24 PHY support in SPL. 25 26 This framework is designed to provide a generic interface for PHY 27 devices. PHY devices are dedicated hardware that handle the physical 28 layer of the protocols (https://en.wikipedia.org/wiki/OSI_model). 29 PHYs are commonly used for high speed interfaces such as Serial-ATA 30 or PCI express. 31 The API provides functions to initialize/deinitialize the 32 PHY, power on/off the PHY, and reset the PHY. It's meant to be as 33 compatible as possible with the equivalent framework found in the 34 linux kernel. 35 36config PHY_SANDBOX 37 bool "Sandbox PHY support" 38 depends on SANDBOX 39 depends on PHY 40 help 41 This select a dummy sandbox PHY driver. It used only to implement 42 the unit tests for the phy framework 43 44config NOP_PHY 45 bool "NOP PHY driver" 46 depends on PHY 47 help 48 Support for a no-op PHY driver (stubbed PHY driver). 49 50 This is useful when a driver uses the PHY framework but no real PHY 51 hardware exists. 52 53config SPL_NOP_PHY 54 bool "NOP PHY driver in SPL" 55 depends on SPL_PHY 56 help 57 Support for a no-op PHY driver (stubbed PHY driver) in the SPL. 58 59 This is useful when a driver uses the PHY framework but no real PHY 60 hardware exists. 61 62config MIPI_DPHY_HELPERS 63 bool "MIPI D-PHY support helpers" 64 help 65 Provides a number of helpers a core functions for MIPI D-PHY drivers. 66 67config AB8500_USB_PHY 68 bool "AB8500 USB PHY Driver" 69 depends on PHY && PMIC_AB8500 70 help 71 Support for the USB OTG PHY in ST-Ericsson AB8500. 72 73config APPLE_ATCPHY 74 bool "Apple Type-C PHY Driver" 75 depends on PHY && ARCH_APPLE 76 default y 77 help 78 Support for the Apple Type-C PHY. 79 80 This is a dummy driver since the PHY is initialized 81 sufficiently by previous stage firmware. 82 83config BCM6318_USBH_PHY 84 bool "BCM6318 USBH PHY support" 85 depends on PHY && ARCH_BMIPS 86 select POWER_DOMAIN 87 help 88 Support for the Broadcom MIPS BCM6318 USBH PHY. 89 90config BCM6348_USBH_PHY 91 bool "BCM6348 USBH PHY support" 92 depends on PHY && ARCH_BMIPS 93 help 94 Support for the Broadcom MIPS BCM6348 USBH PHY. 95 96config BCM6358_USBH_PHY 97 bool "BCM6358 USBH PHY support" 98 depends on PHY && ARCH_BMIPS 99 help 100 Support for the Broadcom MIPS BCM6358 USBH PHY. 101 102config BCM6368_USBH_PHY 103 bool "BCM6368 USBH PHY support" 104 depends on PHY && ARCH_BMIPS 105 help 106 Support for the Broadcom MIPS BCM6368 USBH PHY. 107 108config BCM_SR_PCIE_PHY 109 bool "Broadcom Stingray PCIe PHY driver" 110 depends on PHY 111 help 112 Enable this to support the Broadcom Stingray PCIe PHY 113 If unsure, say N. 114 115config PHY_DA8XX_USB 116 tristate "TI DA8xx USB PHY Driver" 117 depends on PHY && ARCH_DAVINCI 118 help 119 Enable this to support the USB PHY on DA8xx SoCs. 120 121config PIPE3_PHY 122 bool "Support omap's PIPE3 PHY" 123 depends on PHY && ARCH_OMAP2PLUS 124 help 125 Support for the omap PIPE3 phy for sata 126 127 This PHY is found on omap devices supporting SATA such as dra7, am57x 128 and omap5 129 130config SPL_PIPE3_PHY 131 bool "Support omap's PIPE3 PHY in SPL" 132 depends on SPL_PHY && ARCH_OMAP2PLUS 133 help 134 Support for the omap PIPE3 phy for sata in SPL 135 136 This PHY is found on omap devices supporting SATA such as dra7, am57x 137 and omap5 138 139config AM654_PHY 140 tristate "TI AM654 SERDES support" 141 depends on PHY && ARCH_K3 142 select REGMAP 143 select SYSCON 144 help 145 This option enables support for TI AM654 SerDes PHY used for 146 PCIe. 147 148config STI_USB_PHY 149 bool "STMicroelectronics USB2 picoPHY driver for STiH407 family" 150 depends on PHY && ARCH_STI 151 help 152 This is the generic phy driver for the picoPHY ports 153 used by USB2 and USB3 Host controllers available on 154 STiH407 SoC families. 155 156config PHY_RCAR_GEN2 157 tristate "Renesas R-Car Gen2 USB PHY" 158 depends on PHY && RCAR_GEN2 159 help 160 Support for the Renesas R-Car Gen2 USB PHY. This driver operates the 161 PHY connected to USBHS module, PCI EHCI module and USB3.0 module and 162 allows configuring the module multiplexing. 163 164config PHY_RCAR_GEN3 165 tristate "Renesas R-Car Gen3 USB PHY" 166 depends on PHY && CLK && DM_REGULATOR && (RCAR_GEN3 || RZG2L) 167 default y if (RCAR_GEN3 || RZG2L) 168 help 169 Support for the Renesas R-Car Gen3 USB PHY. This driver operates the 170 PHY connected to EHCI USB module and controls USB OTG operation. 171 172config PHY_STM32_USBPHYC 173 tristate "STMicroelectronics STM32 SoC USB HS PHY driver" 174 depends on PHY && ARCH_STM32MP 175 help 176 Enable this to support the High-Speed USB transceiver that is part of 177 STMicroelectronics STM32 SoCs. 178 179 This driver controls the entire USB PHY block: the USB PHY controller 180 (USBPHYC) and the two 8-bit wide UTMI+ interface. First interface is 181 used by an HS USB Host controller, and the second one is shared 182 between an HS USB OTG controller and an HS USB Host controller, 183 selected by an USB switch. 184 185config MESON_GXBB_USB_PHY 186 bool "Amlogic Meson GXBB USB PHY" 187 depends on PHY && ARCH_MESON && MESON_GXBB 188 imply REGMAP 189 help 190 This is the generic phy driver for the Amlogic Meson GXBB 191 USB2 PHY. 192 193config MESON_GXL_USB_PHY 194 bool "Amlogic Meson GXL USB PHYs" 195 depends on PHY && ARCH_MESON && (MESON_GXL || MESON_GXM || MESON_AXG) 196 imply REGMAP 197 help 198 This is the generic phy driver for the Amlogic Meson GXL 199 USB2 and USB3 PHYS. 200 201config MESON_G12A_USB_PHY 202 bool "Amlogic Meson G12A USB PHYs" 203 depends on PHY && ARCH_MESON && (MESON_G12A || MESON_A1) 204 imply REGMAP 205 help 206 This is the generic phy driver for the Amlogic Meson G12A 207 USB2 and USB3 PHYS. 208 209config MESON_AXG_MIPI_DPHY 210 bool "Amlogic Meson AXG MIPI D-PHY" 211 depends on PHY && ARCH_MESON && MESON_AXG 212 select MIPI_DPHY_HELPERS 213 imply REGMAP 214 help 215 This is the generic phy driver for the Amlogic Meson AXG 216 MIPI D-PHY. 217 218config MESON_AXG_MIPI_PCIE_ANALOG_PHY 219 bool "Amlogic Meson AXG MIPI PCIe Analog PHY" 220 depends on PHY && ARCH_MESON && MESON_AXG 221 select MIPI_DPHY_HELPERS 222 imply REGMAP 223 help 224 This is the generic phy driver for the Amlogic Meson AXG 225 MIPI PCIe Analog PHY. 226 227config OMAP_USB2_PHY 228 bool "Support OMAP's USB2 PHY" 229 depends on PHY 230 depends on SYSCON 231 help 232 Support for the OMAP's USB2 PHY. 233 234 This PHY is found on OMAP devices supporting USB2. 235 236 237config KEYSTONE_USB_PHY 238 bool "Support TI Keystone USB PHY" 239 depends on PHY 240 depends on ARCH_KEYSTONE 241 help 242 Support for the USB PHY found on some Keystone (k2) processors 243 244 This PHY is found on some Keystone (K2) devices supporting USB. 245 246config MT7620_USB_PHY 247 bool "MediaTek MT7620 USB PHY support" 248 depends on PHY 249 depends on SOC_MT7620 250 help 251 Support the intergated USB PHY in MediaTek MT7620 SoC 252 253config MT76X8_USB_PHY 254 bool "MediaTek MT76x8 (7628/88) USB PHY support" 255 depends on PHY 256 depends on SOC_MT7628 257 help 258 Support the USB PHY in MT76x8 SoCs 259 260 This PHY is found on MT76x8 devices supporting USB. 261 262config PHY_EXYNOS_USBDRD 263 bool "Exynos SoC series USB DRD PHY driver" 264 depends on PHY && CLK 265 depends on ARCH_EXYNOS 266 select REGMAP 267 select SYSCON 268 help 269 Enable USB DRD PHY support for Exynos SoC series. 270 271config PHY_MTK_TPHY 272 bool "MediaTek T-PHY Driver" 273 depends on PHY 274 depends on ARCH_MEDIATEK || SOC_MT7621 275 select REGMAP 276 select SYSCON 277 help 278 MediaTek T-PHY driver supports usb2.0, usb3.0 ports, PCIe and 279 SATA, and meanwhile supports two version T-PHY which have 280 different banks layout, the T-PHY with shared banks between 281 multi-ports is first version, otherwise is second veriosn, 282 so you can easily distinguish them by banks layout. 283 284config PHY_NPCM_USB 285 bool "Nuvoton NPCM USB PHY support" 286 depends on PHY 287 depends on ARCH_NPCM 288 help 289 Support the USB PHY in NPCM SoCs 290 291config PHY_IMX8MQ_USB 292 bool "NXP i.MX8MQ/i.MX8MP USB PHY Driver" 293 depends on PHY 294 depends on IMX8MQ || IMX8MP 295 help 296 Support the USB3.0 PHY in NXP i.MX8MQ or i.MX8MP SoC 297 298config PHY_IMX8M_PCIE 299 bool "NXP i.MX8MM/i.MX8MP PCIe PHY Driver" 300 depends on PHY 301 depends on IMX8MM || IMX8MP 302 select REGMAP 303 select SYSCON 304 help 305 Support the PCIe PHY in NXP i.MX8MM or i.MX8MP SoC 306 307 This PHY is found on i.MX8M devices supporting PCIe. 308 309config PHY_XILINX_ZYNQMP 310 tristate "Xilinx ZynqMP PHY driver" 311 depends on PHY && ARCH_ZYNQMP 312 help 313 Enable this to support ZynqMP High Speed Gigabit Transceiver 314 that is part of ZynqMP SoC. 315 316source "drivers/phy/rockchip/Kconfig" 317source "drivers/phy/cadence/Kconfig" 318source "drivers/phy/ti/Kconfig" 319source "drivers/phy/qcom/Kconfig" 320source "drivers/phy/renesas/Kconfig" 321source "drivers/phy/starfive/Kconfig" 322 323endmenu 324