phy: rcar-gen3-usb2: fix mutex_lock calling in interrupt
[linux-2.6-microblaze.git] / drivers / phy / Kconfig
1 #
2 # PHY
3 #
4
5 menu "PHY Subsystem"
6
7 config 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
18 config 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
27 config 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
34 config 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
41 config 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
47 config PHY_DA8XX_USB
48         tristate "TI DA8xx USB PHY Driver"
49         depends on ARCH_DAVINCI_DA8XX
50         select GENERIC_PHY
51         select MFD_SYSCON
52         help
53           Enable this to support the USB PHY on DA8xx SoCs.
54
55           This driver controls both the USB 1.1 PHY and the USB 2.0 PHY.
56
57 config PHY_DM816X_USB
58         tristate "TI dm816x USB PHY driver"
59         depends on ARCH_OMAP2PLUS
60         depends on USB_SUPPORT
61         select GENERIC_PHY
62         select USB_PHY
63         help
64           Enable this for dm816x USB to work.
65
66 config PHY_EXYNOS_MIPI_VIDEO
67         tristate "S5P/EXYNOS SoC series MIPI CSI-2/DSI PHY driver"
68         depends on HAS_IOMEM
69         depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
70         select GENERIC_PHY
71         default y if ARCH_S5PV210 || ARCH_EXYNOS
72         help
73           Support for MIPI CSI-2 and MIPI DSI DPHY found on Samsung S5P
74           and EXYNOS SoCs.
75
76 config PHY_LPC18XX_USB_OTG
77         tristate "NXP LPC18xx/43xx SoC USB OTG PHY driver"
78         depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
79         depends on MFD_SYSCON
80         select GENERIC_PHY
81         help
82           Enable this to support NXP LPC18xx/43xx internal USB OTG PHY.
83
84           This driver is need for USB0 support on LPC18xx/43xx and takes
85           care of enabling and clock setup.
86
87 config PHY_PXA_28NM_HSIC
88         tristate "Marvell USB HSIC 28nm PHY Driver"
89         depends on HAS_IOMEM
90         select GENERIC_PHY
91         help
92           Enable this to support Marvell USB HSIC PHY driver for Marvell
93           SoC. This driver will do the PHY initialization and shutdown.
94           The PHY driver will be used by Marvell ehci driver.
95
96           To compile this driver as a module, choose M here.
97
98 config PHY_PXA_28NM_USB2
99         tristate "Marvell USB 2.0 28nm PHY Driver"
100         depends on HAS_IOMEM
101         select GENERIC_PHY
102         help
103           Enable this to support Marvell USB 2.0 PHY driver for Marvell
104           SoC. This driver will do the PHY initialization and shutdown.
105           The PHY driver will be used by Marvell udc/ehci/otg driver.
106
107           To compile this driver as a module, choose M here.
108
109 config PHY_MVEBU_SATA
110         def_bool y
111         depends on ARCH_DOVE || MACH_DOVE || MACH_KIRKWOOD
112         depends on OF
113         select GENERIC_PHY
114
115 config PHY_MIPHY28LP
116         tristate "STMicroelectronics MIPHY28LP PHY driver for STiH407"
117         depends on ARCH_STI
118         select GENERIC_PHY
119         help
120           Enable this to support the miphy transceiver (for SATA/PCIE/USB3)
121           that is part of STMicroelectronics STiH407 SoC.
122
123 config PHY_MIPHY365X
124         tristate "STMicroelectronics MIPHY365X PHY driver for STiH41x series"
125         depends on ARCH_STI
126         depends on HAS_IOMEM
127         depends on OF
128         select GENERIC_PHY
129         help
130           Enable this to support the miphy transceiver (for SATA/PCIE)
131           that is part of STMicroelectronics STiH41x SoC series.
132
133 config PHY_RCAR_GEN2
134         tristate "Renesas R-Car generation 2 USB PHY driver"
135         depends on ARCH_RENESAS
136         depends on GENERIC_PHY
137         help
138           Support for USB PHY found on Renesas R-Car generation 2 SoCs.
139
140 config PHY_RCAR_GEN3_USB2
141         tristate "Renesas R-Car generation 3 USB 2.0 PHY driver"
142         depends on ARCH_RENESAS
143         depends on EXTCON
144         select GENERIC_PHY
145         help
146           Support for USB 2.0 PHY found on Renesas R-Car generation 3 SoCs.
147
148 config OMAP_CONTROL_PHY
149         tristate "OMAP CONTROL PHY Driver"
150         depends on ARCH_OMAP2PLUS || COMPILE_TEST
151         help
152           Enable this to add support for the PHY part present in the control
153           module. This driver has API to power on the USB2 PHY and to write to
154           the mailbox. The mailbox is present only in omap4 and the register to
155           power on the USB2 PHY is present in OMAP4 and OMAP5. OMAP5 has an
156           additional register to power on USB3 PHY/SATA PHY/PCIE PHY
157           (PIPE3 PHY).
158
159 config OMAP_USB2
160         tristate "OMAP USB2 PHY Driver"
161         depends on ARCH_OMAP2PLUS
162         depends on USB_SUPPORT
163         select GENERIC_PHY
164         select USB_PHY
165         select OMAP_CONTROL_PHY
166         depends on OMAP_OCP2SCP
167         help
168           Enable this to support the transceiver that is part of SOC. This
169           driver takes care of all the PHY functionality apart from comparator.
170           The USB OTG controller communicates with the comparator using this
171           driver.
172
173 config TI_PIPE3
174         tristate "TI PIPE3 PHY Driver"
175         depends on ARCH_OMAP2PLUS || COMPILE_TEST
176         select GENERIC_PHY
177         select OMAP_CONTROL_PHY
178         depends on OMAP_OCP2SCP
179         help
180           Enable this to support the PIPE3 PHY that is part of TI SOCs. This
181           driver takes care of all the PHY functionality apart from comparator.
182           This driver interacts with the "OMAP Control PHY Driver" to power
183           on/off the PHY.
184
185 config TWL4030_USB
186         tristate "TWL4030 USB Transceiver Driver"
187         depends on TWL4030_CORE && REGULATOR_TWL4030 && USB_MUSB_OMAP2PLUS
188         depends on USB_SUPPORT
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
197 config 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
206 config 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
213 config 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
228 config 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
236 config 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
244 config 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
254 config 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         select GENERIC_PHY
261         help
262           Enable this to support the transceiver that is part of Allwinner
263           sunxi SoCs.
264
265           This driver controls the entire USB PHY block, both the USB OTG
266           parts, as well as the 2 regular USB 2 host PHYs.
267
268 config PHY_SUN9I_USB
269         tristate "Allwinner sun9i SoC USB PHY driver"
270         depends on ARCH_SUNXI && HAS_IOMEM && OF
271         depends on RESET_CONTROLLER
272         depends on USB_SUPPORT
273         select USB_COMMON
274         select GENERIC_PHY
275         help
276           Enable this to support the transceiver that is part of Allwinner
277           sun9i SoCs.
278
279           This driver controls each individual USB 2 host PHY.
280
281 config PHY_SAMSUNG_USB2
282         tristate "Samsung USB 2.0 PHY driver"
283         depends on HAS_IOMEM
284         depends on USB_EHCI_EXYNOS || USB_OHCI_EXYNOS || USB_DWC2
285         select GENERIC_PHY
286         select MFD_SYSCON
287         default ARCH_EXYNOS
288         help
289           Enable this to support the Samsung USB 2.0 PHY driver for Samsung
290           SoCs. This driver provides the interface for USB 2.0 PHY. Support
291           for particular PHYs will be enabled based on the SoC type in addition
292           to this driver.
293
294 config PHY_S5PV210_USB2
295         bool "Support for S5PV210"
296         depends on PHY_SAMSUNG_USB2
297         depends on ARCH_S5PV210
298         help
299           Enable USB PHY support for S5PV210. This option requires that Samsung
300           USB 2.0 PHY driver is enabled and means that support for this
301           particular SoC is compiled in the driver. In case of S5PV210 two phys
302           are available - device and host.
303
304 config PHY_EXYNOS4210_USB2
305         bool
306         depends on PHY_SAMSUNG_USB2
307         default CPU_EXYNOS4210
308
309 config PHY_EXYNOS4X12_USB2
310         bool
311         depends on PHY_SAMSUNG_USB2
312         default SOC_EXYNOS3250 || SOC_EXYNOS4212 || SOC_EXYNOS4412
313
314 config PHY_EXYNOS5250_USB2
315         bool
316         depends on PHY_SAMSUNG_USB2
317         default SOC_EXYNOS5250 || SOC_EXYNOS5420
318
319 config PHY_EXYNOS5_USBDRD
320         tristate "Exynos5 SoC series USB DRD PHY driver"
321         depends on ARCH_EXYNOS && OF
322         depends on HAS_IOMEM
323         depends on USB_DWC3_EXYNOS
324         select GENERIC_PHY
325         select MFD_SYSCON
326         default y
327         help
328           Enable USB DRD PHY support for Exynos 5 SoC series.
329           This driver provides PHY interface for USB 3.0 DRD controller
330           present on Exynos5 SoC series.
331
332 config PHY_PISTACHIO_USB
333         tristate "IMG Pistachio USB2.0 PHY driver"
334         depends on MACH_PISTACHIO
335         select GENERIC_PHY
336         help
337           Enable this to support the USB2.0 PHY on the IMG Pistachio SoC.
338
339 config PHY_QCOM_APQ8064_SATA
340         tristate "Qualcomm APQ8064 SATA SerDes/PHY driver"
341         depends on ARCH_QCOM
342         depends on HAS_IOMEM
343         depends on OF
344         select GENERIC_PHY
345
346 config PHY_QCOM_IPQ806X_SATA
347         tristate "Qualcomm IPQ806x SATA SerDes/PHY driver"
348         depends on ARCH_QCOM
349         depends on HAS_IOMEM
350         depends on OF
351         select GENERIC_PHY
352
353 config PHY_ROCKCHIP_USB
354         tristate "Rockchip USB2 PHY Driver"
355         depends on ARCH_ROCKCHIP && OF
356         select GENERIC_PHY
357         help
358           Enable this to support the Rockchip USB 2.0 PHY.
359
360 config PHY_ROCKCHIP_EMMC
361         tristate "Rockchip EMMC PHY Driver"
362         depends on ARCH_ROCKCHIP && OF
363         select GENERIC_PHY
364         help
365           Enable this to support the Rockchip EMMC PHY.
366
367 config PHY_ROCKCHIP_DP
368         tristate "Rockchip Display Port PHY Driver"
369         depends on ARCH_ROCKCHIP && OF
370         select GENERIC_PHY
371         help
372           Enable this to support the Rockchip Display Port PHY.
373
374 config PHY_ST_SPEAR1310_MIPHY
375         tristate "ST SPEAR1310-MIPHY driver"
376         select GENERIC_PHY
377         depends on MACH_SPEAR1310 || COMPILE_TEST
378         help
379           Support for ST SPEAr1310 MIPHY which can be used for PCIe and SATA.
380
381 config PHY_ST_SPEAR1340_MIPHY
382         tristate "ST SPEAR1340-MIPHY driver"
383         select GENERIC_PHY
384         depends on MACH_SPEAR1340 || COMPILE_TEST
385         help
386           Support for ST SPEAr1340 MIPHY which can be used for PCIe and SATA.
387
388 config PHY_XGENE
389         tristate "APM X-Gene 15Gbps PHY support"
390         depends on HAS_IOMEM && OF && (ARM64 || COMPILE_TEST)
391         select GENERIC_PHY
392         help
393           This option enables support for APM X-Gene SoC multi-purpose PHY.
394
395 config PHY_STIH407_USB
396         tristate "STMicroelectronics USB2 picoPHY driver for STiH407 family"
397         depends on RESET_CONTROLLER
398         depends on ARCH_STI || COMPILE_TEST
399         select GENERIC_PHY
400         help
401           Enable this support to enable the picoPHY device used by USB2
402           and USB3 controllers on STMicroelectronics STiH407 SoC families.
403
404 config PHY_STIH41X_USB
405         tristate "STMicroelectronics USB2 PHY driver for STiH41x series"
406         depends on ARCH_STI
407         select GENERIC_PHY
408         help
409           Enable this to support the USB transceiver that is part of
410           STMicroelectronics STiH41x SoC series.
411
412 config PHY_QCOM_UFS
413         tristate "Qualcomm UFS PHY driver"
414         depends on OF && ARCH_QCOM
415         select GENERIC_PHY
416         help
417           Support for UFS PHY on QCOM chipsets.
418
419 config PHY_TUSB1210
420         tristate "TI TUSB1210 ULPI PHY module"
421         depends on USB_ULPI_BUS
422         select GENERIC_PHY
423         help
424           Support for TI TUSB1210 USB ULPI PHY.
425
426 config PHY_BRCM_SATA
427         tristate "Broadcom SATA PHY driver"
428         depends on ARCH_BRCMSTB || ARCH_BCM_IPROC || BMIPS_GENERIC || COMPILE_TEST
429         depends on OF
430         select GENERIC_PHY
431         default ARCH_BCM_IPROC
432         help
433           Enable this to support the Broadcom SATA PHY.
434           If unsure, say N.
435
436 config PHY_CYGNUS_PCIE
437         tristate "Broadcom Cygnus PCIe PHY driver"
438         depends on OF && (ARCH_BCM_CYGNUS || COMPILE_TEST)
439         select GENERIC_PHY
440         default ARCH_BCM_CYGNUS
441         help
442           Enable this to support the Broadcom Cygnus PCIe PHY.
443           If unsure, say N.
444
445 source "drivers/phy/tegra/Kconfig"
446
447 endmenu