Free Electrons

Embedded Linux Experts

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
#
# PHY
#

menu "PHY Subsystem"

config GENERIC_PHY
	bool "PHY Core"
	help
	  Generic PHY support.

	  This framework is designed to provide a generic interface for PHY
	  devices present in the kernel. This layer will have the generic
	  API by which phy drivers can create PHY using the phy framework and
	  phy users can obtain reference to the PHY. All the users of this
	  framework should select this config.

config PHY_BCM_NS_USB2
	tristate "Broadcom Northstar USB 2.0 PHY Driver"
	depends on ARCH_BCM_IPROC || COMPILE_TEST
	depends on HAS_IOMEM && OF
	select GENERIC_PHY
	help
	  Enable this to support Broadcom USB 2.0 PHY connected to the USB
	  controller on Northstar family.

config PHY_BCM_NS_USB3
	tristate "Broadcom Northstar USB 3.0 PHY Driver"
	depends on ARCH_BCM_IPROC || COMPILE_TEST
	depends on HAS_IOMEM && OF
	select GENERIC_PHY
	help
	  Enable this to support Broadcom USB 3.0 PHY connected to the USB
	  controller on Northstar family.

config PHY_BERLIN_USB
	tristate "Marvell Berlin USB PHY Driver"
	depends on ARCH_BERLIN && RESET_CONTROLLER && HAS_IOMEM && OF
	select GENERIC_PHY
	help
	  Enable this to support the USB PHY on Marvell Berlin SoCs.

config PHY_BERLIN_SATA
	tristate "Marvell Berlin SATA PHY driver"
	depends on ARCH_BERLIN && HAS_IOMEM && OF
	select GENERIC_PHY
	help
	  Enable this to support the SATA PHY on Marvell Berlin SoCs.

config ARMADA375_USBCLUSTER_PHY
	def_bool y
	depends on MACH_ARMADA_375 || COMPILE_TEST
	depends on OF && HAS_IOMEM
	select GENERIC_PHY

config PHY_DA8XX_USB
	tristate "TI DA8xx USB PHY Driver"
	depends on ARCH_DAVINCI_DA8XX
	select GENERIC_PHY
	select MFD_SYSCON
	help
	  Enable this to support the USB PHY on DA8xx SoCs.

	  This driver controls both the USB 1.1 PHY and the USB 2.0 PHY.

config PHY_DM816X_USB
	tristate "TI dm816x USB PHY driver"
	depends on ARCH_OMAP2PLUS
	depends on USB_SUPPORT
	select GENERIC_PHY
	select USB_PHY
	help
	  Enable this for dm816x USB to work.

config PHY_EXYNOS_MIPI_VIDEO
	tristate "S5P/EXYNOS SoC series MIPI CSI-2/DSI PHY driver"
	depends on HAS_IOMEM
	depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
	select GENERIC_PHY
	default y if ARCH_S5PV210 || ARCH_EXYNOS
	help
	  Support for MIPI CSI-2 and MIPI DSI DPHY found on Samsung S5P
	  and EXYNOS SoCs.

config PHY_LPC18XX_USB_OTG
	tristate "NXP LPC18xx/43xx SoC USB OTG PHY driver"
	depends on OF && (ARCH_LPC18XX || COMPILE_TEST)
	depends on MFD_SYSCON
	select GENERIC_PHY
	help
	  Enable this to support NXP LPC18xx/43xx internal USB OTG PHY.

	  This driver is need for USB0 support on LPC18xx/43xx and takes
	  care of enabling and clock setup.

config PHY_PXA_28NM_HSIC
	tristate "Marvell USB HSIC 28nm PHY Driver"
	depends on HAS_IOMEM
	select GENERIC_PHY
	help
	  Enable this to support Marvell USB HSIC PHY driver for Marvell
	  SoC. This driver will do the PHY initialization and shutdown.
	  The PHY driver will be used by Marvell ehci driver.

	  To compile this driver as a module, choose M here.

config PHY_PXA_28NM_USB2
	tristate "Marvell USB 2.0 28nm PHY Driver"
	depends on HAS_IOMEM
	select GENERIC_PHY
	help
	  Enable this to support Marvell USB 2.0 PHY driver for Marvell
	  SoC. This driver will do the PHY initialization and shutdown.
	  The PHY driver will be used by Marvell udc/ehci/otg driver.

	  To compile this driver as a module, choose M here.

config PHY_MVEBU_SATA
	def_bool y
	depends on ARCH_DOVE || MACH_DOVE || MACH_KIRKWOOD
	depends on OF
	select GENERIC_PHY

config PHY_MIPHY28LP
	tristate "STMicroelectronics MIPHY28LP PHY driver for STiH407"
	depends on ARCH_STI
	select GENERIC_PHY
	help
	  Enable this to support the miphy transceiver (for SATA/PCIE/USB3)
	  that is part of STMicroelectronics STiH407 SoC.

config PHY_RCAR_GEN2
	tristate "Renesas R-Car generation 2 USB PHY driver"
	depends on ARCH_RENESAS
	depends on GENERIC_PHY
	help
	  Support for USB PHY found on Renesas R-Car generation 2 SoCs.

config PHY_RCAR_GEN3_USB2
	tristate "Renesas R-Car generation 3 USB 2.0 PHY driver"
	depends on ARCH_RENESAS
	depends on EXTCON
	select GENERIC_PHY
	help
	  Support for USB 2.0 PHY found on Renesas R-Car generation 3 SoCs.

config OMAP_CONTROL_PHY
	tristate "OMAP CONTROL PHY Driver"
	depends on ARCH_OMAP2PLUS || COMPILE_TEST
	help
	  Enable this to add support for the PHY part present in the control
	  module. This driver has API to power on the USB2 PHY and to write to
	  the mailbox. The mailbox is present only in omap4 and the register to
	  power on the USB2 PHY is present in OMAP4 and OMAP5. OMAP5 has an
	  additional register to power on USB3 PHY/SATA PHY/PCIE PHY
	  (PIPE3 PHY).

config OMAP_USB2
	tristate "OMAP USB2 PHY Driver"
	depends on ARCH_OMAP2PLUS
	depends on USB_SUPPORT
	select GENERIC_PHY
	select USB_PHY
	select OMAP_CONTROL_PHY
	depends on OMAP_OCP2SCP
	help
	  Enable this to support the transceiver that is part of SOC. This
	  driver takes care of all the PHY functionality apart from comparator.
	  The USB OTG controller communicates with the comparator using this
	  driver.

config TI_PIPE3
	tristate "TI PIPE3 PHY Driver"
	depends on ARCH_OMAP2PLUS || COMPILE_TEST
	select GENERIC_PHY
	select OMAP_CONTROL_PHY
	depends on OMAP_OCP2SCP
	help
	  Enable this to support the PIPE3 PHY that is part of TI SOCs. This
	  driver takes care of all the PHY functionality apart from comparator.
	  This driver interacts with the "OMAP Control PHY Driver" to power
	  on/off the PHY.

config TWL4030_USB
	tristate "TWL4030 USB Transceiver Driver"
	depends on TWL4030_CORE && REGULATOR_TWL4030 && USB_MUSB_OMAP2PLUS
	depends on USB_SUPPORT
	depends on USB_GADGET || !USB_GADGET # if USB_GADGET=m, this can't 'y'
	select GENERIC_PHY
	select USB_PHY
	help
	  Enable this to support the USB OTG transceiver on TWL4030
	  family chips (including the TWL5030 and TPS659x0 devices).
	  This transceiver supports high and full speed devices plus,
	  in host mode, low speed.

config PHY_EXYNOS_DP_VIDEO
	tristate "EXYNOS SoC series Display Port PHY driver"
	depends on OF
	depends on ARCH_EXYNOS || COMPILE_TEST
	default ARCH_EXYNOS
	select GENERIC_PHY
	help
	  Support for Display Port PHY found on Samsung EXYNOS SoCs.

config BCM_KONA_USB2_PHY
	tristate "Broadcom Kona USB2 PHY Driver"
	depends on HAS_IOMEM
	select GENERIC_PHY
	help
	  Enable this to support the Broadcom Kona USB 2.0 PHY.

config PHY_EXYNOS5250_SATA
	tristate "Exynos5250 Sata SerDes/PHY driver"
	depends on SOC_EXYNOS5250
	depends on HAS_IOMEM
	depends on OF
	select GENERIC_PHY
	select I2C
	select I2C_S3C2410
	select MFD_SYSCON
	help
	  Enable this to support SATA SerDes/Phy found on Samsung's
	  Exynos5250 based SoCs.This SerDes/Phy supports SATA 1.5 Gb/s,
	  SATA 3.0 Gb/s, SATA 6.0 Gb/s speeds. It supports one SATA host
	  port to accept one SATA device.

config PHY_HIX5HD2_SATA
	tristate "HIX5HD2 SATA PHY Driver"
	depends on ARCH_HIX5HD2 && OF && HAS_IOMEM
	select GENERIC_PHY
	select MFD_SYSCON
	help
	  Support for SATA PHY on Hisilicon hix5hd2 Soc.

config PHY_MT65XX_USB3
	tristate "Mediatek USB3.0 PHY Driver"
	depends on ARCH_MEDIATEK && OF
	select GENERIC_PHY
	help
	  Say 'Y' here to add support for Mediatek USB3.0 PHY driver,
	  it supports multiple usb2.0 and usb3.0 ports.

config PHY_HI6220_USB
	tristate "hi6220 USB PHY support"
	depends on (ARCH_HISI && ARM64) || COMPILE_TEST
	select GENERIC_PHY
	select MFD_SYSCON
	help
	  Enable this to support the HISILICON HI6220 USB PHY.

	  To compile this driver as a module, choose M here.

config PHY_SUN4I_USB
	tristate "Allwinner sunxi SoC USB PHY driver"
	depends on ARCH_SUNXI && HAS_IOMEM && OF
	depends on RESET_CONTROLLER
	depends on EXTCON
	depends on POWER_SUPPLY
	depends on USB_SUPPORT
	select GENERIC_PHY
	select USB_COMMON
	help
	  Enable this to support the transceiver that is part of Allwinner
	  sunxi SoCs.

	  This driver controls the entire USB PHY block, both the USB OTG
	  parts, as well as the 2 regular USB 2 host PHYs.

config PHY_SUN9I_USB
	tristate "Allwinner sun9i SoC USB PHY driver"
	depends on ARCH_SUNXI && HAS_IOMEM && OF
	depends on RESET_CONTROLLER
	depends on USB_SUPPORT
	select USB_COMMON
	select GENERIC_PHY
	help
	  Enable this to support the transceiver that is part of Allwinner
	  sun9i SoCs.

	  This driver controls each individual USB 2 host PHY.

config PHY_SAMSUNG_USB2
	tristate "Samsung USB 2.0 PHY driver"
	depends on HAS_IOMEM
	depends on USB_EHCI_EXYNOS || USB_OHCI_EXYNOS || USB_DWC2
	select GENERIC_PHY
	select MFD_SYSCON
	default ARCH_EXYNOS
	help
	  Enable this to support the Samsung USB 2.0 PHY driver for Samsung
	  SoCs. This driver provides the interface for USB 2.0 PHY. Support
	  for particular PHYs will be enabled based on the SoC type in addition
	  to this driver.

config PHY_S5PV210_USB2
	bool "Support for S5PV210"
	depends on PHY_SAMSUNG_USB2
	depends on ARCH_S5PV210
	help
	  Enable USB PHY support for S5PV210. This option requires that Samsung
	  USB 2.0 PHY driver is enabled and means that support for this
	  particular SoC is compiled in the driver. In case of S5PV210 two phys
	  are available - device and host.

config PHY_EXYNOS4210_USB2
	bool
	depends on PHY_SAMSUNG_USB2
	default CPU_EXYNOS4210

config PHY_EXYNOS4X12_USB2
	bool
	depends on PHY_SAMSUNG_USB2
	default SOC_EXYNOS3250 || SOC_EXYNOS4212 || SOC_EXYNOS4412

config PHY_EXYNOS5250_USB2
	bool
	depends on PHY_SAMSUNG_USB2
	default SOC_EXYNOS5250 || SOC_EXYNOS5420

config PHY_EXYNOS5_USBDRD
	tristate "Exynos5 SoC series USB DRD PHY driver"
	depends on ARCH_EXYNOS && OF
	depends on HAS_IOMEM
	depends on USB_DWC3_EXYNOS
	select GENERIC_PHY
	select MFD_SYSCON
	default y
	help
	  Enable USB DRD PHY support for Exynos 5 SoC series.
	  This driver provides PHY interface for USB 3.0 DRD controller
	  present on Exynos5 SoC series.

config PHY_EXYNOS_PCIE
	bool "Exynos PCIe PHY driver"
	depends on OF && (ARCH_EXYNOS || COMPILE_TEST)
	select GENERIC_PHY
	help
	  Enable PCIe PHY support for Exynos SoC series.
	  This driver provides PHY interface for Exynos PCIe controller.

config PHY_PISTACHIO_USB
	tristate "IMG Pistachio USB2.0 PHY driver"
	depends on MACH_PISTACHIO
	select GENERIC_PHY
	help
	  Enable this to support the USB2.0 PHY on the IMG Pistachio SoC.

config PHY_QCOM_APQ8064_SATA
	tristate "Qualcomm APQ8064 SATA SerDes/PHY driver"
	depends on ARCH_QCOM
	depends on HAS_IOMEM
	depends on OF
	select GENERIC_PHY

config PHY_QCOM_IPQ806X_SATA
	tristate "Qualcomm IPQ806x SATA SerDes/PHY driver"
	depends on ARCH_QCOM
	depends on HAS_IOMEM
	depends on OF
	select GENERIC_PHY

config PHY_ROCKCHIP_USB
	tristate "Rockchip USB2 PHY Driver"
	depends on ARCH_ROCKCHIP && OF
	select GENERIC_PHY
	help
	  Enable this to support the Rockchip USB 2.0 PHY.

config PHY_ROCKCHIP_INNO_USB2
	tristate "Rockchip INNO USB2PHY Driver"
	depends on (ARCH_ROCKCHIP || COMPILE_TEST) && OF
	depends on COMMON_CLK
	depends on EXTCON
	depends on USB_SUPPORT
	select GENERIC_PHY
	select USB_COMMON
	help
	  Support for Rockchip USB2.0 PHY with Innosilicon IP block.

config PHY_ROCKCHIP_EMMC
	tristate "Rockchip EMMC PHY Driver"
	depends on ARCH_ROCKCHIP && OF
	select GENERIC_PHY
	help
	  Enable this to support the Rockchip EMMC PHY.

config PHY_ROCKCHIP_DP
	tristate "Rockchip Display Port PHY Driver"
	depends on ARCH_ROCKCHIP && OF
	select GENERIC_PHY
	help
	  Enable this to support the Rockchip Display Port PHY.

config PHY_ROCKCHIP_PCIE
	tristate "Rockchip PCIe PHY Driver"
	depends on (ARCH_ROCKCHIP && OF) || COMPILE_TEST
	select GENERIC_PHY
	select MFD_SYSCON
	help
	  Enable this to support the Rockchip PCIe PHY.

config PHY_ROCKCHIP_TYPEC
	tristate "Rockchip TYPEC PHY Driver"
	depends on OF && (ARCH_ROCKCHIP || COMPILE_TEST)
	select EXTCON
	select GENERIC_PHY
	select RESET_CONTROLLER
	help
	  Enable this to support the Rockchip USB TYPEC PHY.

config PHY_ST_SPEAR1310_MIPHY
	tristate "ST SPEAR1310-MIPHY driver"
	select GENERIC_PHY
	depends on MACH_SPEAR1310 || COMPILE_TEST
	help
	  Support for ST SPEAr1310 MIPHY which can be used for PCIe and SATA.

config PHY_ST_SPEAR1340_MIPHY
	tristate "ST SPEAR1340-MIPHY driver"
	select GENERIC_PHY
	depends on MACH_SPEAR1340 || COMPILE_TEST
	help
	  Support for ST SPEAr1340 MIPHY which can be used for PCIe and SATA.

config PHY_XGENE
	tristate "APM X-Gene 15Gbps PHY support"
	depends on HAS_IOMEM && OF && (ARM64 || COMPILE_TEST)
	select GENERIC_PHY
	help
	  This option enables support for APM X-Gene SoC multi-purpose PHY.

config PHY_STIH407_USB
	tristate "STMicroelectronics USB2 picoPHY driver for STiH407 family"
	depends on RESET_CONTROLLER
	depends on ARCH_STI || COMPILE_TEST
	select GENERIC_PHY
	help
	  Enable this support to enable the picoPHY device used by USB2
	  and USB3 controllers on STMicroelectronics STiH407 SoC families.

config PHY_QCOM_QMP
	tristate "Qualcomm QMP PHY Driver"
	depends on OF && COMMON_CLK && (ARCH_QCOM || COMPILE_TEST)
	select GENERIC_PHY
	help
	  Enable this to support the QMP PHY transceiver that is used
	  with controllers such as PCIe, UFS, and USB on Qualcomm chips.

config PHY_QCOM_QUSB2
	tristate "Qualcomm QUSB2 PHY Driver"
	depends on OF && (ARCH_QCOM || COMPILE_TEST)
	depends on NVMEM || !NVMEM
	select GENERIC_PHY
	help
	  Enable this to support the HighSpeed QUSB2 PHY transceiver for USB
	  controllers on Qualcomm chips. This driver supports the high-speed
	  PHY which is usually paired with either the ChipIdea or Synopsys DWC3
	  USB IPs on MSM SOCs.

config PHY_QCOM_UFS
	tristate "Qualcomm UFS PHY driver"
	depends on OF && ARCH_QCOM
	select GENERIC_PHY
	help
	  Support for UFS PHY on QCOM chipsets.

config PHY_QCOM_USB_HS
	tristate "Qualcomm USB HS PHY module"
	depends on USB_ULPI_BUS
	depends on EXTCON || !EXTCON # if EXTCON=m, this cannot be built-in
	select GENERIC_PHY
	help
	  Support for the USB high-speed ULPI compliant phy on Qualcomm
	  chipsets.

config PHY_QCOM_USB_HSIC
	tristate "Qualcomm USB HSIC ULPI PHY module"
	depends on USB_ULPI_BUS
	select GENERIC_PHY
	help
	  Support for the USB HSIC ULPI compliant PHY on QCOM chipsets.

config PHY_TUSB1210
	tristate "TI TUSB1210 ULPI PHY module"
	depends on USB_ULPI_BUS
	select GENERIC_PHY
	help
	  Support for TI TUSB1210 USB ULPI PHY.

config PHY_BRCM_SATA
	tristate "Broadcom SATA PHY driver"
	depends on ARCH_BRCMSTB || ARCH_BCM_IPROC || BMIPS_GENERIC || COMPILE_TEST
	depends on OF
	select GENERIC_PHY
	default ARCH_BCM_IPROC
	help
	  Enable this to support the Broadcom SATA PHY.
	  If unsure, say N.

config PHY_CYGNUS_PCIE
	tristate "Broadcom Cygnus PCIe PHY driver"
	depends on OF && (ARCH_BCM_CYGNUS || COMPILE_TEST)
	select GENERIC_PHY
	default ARCH_BCM_CYGNUS
	help
	  Enable this to support the Broadcom Cygnus PCIe PHY.
	  If unsure, say N.

source "drivers/phy/tegra/Kconfig"

config PHY_NS2_PCIE
	tristate "Broadcom Northstar2 PCIe PHY driver"
	depends on OF && MDIO_BUS_MUX_BCM_IPROC
	select GENERIC_PHY
	default ARCH_BCM_IPROC
	help
	  Enable this to support the Broadcom Northstar2 PCIe PHY.
	  If unsure, say N.

config PHY_MESON8B_USB2
	tristate "Meson8b and GXBB USB2 PHY driver"
	default ARCH_MESON
	depends on OF && (ARCH_MESON || COMPILE_TEST)
	depends on USB_SUPPORT
	select USB_COMMON
	select GENERIC_PHY
	help
	  Enable this to support the Meson USB2 PHYs found in Meson8b
	  and GXBB SoCs.
	  If unsure, say N.

endmenu