Merge branch 'fixes' of git://git.armlinux.org.uk/~rmk/linux-arm
[platform/kernel/linux-starfive.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_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
25 config 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
32 config ARMADA375_USBCLUSTER_PHY
33         def_bool y
34         depends on MACH_ARMADA_375 || COMPILE_TEST
35         depends on OF && HAS_IOMEM
36         select GENERIC_PHY
37
38 config 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
47 config 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
57 config 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
68 config 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
79 config 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
90 config 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
96 config 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
104 config 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
114 config 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
121 config PHY_RCAR_GEN3_USB2
122         tristate "Renesas R-Car generation 3 USB 2.0 PHY driver"
123         depends on OF && ARCH_SHMOBILE
124         select GENERIC_PHY
125         help
126           Support for USB 2.0 PHY found on Renesas R-Car generation 3 SoCs.
127
128 config OMAP_CONTROL_PHY
129         tristate "OMAP CONTROL PHY Driver"
130         depends on ARCH_OMAP2PLUS || COMPILE_TEST
131         help
132           Enable this to add support for the PHY part present in the control
133           module. This driver has API to power on the USB2 PHY and to write to
134           the mailbox. The mailbox is present only in omap4 and the register to
135           power on the USB2 PHY is present in OMAP4 and OMAP5. OMAP5 has an
136           additional register to power on USB3 PHY/SATA PHY/PCIE PHY
137           (PIPE3 PHY).
138
139 config OMAP_USB2
140         tristate "OMAP USB2 PHY Driver"
141         depends on ARCH_OMAP2PLUS
142         depends on USB_SUPPORT
143         select GENERIC_PHY
144         select USB_PHY
145         select OMAP_CONTROL_PHY
146         depends on OMAP_OCP2SCP
147         help
148           Enable this to support the transceiver that is part of SOC. This
149           driver takes care of all the PHY functionality apart from comparator.
150           The USB OTG controller communicates with the comparator using this
151           driver.
152
153 config TI_PIPE3
154         tristate "TI PIPE3 PHY Driver"
155         depends on ARCH_OMAP2PLUS || COMPILE_TEST
156         select GENERIC_PHY
157         select OMAP_CONTROL_PHY
158         depends on OMAP_OCP2SCP
159         help
160           Enable this to support the PIPE3 PHY that is part of TI SOCs. This
161           driver takes care of all the PHY functionality apart from comparator.
162           This driver interacts with the "OMAP Control PHY Driver" to power
163           on/off the PHY.
164
165 config TWL4030_USB
166         tristate "TWL4030 USB Transceiver Driver"
167         depends on TWL4030_CORE && REGULATOR_TWL4030 && USB_MUSB_OMAP2PLUS
168         depends on USB_SUPPORT
169         select GENERIC_PHY
170         select USB_PHY
171         help
172           Enable this to support the USB OTG transceiver on TWL4030
173           family chips (including the TWL5030 and TPS659x0 devices).
174           This transceiver supports high and full speed devices plus,
175           in host mode, low speed.
176
177 config PHY_EXYNOS_DP_VIDEO
178         tristate "EXYNOS SoC series Display Port PHY driver"
179         depends on OF
180         depends on ARCH_EXYNOS || COMPILE_TEST
181         default ARCH_EXYNOS
182         select GENERIC_PHY
183         help
184           Support for Display Port PHY found on Samsung EXYNOS SoCs.
185
186 config BCM_KONA_USB2_PHY
187         tristate "Broadcom Kona USB2 PHY Driver"
188         depends on HAS_IOMEM
189         select GENERIC_PHY
190         help
191           Enable this to support the Broadcom Kona USB 2.0 PHY.
192
193 config PHY_EXYNOS5250_SATA
194         tristate "Exynos5250 Sata SerDes/PHY driver"
195         depends on SOC_EXYNOS5250
196         depends on HAS_IOMEM
197         depends on OF
198         select GENERIC_PHY
199         select I2C
200         select I2C_S3C2410
201         select MFD_SYSCON
202         help
203           Enable this to support SATA SerDes/Phy found on Samsung's
204           Exynos5250 based SoCs.This SerDes/Phy supports SATA 1.5 Gb/s,
205           SATA 3.0 Gb/s, SATA 6.0 Gb/s speeds. It supports one SATA host
206           port to accept one SATA device.
207
208 config PHY_HIX5HD2_SATA
209         tristate "HIX5HD2 SATA PHY Driver"
210         depends on ARCH_HIX5HD2 && OF && HAS_IOMEM
211         select GENERIC_PHY
212         select MFD_SYSCON
213         help
214           Support for SATA PHY on Hisilicon hix5hd2 Soc.
215
216 config PHY_MT65XX_USB3
217         tristate "Mediatek USB3.0 PHY Driver"
218         depends on ARCH_MEDIATEK && OF
219         select GENERIC_PHY
220         help
221           Say 'Y' here to add support for Mediatek USB3.0 PHY driver
222           for mt65xx SoCs. it supports two usb2.0 ports and
223           one usb3.0 port.
224
225 config PHY_HI6220_USB
226         tristate "hi6220 USB PHY support"
227         depends on (ARCH_HISI && ARM64) || COMPILE_TEST
228         select GENERIC_PHY
229         select MFD_SYSCON
230         help
231           Enable this to support the HISILICON HI6220 USB PHY.
232
233           To compile this driver as a module, choose M here.
234
235 config PHY_SUN4I_USB
236         tristate "Allwinner sunxi SoC USB PHY driver"
237         depends on ARCH_SUNXI && HAS_IOMEM && OF
238         depends on RESET_CONTROLLER
239         depends on EXTCON
240         depends on POWER_SUPPLY
241         select GENERIC_PHY
242         help
243           Enable this to support the transceiver that is part of Allwinner
244           sunxi SoCs.
245
246           This driver controls the entire USB PHY block, both the USB OTG
247           parts, as well as the 2 regular USB 2 host PHYs.
248
249 config PHY_SUN9I_USB
250         tristate "Allwinner sun9i SoC USB PHY driver"
251         depends on ARCH_SUNXI && HAS_IOMEM && OF
252         depends on RESET_CONTROLLER
253         depends on USB_COMMON
254         select GENERIC_PHY
255         help
256           Enable this to support the transceiver that is part of Allwinner
257           sun9i SoCs.
258
259           This driver controls each individual USB 2 host PHY.
260
261 config PHY_SAMSUNG_USB2
262         tristate "Samsung USB 2.0 PHY driver"
263         depends on HAS_IOMEM
264         depends on USB_EHCI_EXYNOS || USB_OHCI_EXYNOS || USB_DWC2
265         select GENERIC_PHY
266         select MFD_SYSCON
267         default ARCH_EXYNOS
268         help
269           Enable this to support the Samsung USB 2.0 PHY driver for Samsung
270           SoCs. This driver provides the interface for USB 2.0 PHY. Support
271           for particular PHYs will be enabled based on the SoC type in addition
272           to this driver.
273
274 config PHY_S5PV210_USB2
275         bool "Support for S5PV210"
276         depends on PHY_SAMSUNG_USB2
277         depends on ARCH_S5PV210
278         help
279           Enable USB PHY support for S5PV210. This option requires that Samsung
280           USB 2.0 PHY driver is enabled and means that support for this
281           particular SoC is compiled in the driver. In case of S5PV210 two phys
282           are available - device and host.
283
284 config PHY_EXYNOS4210_USB2
285         bool
286         depends on PHY_SAMSUNG_USB2
287         default CPU_EXYNOS4210
288
289 config PHY_EXYNOS4X12_USB2
290         bool
291         depends on PHY_SAMSUNG_USB2
292         default SOC_EXYNOS3250 || SOC_EXYNOS4212 || SOC_EXYNOS4412
293
294 config PHY_EXYNOS5250_USB2
295         bool
296         depends on PHY_SAMSUNG_USB2
297         default SOC_EXYNOS5250 || SOC_EXYNOS5420
298
299 config PHY_EXYNOS5_USBDRD
300         tristate "Exynos5 SoC series USB DRD PHY driver"
301         depends on ARCH_EXYNOS && OF
302         depends on HAS_IOMEM
303         depends on USB_DWC3_EXYNOS
304         select GENERIC_PHY
305         select MFD_SYSCON
306         default y
307         help
308           Enable USB DRD PHY support for Exynos 5 SoC series.
309           This driver provides PHY interface for USB 3.0 DRD controller
310           present on Exynos5 SoC series.
311
312 config PHY_PISTACHIO_USB
313         tristate "IMG Pistachio USB2.0 PHY driver"
314         depends on MACH_PISTACHIO
315         select GENERIC_PHY
316         help
317           Enable this to support the USB2.0 PHY on the IMG Pistachio SoC.
318
319 config PHY_QCOM_APQ8064_SATA
320         tristate "Qualcomm APQ8064 SATA SerDes/PHY driver"
321         depends on ARCH_QCOM
322         depends on HAS_IOMEM
323         depends on OF
324         select GENERIC_PHY
325
326 config PHY_QCOM_IPQ806X_SATA
327         tristate "Qualcomm IPQ806x SATA SerDes/PHY driver"
328         depends on ARCH_QCOM
329         depends on HAS_IOMEM
330         depends on OF
331         select GENERIC_PHY
332
333 config PHY_ROCKCHIP_USB
334         tristate "Rockchip USB2 PHY Driver"
335         depends on ARCH_ROCKCHIP && OF
336         select GENERIC_PHY
337         help
338           Enable this to support the Rockchip USB 2.0 PHY.
339
340 config PHY_ROCKCHIP_EMMC
341         tristate "Rockchip EMMC PHY Driver"
342         depends on ARCH_ROCKCHIP && OF
343         select GENERIC_PHY
344         help
345           Enable this to support the Rockchip EMMC PHY.
346
347 config PHY_ROCKCHIP_DP
348         tristate "Rockchip Display Port PHY Driver"
349         depends on ARCH_ROCKCHIP && OF
350         select GENERIC_PHY
351         help
352           Enable this to support the Rockchip Display Port PHY.
353
354 config PHY_ST_SPEAR1310_MIPHY
355         tristate "ST SPEAR1310-MIPHY driver"
356         select GENERIC_PHY
357         depends on MACH_SPEAR1310 || COMPILE_TEST
358         help
359           Support for ST SPEAr1310 MIPHY which can be used for PCIe and SATA.
360
361 config PHY_ST_SPEAR1340_MIPHY
362         tristate "ST SPEAR1340-MIPHY driver"
363         select GENERIC_PHY
364         depends on MACH_SPEAR1340 || COMPILE_TEST
365         help
366           Support for ST SPEAr1340 MIPHY which can be used for PCIe and SATA.
367
368 config PHY_XGENE
369         tristate "APM X-Gene 15Gbps PHY support"
370         depends on HAS_IOMEM && OF && (ARM64 || COMPILE_TEST)
371         select GENERIC_PHY
372         help
373           This option enables support for APM X-Gene SoC multi-purpose PHY.
374
375 config PHY_STIH407_USB
376         tristate "STMicroelectronics USB2 picoPHY driver for STiH407 family"
377         depends on RESET_CONTROLLER
378         depends on ARCH_STI || COMPILE_TEST
379         select GENERIC_PHY
380         help
381           Enable this support to enable the picoPHY device used by USB2
382           and USB3 controllers on STMicroelectronics STiH407 SoC families.
383
384 config PHY_STIH41X_USB
385         tristate "STMicroelectronics USB2 PHY driver for STiH41x series"
386         depends on ARCH_STI
387         select GENERIC_PHY
388         help
389           Enable this to support the USB transceiver that is part of
390           STMicroelectronics STiH41x SoC series.
391
392 config PHY_QCOM_UFS
393         tristate "Qualcomm UFS PHY driver"
394         depends on OF && ARCH_QCOM
395         select GENERIC_PHY
396         help
397           Support for UFS PHY on QCOM chipsets.
398
399 config PHY_TUSB1210
400         tristate "TI TUSB1210 ULPI PHY module"
401         depends on USB_ULPI_BUS
402         select GENERIC_PHY
403         help
404           Support for TI TUSB1210 USB ULPI PHY.
405
406 config PHY_BRCMSTB_SATA
407         tristate "Broadcom STB SATA PHY driver"
408         depends on ARCH_BRCMSTB || BMIPS_GENERIC
409         depends on OF
410         select GENERIC_PHY
411         help
412           Enable this to support the SATA3 PHY on 28nm or 40nm Broadcom STB SoCs.
413           Likely useful only with CONFIG_SATA_BRCMSTB enabled.
414
415 config PHY_CYGNUS_PCIE
416         tristate "Broadcom Cygnus PCIe PHY driver"
417         depends on OF && (ARCH_BCM_CYGNUS || COMPILE_TEST)
418         select GENERIC_PHY
419         default ARCH_BCM_CYGNUS
420         help
421           Enable this to support the Broadcom Cygnus PCIe PHY.
422           If unsure, say N.
423
424 endmenu