xref: /openbmc/linux/drivers/phy/Kconfig (revision c0c74acb)
1#
2# PHY
3#
4
5menu "PHY Subsystem"
6
7config GENERIC_PHY
8	bool "PHY Core"
9	help
10	  Generic PHY support.
11
12	  This framework is designed to provide a generic interface for PHY
13	  devices present in the kernel. This layer will have the generic
14	  API by which phy drivers can create PHY using the phy framework and
15	  phy users can obtain reference to the PHY. All the users of this
16	  framework should select this config.
17
18config PHY_BCM_NS_USB2
19	tristate "Broadcom Northstar USB 2.0 PHY Driver"
20	depends on ARCH_BCM_IPROC || COMPILE_TEST
21	depends on HAS_IOMEM && OF
22	select GENERIC_PHY
23	help
24	  Enable this to support Broadcom USB 2.0 PHY connected to the USB
25	  controller on Northstar family.
26
27config PHY_BCM_NS_USB3
28	tristate "Broadcom Northstar USB 3.0 PHY Driver"
29	depends on ARCH_BCM_IPROC || COMPILE_TEST
30	depends on HAS_IOMEM && OF
31	select GENERIC_PHY
32	help
33	  Enable this to support Broadcom USB 3.0 PHY connected to the USB
34	  controller on Northstar family.
35
36config PHY_BERLIN_USB
37	tristate "Marvell Berlin USB PHY Driver"
38	depends on ARCH_BERLIN && RESET_CONTROLLER && HAS_IOMEM && OF
39	select GENERIC_PHY
40	help
41	  Enable this to support the USB PHY on Marvell Berlin SoCs.
42
43config PHY_BERLIN_SATA
44	tristate "Marvell Berlin SATA PHY driver"
45	depends on ARCH_BERLIN && HAS_IOMEM && OF
46	select GENERIC_PHY
47	help
48	  Enable this to support the SATA PHY on Marvell Berlin SoCs.
49
50config ARMADA375_USBCLUSTER_PHY
51	def_bool y
52	depends on MACH_ARMADA_375 || COMPILE_TEST
53	depends on OF && HAS_IOMEM
54	select GENERIC_PHY
55
56config PHY_DA8XX_USB
57	tristate "TI DA8xx USB PHY Driver"
58	depends on ARCH_DAVINCI_DA8XX
59	select GENERIC_PHY
60	select MFD_SYSCON
61	help
62	  Enable this to support the USB PHY on DA8xx SoCs.
63
64	  This driver controls both the USB 1.1 PHY and the USB 2.0 PHY.
65
66config PHY_DM816X_USB
67	tristate "TI dm816x USB PHY driver"
68	depends on ARCH_OMAP2PLUS
69	depends on USB_SUPPORT
70	select GENERIC_PHY
71	select USB_PHY
72	help
73	  Enable this for dm816x USB to work.
74
75config PHY_EXYNOS_MIPI_VIDEO
76	tristate "S5P/EXYNOS SoC series MIPI CSI-2/DSI PHY driver"
77	depends on HAS_IOMEM
78	depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
79	select GENERIC_PHY
80	default y if ARCH_S5PV210 || ARCH_EXYNOS
81	help
82	  Support for MIPI CSI-2 and MIPI DSI DPHY found on Samsung S5P
83	  and EXYNOS SoCs.
84
85config PHY_LPC18XX_USB_OTG
86	tristate "NXP LPC18xx/43xx SoC USB OTG PHY driver"
87	depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
88	depends on MFD_SYSCON
89	select GENERIC_PHY
90	help
91	  Enable this to support NXP LPC18xx/43xx internal USB OTG PHY.
92
93	  This driver is need for USB0 support on LPC18xx/43xx and takes
94	  care of enabling and clock setup.
95
96config PHY_PXA_28NM_HSIC
97	tristate "Marvell USB HSIC 28nm PHY Driver"
98	depends on HAS_IOMEM
99	select GENERIC_PHY
100	help
101	  Enable this to support Marvell USB HSIC PHY driver for Marvell
102	  SoC. This driver will do the PHY initialization and shutdown.
103	  The PHY driver will be used by Marvell ehci driver.
104
105	  To compile this driver as a module, choose M here.
106
107config PHY_PXA_28NM_USB2
108	tristate "Marvell USB 2.0 28nm PHY Driver"
109	depends on HAS_IOMEM
110	select GENERIC_PHY
111	help
112	  Enable this to support Marvell USB 2.0 PHY driver for Marvell
113	  SoC. This driver will do the PHY initialization and shutdown.
114	  The PHY driver will be used by Marvell udc/ehci/otg driver.
115
116	  To compile this driver as a module, choose M here.
117
118config PHY_MVEBU_SATA
119	def_bool y
120	depends on ARCH_DOVE || MACH_DOVE || MACH_KIRKWOOD
121	depends on OF
122	select GENERIC_PHY
123
124config PHY_MIPHY28LP
125	tristate "STMicroelectronics MIPHY28LP PHY driver for STiH407"
126	depends on ARCH_STI
127	select GENERIC_PHY
128	help
129	  Enable this to support the miphy transceiver (for SATA/PCIE/USB3)
130	  that is part of STMicroelectronics STiH407 SoC.
131
132config PHY_RCAR_GEN2
133	tristate "Renesas R-Car generation 2 USB PHY driver"
134	depends on ARCH_RENESAS
135	depends on GENERIC_PHY
136	help
137	  Support for USB PHY found on Renesas R-Car generation 2 SoCs.
138
139config PHY_RCAR_GEN3_USB2
140	tristate "Renesas R-Car generation 3 USB 2.0 PHY driver"
141	depends on ARCH_RENESAS
142	depends on EXTCON
143	select GENERIC_PHY
144	help
145	  Support for USB 2.0 PHY found on Renesas R-Car generation 3 SoCs.
146
147config OMAP_CONTROL_PHY
148	tristate "OMAP CONTROL PHY Driver"
149	depends on ARCH_OMAP2PLUS || COMPILE_TEST
150	help
151	  Enable this to add support for the PHY part present in the control
152	  module. This driver has API to power on the USB2 PHY and to write to
153	  the mailbox. The mailbox is present only in omap4 and the register to
154	  power on the USB2 PHY is present in OMAP4 and OMAP5. OMAP5 has an
155	  additional register to power on USB3 PHY/SATA PHY/PCIE PHY
156	  (PIPE3 PHY).
157
158config OMAP_USB2
159	tristate "OMAP USB2 PHY Driver"
160	depends on ARCH_OMAP2PLUS
161	depends on USB_SUPPORT
162	select GENERIC_PHY
163	select USB_PHY
164	select OMAP_CONTROL_PHY
165	depends on OMAP_OCP2SCP
166	help
167	  Enable this to support the transceiver that is part of SOC. This
168	  driver takes care of all the PHY functionality apart from comparator.
169	  The USB OTG controller communicates with the comparator using this
170	  driver.
171
172config TI_PIPE3
173	tristate "TI PIPE3 PHY Driver"
174	depends on ARCH_OMAP2PLUS || COMPILE_TEST
175	select GENERIC_PHY
176	select OMAP_CONTROL_PHY
177	depends on OMAP_OCP2SCP
178	help
179	  Enable this to support the PIPE3 PHY that is part of TI SOCs. This
180	  driver takes care of all the PHY functionality apart from comparator.
181	  This driver interacts with the "OMAP Control PHY Driver" to power
182	  on/off the PHY.
183
184config TWL4030_USB
185	tristate "TWL4030 USB Transceiver Driver"
186	depends on TWL4030_CORE && REGULATOR_TWL4030 && USB_MUSB_OMAP2PLUS
187	depends on USB_SUPPORT
188	depends on USB_GADGET || !USB_GADGET # if USB_GADGET=m, this can't 'y'
189	select GENERIC_PHY
190	select USB_PHY
191	help
192	  Enable this to support the USB OTG transceiver on TWL4030
193	  family chips (including the TWL5030 and TPS659x0 devices).
194	  This transceiver supports high and full speed devices plus,
195	  in host mode, low speed.
196
197config PHY_EXYNOS_DP_VIDEO
198	tristate "EXYNOS SoC series Display Port PHY driver"
199	depends on OF
200	depends on ARCH_EXYNOS || COMPILE_TEST
201	default ARCH_EXYNOS
202	select GENERIC_PHY
203	help
204	  Support for Display Port PHY found on Samsung EXYNOS SoCs.
205
206config BCM_KONA_USB2_PHY
207	tristate "Broadcom Kona USB2 PHY Driver"
208	depends on HAS_IOMEM
209	select GENERIC_PHY
210	help
211	  Enable this to support the Broadcom Kona USB 2.0 PHY.
212
213config PHY_EXYNOS5250_SATA
214	tristate "Exynos5250 Sata SerDes/PHY driver"
215	depends on SOC_EXYNOS5250
216	depends on HAS_IOMEM
217	depends on OF
218	select GENERIC_PHY
219	select I2C
220	select I2C_S3C2410
221	select MFD_SYSCON
222	help
223	  Enable this to support SATA SerDes/Phy found on Samsung's
224	  Exynos5250 based SoCs.This SerDes/Phy supports SATA 1.5 Gb/s,
225	  SATA 3.0 Gb/s, SATA 6.0 Gb/s speeds. It supports one SATA host
226	  port to accept one SATA device.
227
228config PHY_HIX5HD2_SATA
229	tristate "HIX5HD2 SATA PHY Driver"
230	depends on ARCH_HIX5HD2 && OF && HAS_IOMEM
231	select GENERIC_PHY
232	select MFD_SYSCON
233	help
234	  Support for SATA PHY on Hisilicon hix5hd2 Soc.
235
236config PHY_MT65XX_USB3
237	tristate "Mediatek USB3.0 PHY Driver"
238	depends on ARCH_MEDIATEK && OF
239	select GENERIC_PHY
240	help
241	  Say 'Y' here to add support for Mediatek USB3.0 PHY driver,
242	  it supports multiple usb2.0 and usb3.0 ports.
243
244config PHY_HI6220_USB
245	tristate "hi6220 USB PHY support"
246	depends on (ARCH_HISI && ARM64) || COMPILE_TEST
247	select GENERIC_PHY
248	select MFD_SYSCON
249	help
250	  Enable this to support the HISILICON HI6220 USB PHY.
251
252	  To compile this driver as a module, choose M here.
253
254config PHY_SUN4I_USB
255	tristate "Allwinner sunxi SoC USB PHY driver"
256	depends on ARCH_SUNXI && HAS_IOMEM && OF
257	depends on RESET_CONTROLLER
258	depends on EXTCON
259	depends on POWER_SUPPLY
260	depends on USB_SUPPORT
261	select GENERIC_PHY
262	select USB_COMMON
263	help
264	  Enable this to support the transceiver that is part of Allwinner
265	  sunxi SoCs.
266
267	  This driver controls the entire USB PHY block, both the USB OTG
268	  parts, as well as the 2 regular USB 2 host PHYs.
269
270config PHY_SUN9I_USB
271	tristate "Allwinner sun9i SoC USB PHY driver"
272	depends on ARCH_SUNXI && HAS_IOMEM && OF
273	depends on RESET_CONTROLLER
274	depends on USB_SUPPORT
275	select USB_COMMON
276	select GENERIC_PHY
277	help
278	  Enable this to support the transceiver that is part of Allwinner
279	  sun9i SoCs.
280
281	  This driver controls each individual USB 2 host PHY.
282
283config PHY_SAMSUNG_USB2
284	tristate "Samsung USB 2.0 PHY driver"
285	depends on HAS_IOMEM
286	depends on USB_EHCI_EXYNOS || USB_OHCI_EXYNOS || USB_DWC2
287	select GENERIC_PHY
288	select MFD_SYSCON
289	default ARCH_EXYNOS
290	help
291	  Enable this to support the Samsung USB 2.0 PHY driver for Samsung
292	  SoCs. This driver provides the interface for USB 2.0 PHY. Support
293	  for particular PHYs will be enabled based on the SoC type in addition
294	  to this driver.
295
296config PHY_S5PV210_USB2
297	bool "Support for S5PV210"
298	depends on PHY_SAMSUNG_USB2
299	depends on ARCH_S5PV210
300	help
301	  Enable USB PHY support for S5PV210. This option requires that Samsung
302	  USB 2.0 PHY driver is enabled and means that support for this
303	  particular SoC is compiled in the driver. In case of S5PV210 two phys
304	  are available - device and host.
305
306config PHY_EXYNOS4210_USB2
307	bool
308	depends on PHY_SAMSUNG_USB2
309	default CPU_EXYNOS4210
310
311config PHY_EXYNOS4X12_USB2
312	bool
313	depends on PHY_SAMSUNG_USB2
314	default SOC_EXYNOS3250 || SOC_EXYNOS4212 || SOC_EXYNOS4412
315
316config PHY_EXYNOS5250_USB2
317	bool
318	depends on PHY_SAMSUNG_USB2
319	default SOC_EXYNOS5250 || SOC_EXYNOS5420
320
321config PHY_EXYNOS5_USBDRD
322	tristate "Exynos5 SoC series USB DRD PHY driver"
323	depends on ARCH_EXYNOS && OF
324	depends on HAS_IOMEM
325	depends on USB_DWC3_EXYNOS
326	select GENERIC_PHY
327	select MFD_SYSCON
328	default y
329	help
330	  Enable USB DRD PHY support for Exynos 5 SoC series.
331	  This driver provides PHY interface for USB 3.0 DRD controller
332	  present on Exynos5 SoC series.
333
334config PHY_EXYNOS_PCIE
335	bool "Exynos PCIe PHY driver"
336	depends on OF && (ARCH_EXYNOS || COMPILE_TEST)
337	select GENERIC_PHY
338	help
339	  Enable PCIe PHY support for Exynos SoC series.
340	  This driver provides PHY interface for Exynos PCIe controller.
341
342config PHY_PISTACHIO_USB
343	tristate "IMG Pistachio USB2.0 PHY driver"
344	depends on MACH_PISTACHIO
345	select GENERIC_PHY
346	help
347	  Enable this to support the USB2.0 PHY on the IMG Pistachio SoC.
348
349config PHY_QCOM_APQ8064_SATA
350	tristate "Qualcomm APQ8064 SATA SerDes/PHY driver"
351	depends on ARCH_QCOM
352	depends on HAS_IOMEM
353	depends on OF
354	select GENERIC_PHY
355
356config PHY_QCOM_IPQ806X_SATA
357	tristate "Qualcomm IPQ806x SATA SerDes/PHY driver"
358	depends on ARCH_QCOM
359	depends on HAS_IOMEM
360	depends on OF
361	select GENERIC_PHY
362
363config PHY_ROCKCHIP_USB
364	tristate "Rockchip USB2 PHY Driver"
365	depends on ARCH_ROCKCHIP && OF
366	select GENERIC_PHY
367	help
368	  Enable this to support the Rockchip USB 2.0 PHY.
369
370config PHY_ROCKCHIP_INNO_USB2
371	tristate "Rockchip INNO USB2PHY Driver"
372	depends on (ARCH_ROCKCHIP || COMPILE_TEST) && OF
373	depends on COMMON_CLK
374	depends on EXTCON
375	depends on USB_SUPPORT
376	select GENERIC_PHY
377	select USB_COMMON
378	help
379	  Support for Rockchip USB2.0 PHY with Innosilicon IP block.
380
381config PHY_ROCKCHIP_EMMC
382	tristate "Rockchip EMMC PHY Driver"
383	depends on ARCH_ROCKCHIP && OF
384	select GENERIC_PHY
385	help
386	  Enable this to support the Rockchip EMMC PHY.
387
388config PHY_ROCKCHIP_DP
389	tristate "Rockchip Display Port PHY Driver"
390	depends on ARCH_ROCKCHIP && OF
391	select GENERIC_PHY
392	help
393	  Enable this to support the Rockchip Display Port PHY.
394
395config PHY_ROCKCHIP_PCIE
396	tristate "Rockchip PCIe PHY Driver"
397	depends on (ARCH_ROCKCHIP && OF) || COMPILE_TEST
398	select GENERIC_PHY
399	select MFD_SYSCON
400	help
401	  Enable this to support the Rockchip PCIe PHY.
402
403config PHY_ROCKCHIP_TYPEC
404	tristate "Rockchip TYPEC PHY Driver"
405	depends on OF && (ARCH_ROCKCHIP || COMPILE_TEST)
406	select EXTCON
407	select GENERIC_PHY
408	select RESET_CONTROLLER
409	help
410	  Enable this to support the Rockchip USB TYPEC PHY.
411
412config PHY_ST_SPEAR1310_MIPHY
413	tristate "ST SPEAR1310-MIPHY driver"
414	select GENERIC_PHY
415	depends on MACH_SPEAR1310 || COMPILE_TEST
416	help
417	  Support for ST SPEAr1310 MIPHY which can be used for PCIe and SATA.
418
419config PHY_ST_SPEAR1340_MIPHY
420	tristate "ST SPEAR1340-MIPHY driver"
421	select GENERIC_PHY
422	depends on MACH_SPEAR1340 || COMPILE_TEST
423	help
424	  Support for ST SPEAr1340 MIPHY which can be used for PCIe and SATA.
425
426config PHY_XGENE
427	tristate "APM X-Gene 15Gbps PHY support"
428	depends on HAS_IOMEM && OF && (ARM64 || COMPILE_TEST)
429	select GENERIC_PHY
430	help
431	  This option enables support for APM X-Gene SoC multi-purpose PHY.
432
433config PHY_STIH407_USB
434	tristate "STMicroelectronics USB2 picoPHY driver for STiH407 family"
435	depends on RESET_CONTROLLER
436	depends on ARCH_STI || COMPILE_TEST
437	select GENERIC_PHY
438	help
439	  Enable this support to enable the picoPHY device used by USB2
440	  and USB3 controllers on STMicroelectronics STiH407 SoC families.
441
442config PHY_QCOM_UFS
443	tristate "Qualcomm UFS PHY driver"
444	depends on OF && ARCH_QCOM
445	select GENERIC_PHY
446	help
447	  Support for UFS PHY on QCOM chipsets.
448
449config PHY_QCOM_USB_HS
450	tristate "Qualcomm USB HS PHY module"
451	depends on USB_ULPI_BUS
452	depends on EXTCON || !EXTCON # if EXTCON=m, this cannot be built-in
453	select GENERIC_PHY
454	help
455	  Support for the USB high-speed ULPI compliant phy on Qualcomm
456	  chipsets.
457
458config PHY_QCOM_USB_HSIC
459	tristate "Qualcomm USB HSIC ULPI PHY module"
460	depends on USB_ULPI_BUS
461	select GENERIC_PHY
462	help
463	  Support for the USB HSIC ULPI compliant PHY on QCOM chipsets.
464
465config PHY_TUSB1210
466	tristate "TI TUSB1210 ULPI PHY module"
467	depends on USB_ULPI_BUS
468	select GENERIC_PHY
469	help
470	  Support for TI TUSB1210 USB ULPI PHY.
471
472config PHY_BRCM_SATA
473	tristate "Broadcom SATA PHY driver"
474	depends on ARCH_BRCMSTB || ARCH_BCM_IPROC || BMIPS_GENERIC || COMPILE_TEST
475	depends on OF
476	select GENERIC_PHY
477	default ARCH_BCM_IPROC
478	help
479	  Enable this to support the Broadcom SATA PHY.
480	  If unsure, say N.
481
482config PHY_CYGNUS_PCIE
483	tristate "Broadcom Cygnus PCIe PHY driver"
484	depends on OF && (ARCH_BCM_CYGNUS || COMPILE_TEST)
485	select GENERIC_PHY
486	default ARCH_BCM_CYGNUS
487	help
488	  Enable this to support the Broadcom Cygnus PCIe PHY.
489	  If unsure, say N.
490
491source "drivers/phy/tegra/Kconfig"
492
493config PHY_NS2_PCIE
494	tristate "Broadcom Northstar2 PCIe PHY driver"
495	depends on OF && MDIO_BUS_MUX_BCM_IPROC
496	select GENERIC_PHY
497	default ARCH_BCM_IPROC
498	help
499	  Enable this to support the Broadcom Northstar2 PCIe PHY.
500	  If unsure, say N.
501
502config PHY_MESON8B_USB2
503	tristate "Meson8b and GXBB USB2 PHY driver"
504	default ARCH_MESON
505	depends on OF && (ARCH_MESON || COMPILE_TEST)
506	depends on USB_SUPPORT
507	select USB_COMMON
508	select GENERIC_PHY
509	help
510	  Enable this to support the Meson USB2 PHYs found in Meson8b
511	  and GXBB SoCs.
512	  If unsure, say N.
513
514endmenu
515