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