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