blob: 8f767877e73c6bf2ab9ba40c36cf346f7b1b8fda [file] [log] [blame]
Jean-Jacques Hiblot72e50162017-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 Forda0746672019-08-24 13:50:34 -050022 depends on DM && SPL
Jean-Jacques Hiblot72e50162017-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 Hiblot86322f52017-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 Hiblot3b63db32017-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 Armstrongafef2052020-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 Gerhold4559df92021-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 Kettenisb99c6352023-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 Rojas8e948c62018-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 Rojasbcb9b502018-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 Rojas190c36b2018-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 Rojasf55c1532018-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 Mannam3151fdd2020-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 Fordfc582632019-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 Hiblot982082d2017-04-24 11:51:29 +0200121config PIPE3_PHY
122 bool "Support omap's PIPE3 PHY"
Jean-Jacques Hiblot6b26aae2017-07-07 12:13:34 +0200123 depends on PHY && ARCH_OMAP2PLUS
Jean-Jacques Hiblot982082d2017-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 Hiblot6b26aae2017-07-07 12:13:34 +0200132 depends on SPL_PHY && ARCH_OMAP2PLUS
Jean-Jacques Hiblot982082d2017-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 Nori888e1ca2019-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 Chotardb7ca56d2017-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 Vasut66425882018-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 Vasut6cfc3d62018-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 Chotard3b291212018-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 Galvanidf42f322019-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 Armstrong2960e272018-04-11 17:08:02 +0200193config MESON_GXL_USB_PHY
194 bool "Amlogic Meson GXL USB PHYs"
Neil Armstrong0ae87242020-09-10 10:48:16 +0200195 depends on PHY && ARCH_MESON && (MESON_GXL || MESON_GXM || MESON_AXG)
Neil Armstrong2960e272018-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 Armstrong277d9162019-02-19 15:17:29 +0100201config MESON_G12A_USB_PHY
202 bool "Amlogic Meson G12A USB PHYs"
Alexey Romanov5533c882023-10-05 11:54:26 +0300203 depends on PHY && ARCH_MESON && (MESON_G12A || MESON_A1)
Neil Armstrong277d9162019-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 Armstrong7ef19502020-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 Armstrong45475512020-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 Hiblot668257e2018-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 Hiblot4b127832018-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
Weijie Gaob4f214f2020-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 Roesed7d76062019-04-05 13:44:43 +0200253config MT76X8_USB_PHY
254 bool "MediaTek MT76x8 (7628/88) USB PHY support"
255 depends on PHY
Weijie Gao4cce5112019-09-25 17:45:31 +0800256 depends on SOC_MT7628
Stefan Roesed7d76062019-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
Ryder Lee235bad02019-08-22 12:26:50 +0200262config PHY_MTK_TPHY
263 bool "MediaTek T-PHY Driver"
264 depends on PHY
Weijie Gaobe3dc922022-05-20 11:23:01 +0800265 depends on ARCH_MEDIATEK || SOC_MT7621
Ryder Lee235bad02019-08-22 12:26:50 +0200266 help
267 MediaTek T-PHY driver supports usb2.0, usb3.0 ports, PCIe and
268 SATA, and meanwhile supports two version T-PHY which have
269 different banks layout, the T-PHY with shared banks between
270 multi-ports is first version, otherwise is second veriosn,
271 so you can easily distinguish them by banks layout.
272
Jim Liufdd08f82022-06-21 17:03:38 +0800273config PHY_NPCM_USB
274 bool "Nuvoton NPCM USB PHY support"
275 depends on PHY
276 depends on ARCH_NPCM
277 help
278 Support the USB PHY in NPCM SoCs
279
Ye Li4266dc12021-02-21 08:26:21 -0800280config PHY_IMX8MQ_USB
Marek Vasut77ee5d32022-04-01 03:18:31 +0200281 bool "NXP i.MX8MQ/i.MX8MP USB PHY Driver"
Ye Li4266dc12021-02-21 08:26:21 -0800282 depends on PHY
Marek Vasut77ee5d32022-04-01 03:18:31 +0200283 depends on IMX8MQ || IMX8MP
Ye Li4266dc12021-02-21 08:26:21 -0800284 help
Marek Vasut77ee5d32022-04-01 03:18:31 +0200285 Support the USB3.0 PHY in NXP i.MX8MQ or i.MX8MP SoC
Ye Li4266dc12021-02-21 08:26:21 -0800286
Sumit Gargc214ebc2024-03-21 20:25:02 +0530287config PHY_IMX8M_PCIE
288 bool "NXP i.MX8MM/i.MX8MP PCIe PHY Driver"
289 depends on PHY
290 depends on IMX8MM || IMX8MP
291 select REGMAP
292 select SYSCON
293 help
294 Support the PCIe PHY in NXP i.MX8MM or i.MX8MP SoC
295
296 This PHY is found on i.MX8M devices supporting PCIe.
297
Michal Simek1d78d682022-01-06 09:49:41 +0100298config PHY_XILINX_ZYNQMP
299 tristate "Xilinx ZynqMP PHY driver"
300 depends on PHY && ARCH_ZYNQMP
301 help
302 Enable this to support ZynqMP High Speed Gigabit Transceiver
303 that is part of ZynqMP SoC.
304
Jagan Tekiac97a9e2020-05-26 11:33:44 +0800305source "drivers/phy/rockchip/Kconfig"
Alan Douglas39b82332021-07-21 21:28:36 +0530306source "drivers/phy/cadence/Kconfig"
Jean-Jacques Hiblot1a83f992021-07-21 21:28:38 +0530307source "drivers/phy/ti/Kconfig"
Sumit Garg23ba5f32022-08-04 19:57:09 +0530308source "drivers/phy/qcom/Kconfig"
Marek Vasut08c56142023-03-19 18:09:43 +0100309source "drivers/phy/renesas/Kconfig"
Alan Douglas39b82332021-07-21 21:28:36 +0530310
Jean-Jacques Hiblot72e50162017-04-24 11:51:27 +0200311endmenu