Kconfig 14 KB

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