phy: phy-exynos-pcie: Add support for Exynos PCIe PHY
[platform/kernel/linux-rpi.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_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
36 config 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
43 config 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
50 config 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
56 config 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
66 config 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
75 config 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
85 config 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
96 config 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
107 config 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
118 config 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
124 config 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
132 config 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
139 config 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
147 config 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
158 config 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
172 config 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
184 config 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
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         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
270 config 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
283 config 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
296 config 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
306 config PHY_EXYNOS4210_USB2
307         bool
308         depends on PHY_SAMSUNG_USB2
309         default CPU_EXYNOS4210
310
311 config PHY_EXYNOS4X12_USB2
312         bool
313         depends on PHY_SAMSUNG_USB2
314         default SOC_EXYNOS3250 || SOC_EXYNOS4212 || SOC_EXYNOS4412
315
316 config PHY_EXYNOS5250_USB2
317         bool
318         depends on PHY_SAMSUNG_USB2
319         default SOC_EXYNOS5250 || SOC_EXYNOS5420
320
321 config 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
334 config 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
342 config 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
349 config 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
356 config 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
363 config 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
370 config 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 USB_SUPPORT
375         select GENERIC_PHY
376         select USB_COMMON
377         help
378           Support for Rockchip USB2.0 PHY with Innosilicon IP block.
379
380 config PHY_ROCKCHIP_EMMC
381         tristate "Rockchip EMMC PHY Driver"
382         depends on ARCH_ROCKCHIP && OF
383         select GENERIC_PHY
384         help
385           Enable this to support the Rockchip EMMC PHY.
386
387 config PHY_ROCKCHIP_DP
388         tristate "Rockchip Display Port PHY Driver"
389         depends on ARCH_ROCKCHIP && OF
390         select GENERIC_PHY
391         help
392           Enable this to support the Rockchip Display Port PHY.
393
394 config PHY_ROCKCHIP_PCIE
395         tristate "Rockchip PCIe PHY Driver"
396         depends on (ARCH_ROCKCHIP && OF) || COMPILE_TEST
397         select GENERIC_PHY
398         select MFD_SYSCON
399         help
400           Enable this to support the Rockchip PCIe PHY.
401
402 config PHY_ROCKCHIP_TYPEC
403         tristate "Rockchip TYPEC PHY Driver"
404         depends on OF && (ARCH_ROCKCHIP || COMPILE_TEST)
405         select EXTCON
406         select GENERIC_PHY
407         select RESET_CONTROLLER
408         help
409           Enable this to support the Rockchip USB TYPEC PHY.
410
411 config PHY_ST_SPEAR1310_MIPHY
412         tristate "ST SPEAR1310-MIPHY driver"
413         select GENERIC_PHY
414         depends on MACH_SPEAR1310 || COMPILE_TEST
415         help
416           Support for ST SPEAr1310 MIPHY which can be used for PCIe and SATA.
417
418 config PHY_ST_SPEAR1340_MIPHY
419         tristate "ST SPEAR1340-MIPHY driver"
420         select GENERIC_PHY
421         depends on MACH_SPEAR1340 || COMPILE_TEST
422         help
423           Support for ST SPEAr1340 MIPHY which can be used for PCIe and SATA.
424
425 config PHY_XGENE
426         tristate "APM X-Gene 15Gbps PHY support"
427         depends on HAS_IOMEM && OF && (ARM64 || COMPILE_TEST)
428         select GENERIC_PHY
429         help
430           This option enables support for APM X-Gene SoC multi-purpose PHY.
431
432 config PHY_STIH407_USB
433         tristate "STMicroelectronics USB2 picoPHY driver for STiH407 family"
434         depends on RESET_CONTROLLER
435         depends on ARCH_STI || COMPILE_TEST
436         select GENERIC_PHY
437         help
438           Enable this support to enable the picoPHY device used by USB2
439           and USB3 controllers on STMicroelectronics STiH407 SoC families.
440
441 config PHY_QCOM_UFS
442         tristate "Qualcomm UFS PHY driver"
443         depends on OF && ARCH_QCOM
444         select GENERIC_PHY
445         help
446           Support for UFS PHY on QCOM chipsets.
447
448 config PHY_TUSB1210
449         tristate "TI TUSB1210 ULPI PHY module"
450         depends on USB_ULPI_BUS
451         select GENERIC_PHY
452         help
453           Support for TI TUSB1210 USB ULPI PHY.
454
455 config PHY_BRCM_SATA
456         tristate "Broadcom SATA PHY driver"
457         depends on ARCH_BRCMSTB || ARCH_BCM_IPROC || BMIPS_GENERIC || COMPILE_TEST
458         depends on OF
459         select GENERIC_PHY
460         default ARCH_BCM_IPROC
461         help
462           Enable this to support the Broadcom SATA PHY.
463           If unsure, say N.
464
465 config PHY_CYGNUS_PCIE
466         tristate "Broadcom Cygnus PCIe PHY driver"
467         depends on OF && (ARCH_BCM_CYGNUS || COMPILE_TEST)
468         select GENERIC_PHY
469         default ARCH_BCM_CYGNUS
470         help
471           Enable this to support the Broadcom Cygnus PCIe PHY.
472           If unsure, say N.
473
474 source "drivers/phy/tegra/Kconfig"
475
476 config PHY_NS2_PCIE
477         tristate "Broadcom Northstar2 PCIe PHY driver"
478         depends on OF && MDIO_BUS_MUX_BCM_IPROC
479         select GENERIC_PHY
480         default ARCH_BCM_IPROC
481         help
482           Enable this to support the Broadcom Northstar2 PCIe PHY.
483           If unsure, say N.
484
485 config PHY_MESON8B_USB2
486         tristate "Meson8b and GXBB USB2 PHY driver"
487         default ARCH_MESON
488         depends on OF && (ARCH_MESON || COMPILE_TEST)
489         depends on USB_SUPPORT
490         select USB_COMMON
491         select GENERIC_PHY
492         help
493           Enable this to support the Meson USB2 PHYs found in Meson8b
494           and GXBB SoCs.
495           If unsure, say N.
496
497 endmenu