blob: e12347e8a031b478e2e474935c0d8ea4ebe224df [file] [log] [blame]
Jean-Jacques Hiblot48447782017-04-24 11:51:27 +02001
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"
Adam Fordac4d80e2019-08-24 13:50:34 -050022 depends on DM && SPL
Jean-Jacques Hiblot48447782017-04-24 11:51:27 +020023 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
Jean-Jacques Hiblot7e9db022017-04-24 11:51:28 +020036config 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
Jean-Jacques Hiblotc2da3e32017-07-24 15:18:15 +020044config 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
Neil Armstrong466fa152020-12-29 14:58:58 +010062config 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
Stephan Gerholdbd519112021-07-08 20:33:49 +020067config 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
Mark Kettenis23d98982023-07-14 22:21:42 +020073config 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
Álvaro Fernández Rojas66871b72018-02-04 21:11:15 +010083config 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
Álvaro Fernández Rojasb3c963a2018-02-04 11:18:24 +010090config 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
Álvaro Fernández Rojas54a1fb62018-02-04 11:19:11 +010096config 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
Álvaro Fernández Rojasdbb6baf2018-02-04 21:10:13 +0100102config 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
Srinath Mannam75687022020-04-02 16:08:12 +0530108config 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
Adam Ford9442e742019-07-10 13:59:09 -0500115config 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
Jean-Jacques Hiblot73e95eb2017-04-24 11:51:29 +0200121config PIPE3_PHY
122 bool "Support omap's PIPE3 PHY"
Jean-Jacques Hiblot5a3d1c62017-07-07 12:13:34 +0200123 depends on PHY && ARCH_OMAP2PLUS
Jean-Jacques Hiblot73e95eb2017-04-24 11:51:29 +0200124 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"
Jean-Jacques Hiblot5a3d1c62017-07-07 12:13:34 +0200132 depends on SPL_PHY && ARCH_OMAP2PLUS
Jean-Jacques Hiblot73e95eb2017-04-24 11:51:29 +0200133 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
Sekhar Nori114b0bc2019-08-01 19:12:58 +0530139config 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
Patrice Chotard6b336512017-09-05 11:04:21 +0200148config 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
Marek Vasut484961c2018-08-05 15:22:19 +0200156config 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
Marek Vasutc31c4b12018-10-02 22:31:47 +0200164config PHY_RCAR_GEN3
165 tristate "Renesas R-Car Gen3 USB PHY"
166 depends on PHY && RCAR_GEN3 && CLK && DM_REGULATOR
167 default y if RCAR_GEN3
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
Patrice Chotard226d87b2018-04-27 11:01:55 +0200172config 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
Beniamino Galvani86724a52019-08-18 15:42:54 +0200185config 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
Neil Armstrong1cbd9ae2018-04-11 17:08:02 +0200193config MESON_GXL_USB_PHY
194 bool "Amlogic Meson GXL USB PHYs"
Neil Armstrongc90263c2020-09-10 10:48:16 +0200195 depends on PHY && ARCH_MESON && (MESON_GXL || MESON_GXM || MESON_AXG)
Neil Armstrong1cbd9ae2018-04-11 17:08:02 +0200196 imply REGMAP
197 help
198 This is the generic phy driver for the Amlogic Meson GXL
199 USB2 and USB3 PHYS.
200
Neil Armstrong5fe837d2019-02-19 15:17:29 +0100201config MESON_G12A_USB_PHY
202 bool "Amlogic Meson G12A USB PHYs"
Alexey Romanovb2340a42023-10-05 11:54:26 +0300203 depends on PHY && ARCH_MESON && (MESON_G12A || MESON_A1)
Neil Armstrong5fe837d2019-02-19 15:17:29 +0100204 imply REGMAP
205 help
206 This is the generic phy driver for the Amlogic Meson G12A
207 USB2 and USB3 PHYS.
208
Neil Armstrong90f9ecd2020-12-29 14:59:00 +0100209config 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
Neil Armstrongd8d11692020-12-29 14:59:01 +0100218config 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
Jean-Jacques Hiblot45305712018-11-29 10:57:39 +0100227config 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
Jean-Jacques Hiblota5bb6712018-12-04 11:12:59 +0100236
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
developer19cf5772020-11-12 16:36:48 +0800246config 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
Stefan Roese67e02df2019-04-05 13:44:43 +0200253config MT76X8_USB_PHY
254 bool "MediaTek MT76x8 (7628/88) USB PHY support"
255 depends on PHY
developer065e7dd2019-09-25 17:45:31 +0800256 depends on SOC_MT7628
Stefan Roese67e02df2019-04-05 13:44:43 +0200257 help
258 Support the USB PHY in MT76x8 SoCs
259
260 This PHY is found on MT76x8 devices supporting USB.
261
developer7b27b8d2019-08-22 12:26:50 +0200262config PHY_MTK_TPHY
263 bool "MediaTek T-PHY Driver"
264 depends on PHY
developerf37e4f22022-05-20 11:23:01 +0800265 depends on ARCH_MEDIATEK || SOC_MT7621
Christian Marangi198a3782024-06-24 23:03:27 +0200266 select REGMAP
267 select SYSCON
developer7b27b8d2019-08-22 12:26:50 +0200268 help
269 MediaTek T-PHY driver supports usb2.0, usb3.0 ports, PCIe and
270 SATA, and meanwhile supports two version T-PHY which have
271 different banks layout, the T-PHY with shared banks between
272 multi-ports is first version, otherwise is second veriosn,
273 so you can easily distinguish them by banks layout.
274
Jim Liu9a215e82022-06-21 17:03:38 +0800275config PHY_NPCM_USB
276 bool "Nuvoton NPCM USB PHY support"
277 depends on PHY
278 depends on ARCH_NPCM
279 help
280 Support the USB PHY in NPCM SoCs
281
Ye Lifde01d92021-02-21 08:26:21 -0800282config PHY_IMX8MQ_USB
Marek Vasutc55fbc42022-04-01 03:18:31 +0200283 bool "NXP i.MX8MQ/i.MX8MP USB PHY Driver"
Ye Lifde01d92021-02-21 08:26:21 -0800284 depends on PHY
Marek Vasutc55fbc42022-04-01 03:18:31 +0200285 depends on IMX8MQ || IMX8MP
Ye Lifde01d92021-02-21 08:26:21 -0800286 help
Marek Vasutc55fbc42022-04-01 03:18:31 +0200287 Support the USB3.0 PHY in NXP i.MX8MQ or i.MX8MP SoC
Ye Lifde01d92021-02-21 08:26:21 -0800288
Sumit Garg2c714512024-03-21 20:25:02 +0530289config PHY_IMX8M_PCIE
290 bool "NXP i.MX8MM/i.MX8MP PCIe PHY Driver"
291 depends on PHY
292 depends on IMX8MM || IMX8MP
293 select REGMAP
294 select SYSCON
295 help
296 Support the PCIe PHY in NXP i.MX8MM or i.MX8MP SoC
297
298 This PHY is found on i.MX8M devices supporting PCIe.
299
Michal Simek0be35ab2022-01-06 09:49:41 +0100300config PHY_XILINX_ZYNQMP
301 tristate "Xilinx ZynqMP PHY driver"
302 depends on PHY && ARCH_ZYNQMP
303 help
304 Enable this to support ZynqMP High Speed Gigabit Transceiver
305 that is part of ZynqMP SoC.
306
Jagan Teki70e882f2020-05-26 11:33:44 +0800307source "drivers/phy/rockchip/Kconfig"
Alan Douglasfda76da2021-07-21 21:28:36 +0530308source "drivers/phy/cadence/Kconfig"
Jean-Jacques Hiblot065788e2021-07-21 21:28:38 +0530309source "drivers/phy/ti/Kconfig"
Sumit Garg302d5a42022-08-04 19:57:09 +0530310source "drivers/phy/qcom/Kconfig"
Marek Vasut8ec30772023-03-19 18:09:43 +0100311source "drivers/phy/renesas/Kconfig"
Alan Douglasfda76da2021-07-21 21:28:36 +0530312
Jean-Jacques Hiblot48447782017-04-24 11:51:27 +0200313endmenu