Kconfig 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807
  1. #
  2. # USB Host Controller Drivers
  3. #
  4. comment "USB Host Controller Drivers"
  5. config USB_C67X00_HCD
  6. tristate "Cypress C67x00 HCD support"
  7. depends on HAS_IOMEM
  8. help
  9. The Cypress C67x00 (EZ-Host/EZ-OTG) chips are dual-role
  10. host/peripheral/OTG USB controllers.
  11. Enable this option to support this chip in host controller mode.
  12. If unsure, say N.
  13. To compile this driver as a module, choose M here: the
  14. module will be called c67x00.
  15. config USB_XHCI_HCD
  16. tristate "xHCI HCD (USB 3.0) support"
  17. depends on HAS_DMA && HAS_IOMEM
  18. ---help---
  19. The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0
  20. "SuperSpeed" host controller hardware.
  21. To compile this driver as a module, choose M here: the
  22. module will be called xhci-hcd.
  23. if USB_XHCI_HCD
  24. config USB_XHCI_PCI
  25. tristate
  26. depends on PCI
  27. default y
  28. config USB_XHCI_PLATFORM
  29. tristate "Generic xHCI driver for a platform device"
  30. select USB_XHCI_RCAR if ARCH_RENESAS
  31. ---help---
  32. Adds an xHCI host driver for a generic platform device, which
  33. provides a memory space and an irq.
  34. It is also a prerequisite for platform specific drivers that
  35. implement some extra quirks.
  36. If unsure, say N.
  37. config USB_XHCI_MTK
  38. tristate "xHCI support for Mediatek MT65xx/MT7621"
  39. select MFD_SYSCON
  40. depends on (MIPS && SOC_MT7621) || ARCH_MEDIATEK || COMPILE_TEST
  41. ---help---
  42. Say 'Y' to enable the support for the xHCI host controller
  43. found in Mediatek MT65xx SoCs.
  44. If unsure, say N.
  45. config USB_XHCI_MVEBU
  46. tristate "xHCI support for Marvell Armada 375/38x"
  47. select USB_XHCI_PLATFORM
  48. depends on HAS_IOMEM
  49. depends on ARCH_MVEBU || COMPILE_TEST
  50. ---help---
  51. Say 'Y' to enable the support for the xHCI host controller
  52. found in Marvell Armada 375/38x ARM SOCs.
  53. config USB_XHCI_RCAR
  54. tristate "xHCI support for Renesas R-Car SoCs"
  55. depends on USB_XHCI_PLATFORM
  56. depends on ARCH_RENESAS || COMPILE_TEST
  57. ---help---
  58. Say 'Y' to enable the support for the xHCI host controller
  59. found in Renesas R-Car ARM SoCs.
  60. config USB_XHCI_TEGRA
  61. tristate "xHCI support for NVIDIA Tegra SoCs"
  62. depends on PHY_TEGRA_XUSB
  63. depends on RESET_CONTROLLER
  64. select FW_LOADER
  65. ---help---
  66. Say 'Y' to enable the support for the xHCI host controller
  67. found in NVIDIA Tegra124 and later SoCs.
  68. endif # USB_XHCI_HCD
  69. config USB_EHCI_HCD
  70. tristate "EHCI HCD (USB 2.0) support"
  71. depends on HAS_DMA && HAS_IOMEM
  72. ---help---
  73. The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0
  74. "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware.
  75. If your USB host controller supports USB 2.0, you will likely want to
  76. configure this Host Controller Driver.
  77. EHCI controllers are packaged with "companion" host controllers (OHCI
  78. or UHCI) to handle USB 1.1 devices connected to root hub ports. Ports
  79. will connect to EHCI if the device is high speed, otherwise they
  80. connect to a companion controller. If you configure EHCI, you should
  81. probably configure the OHCI (for NEC and some other vendors) USB Host
  82. Controller Driver or UHCI (for Via motherboards) Host Controller
  83. Driver too.
  84. You may want to read <file:Documentation/usb/ehci.txt>.
  85. To compile this driver as a module, choose M here: the
  86. module will be called ehci-hcd.
  87. config USB_EHCI_ROOT_HUB_TT
  88. bool "Root Hub Transaction Translators"
  89. depends on USB_EHCI_HCD
  90. ---help---
  91. Some EHCI chips have vendor-specific extensions to integrate
  92. transaction translators, so that no OHCI or UHCI companion
  93. controller is needed. It's safe to say "y" even if your
  94. controller doesn't support this feature.
  95. This supports the EHCI implementation that's originally
  96. from ARC, and has since changed hands a few times.
  97. config USB_EHCI_TT_NEWSCHED
  98. bool "Improved Transaction Translator scheduling"
  99. depends on USB_EHCI_HCD
  100. default y
  101. ---help---
  102. This changes the periodic scheduling code to fill more of the low
  103. and full speed bandwidth available from the Transaction Translator
  104. (TT) in USB 2.0 hubs. Without this, only one transfer will be
  105. issued in each microframe, significantly reducing the number of
  106. periodic low/fullspeed transfers possible.
  107. If you have multiple periodic low/fullspeed devices connected to a
  108. highspeed USB hub which is connected to a highspeed USB Host
  109. Controller, and some of those devices will not work correctly
  110. (possibly due to "ENOSPC" or "-28" errors), say Y. Conversely, if
  111. you have only one such device and it doesn't work, you could try
  112. saying N.
  113. If unsure, say Y.
  114. if USB_EHCI_HCD
  115. config USB_EHCI_PCI
  116. tristate
  117. depends on PCI
  118. default y
  119. config USB_EHCI_HCD_PMC_MSP
  120. tristate "EHCI support for on-chip PMC MSP71xx USB controller"
  121. depends on MSP_HAS_USB
  122. default n
  123. select USB_EHCI_BIG_ENDIAN_DESC
  124. select USB_EHCI_BIG_ENDIAN_MMIO
  125. ---help---
  126. Enables support for the onchip USB controller on the PMC_MSP7100 Family SoC's.
  127. If unsure, say N.
  128. config XPS_USB_HCD_XILINX
  129. bool "Use Xilinx usb host EHCI controller core"
  130. depends on (PPC32 || MICROBLAZE)
  131. select USB_EHCI_BIG_ENDIAN_DESC
  132. select USB_EHCI_BIG_ENDIAN_MMIO
  133. ---help---
  134. Xilinx xps USB host controller core is EHCI compliant and has
  135. transaction translator built-in. It can be configured to either
  136. support both high speed and full speed devices, or high speed
  137. devices only.
  138. config USB_EHCI_FSL
  139. tristate "Support for Freescale PPC on-chip EHCI USB controller"
  140. depends on FSL_SOC
  141. select USB_EHCI_ROOT_HUB_TT
  142. ---help---
  143. Variation of ARC USB block used in some Freescale chips.
  144. config USB_EHCI_MXC
  145. tristate "Support for Freescale i.MX on-chip EHCI USB controller"
  146. depends on ARCH_MXC
  147. select USB_EHCI_ROOT_HUB_TT
  148. ---help---
  149. Variation of ARC USB block used in some Freescale chips.
  150. config USB_EHCI_HCD_OMAP
  151. tristate "EHCI support for OMAP3 and later chips"
  152. depends on ARCH_OMAP
  153. depends on NOP_USB_XCEIV
  154. default y
  155. ---help---
  156. Enables support for the on-chip EHCI controller on
  157. OMAP3 and later chips.
  158. config USB_EHCI_HCD_ORION
  159. tristate "Support for Marvell EBU on-chip EHCI USB controller"
  160. depends on USB_EHCI_HCD && PLAT_ORION
  161. default y
  162. ---help---
  163. Enables support for the on-chip EHCI controller on Marvell's
  164. embedded ARM SoCs, including Orion, Kirkwood, Dove, Armada XP,
  165. Armada 370. This is different from the EHCI implementation
  166. on Marvell's mobile PXA and MMP SoC, see "EHCI support for
  167. Marvell PXA/MMP USB controller" for those.
  168. config USB_EHCI_HCD_SPEAR
  169. tristate "Support for ST SPEAr on-chip EHCI USB controller"
  170. depends on USB_EHCI_HCD && PLAT_SPEAR
  171. default y
  172. ---help---
  173. Enables support for the on-chip EHCI controller on
  174. ST SPEAr chips.
  175. config USB_EHCI_HCD_STI
  176. tristate "Support for ST STiHxxx on-chip EHCI USB controller"
  177. depends on ARCH_STI && OF
  178. select GENERIC_PHY
  179. select USB_EHCI_HCD_PLATFORM
  180. help
  181. Enable support for the on-chip EHCI controller found on
  182. STMicroelectronics consumer electronics SoC's.
  183. config USB_EHCI_HCD_AT91
  184. tristate "Support for Atmel on-chip EHCI USB controller"
  185. depends on USB_EHCI_HCD && ARCH_AT91
  186. default y
  187. ---help---
  188. Enables support for the on-chip EHCI controller on
  189. Atmel chips.
  190. config USB_EHCI_MSM
  191. tristate "Support for Qualcomm QSD/MSM on-chip EHCI USB controller"
  192. depends on ARCH_QCOM
  193. select USB_EHCI_ROOT_HUB_TT
  194. ---help---
  195. Enables support for the USB Host controller present on the
  196. Qualcomm chipsets. Root Hub has inbuilt TT.
  197. This driver depends on OTG driver for PHY initialization,
  198. clock management, powering up VBUS, and power management.
  199. This driver is not supported on boards like trout which
  200. has an external PHY.
  201. config USB_EHCI_TEGRA
  202. tristate "NVIDIA Tegra HCD support"
  203. depends on ARCH_TEGRA
  204. select USB_EHCI_ROOT_HUB_TT
  205. select USB_PHY
  206. select USB_ULPI
  207. select USB_ULPI_VIEWPORT
  208. help
  209. This driver enables support for the internal USB Host Controllers
  210. found in NVIDIA Tegra SoCs. The controllers are EHCI compliant.
  211. config USB_EHCI_HCD_PPC_OF
  212. bool "EHCI support for PPC USB controller on OF platform bus"
  213. depends on PPC
  214. default y
  215. ---help---
  216. Enables support for the USB controller present on the PowerPC
  217. OpenFirmware platform bus.
  218. config USB_EHCI_SH
  219. bool "EHCI support for SuperH USB controller"
  220. depends on SUPERH
  221. ---help---
  222. Enables support for the on-chip EHCI controller on the SuperH.
  223. If you use the PCI EHCI controller, this option is not necessary.
  224. config USB_EHCI_EXYNOS
  225. tristate "EHCI support for Samsung S5P/EXYNOS SoC Series"
  226. depends on ARCH_S5PV210 || ARCH_EXYNOS
  227. help
  228. Enable support for the Samsung Exynos SOC's on-chip EHCI controller.
  229. config USB_EHCI_MV
  230. bool "EHCI support for Marvell PXA/MMP USB controller"
  231. depends on (ARCH_PXA || ARCH_MMP)
  232. select USB_EHCI_ROOT_HUB_TT
  233. ---help---
  234. Enables support for Marvell (including PXA and MMP series) on-chip
  235. USB SPH and OTG controller. SPH is a single port host, and it can
  236. only be EHCI host. OTG is controller that can switch to host mode.
  237. Note that this driver will not work on Marvell's other EHCI
  238. controller used by the EBU-type SoCs including Orion, Kirkwood,
  239. Dova, Armada 370 and Armada XP. See "Support for Marvell EBU
  240. on-chip EHCI USB controller" for those.
  241. config USB_W90X900_EHCI
  242. tristate "W90X900(W90P910) EHCI support"
  243. depends on ARCH_W90X900
  244. ---help---
  245. Enables support for the W90X900 USB controller
  246. config USB_CNS3XXX_EHCI
  247. bool "Cavium CNS3XXX EHCI Module (DEPRECATED)"
  248. depends on ARCH_CNS3XXX
  249. select USB_EHCI_HCD_PLATFORM
  250. ---help---
  251. This option is deprecated now and the driver was removed, use
  252. USB_EHCI_HCD_PLATFORM instead.
  253. Enable support for the CNS3XXX SOC's on-chip EHCI controller.
  254. It is needed for high-speed (480Mbit/sec) USB 2.0 device
  255. support.
  256. config USB_EHCI_ATH79
  257. bool "EHCI support for AR7XXX/AR9XXX SoCs (DEPRECATED)"
  258. depends on (SOC_AR71XX || SOC_AR724X || SOC_AR913X || SOC_AR933X)
  259. select USB_EHCI_ROOT_HUB_TT
  260. select USB_EHCI_HCD_PLATFORM
  261. default y
  262. ---help---
  263. This option is deprecated now and the driver was removed, use
  264. USB_EHCI_HCD_PLATFORM instead.
  265. Enables support for the built-in EHCI controller present
  266. on the Atheros AR7XXX/AR9XXX SoCs.
  267. config USB_EHCI_HCD_PLATFORM
  268. tristate "Generic EHCI driver for a platform device"
  269. default n
  270. ---help---
  271. Adds an EHCI host driver for a generic platform device, which
  272. provides a memory space and an irq.
  273. If unsure, say N.
  274. config USB_OCTEON_EHCI
  275. bool "Octeon on-chip EHCI support (DEPRECATED)"
  276. depends on CAVIUM_OCTEON_SOC
  277. default n
  278. select USB_EHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
  279. select USB_EHCI_HCD_PLATFORM
  280. help
  281. This option is deprecated now and the driver was removed, use
  282. USB_EHCI_HCD_PLATFORM instead.
  283. Enable support for the Octeon II SOC's on-chip EHCI
  284. controller. It is needed for high-speed (480Mbit/sec)
  285. USB 2.0 device support. All CN6XXX based chips with USB are
  286. supported.
  287. endif # USB_EHCI_HCD
  288. config USB_OXU210HP_HCD
  289. tristate "OXU210HP HCD support"
  290. depends on HAS_IOMEM
  291. ---help---
  292. The OXU210HP is an USB host/OTG/device controller. Enable this
  293. option if your board has this chip. If unsure, say N.
  294. This driver does not support isochronous transfers and doesn't
  295. implement OTG nor USB device controllers.
  296. To compile this driver as a module, choose M here: the
  297. module will be called oxu210hp-hcd.
  298. config USB_ISP116X_HCD
  299. tristate "ISP116X HCD support"
  300. depends on HAS_IOMEM
  301. ---help---
  302. The ISP1160 and ISP1161 chips are USB host controllers. Enable this
  303. option if your board has this chip. If unsure, say N.
  304. This driver does not support isochronous transfers.
  305. To compile this driver as a module, choose M here: the
  306. module will be called isp116x-hcd.
  307. config USB_ISP1362_HCD
  308. tristate "ISP1362 HCD support"
  309. depends on HAS_IOMEM
  310. ---help---
  311. Supports the Philips ISP1362 chip as a host controller
  312. This driver does not support isochronous transfers.
  313. To compile this driver as a module, choose M here: the
  314. module will be called isp1362-hcd.
  315. config USB_FOTG210_HCD
  316. tristate "FOTG210 HCD support"
  317. depends on USB && HAS_DMA && HAS_IOMEM
  318. ---help---
  319. Faraday FOTG210 is an OTG controller which can be configured as
  320. an USB2.0 host. It is designed to meet USB2.0 EHCI specification
  321. with minor modification.
  322. To compile this driver as a module, choose M here: the
  323. module will be called fotg210-hcd.
  324. config USB_MAX3421_HCD
  325. tristate "MAX3421 HCD (USB-over-SPI) support"
  326. depends on USB && SPI
  327. ---help---
  328. The Maxim MAX3421E chip supports standard USB 2.0-compliant
  329. full-speed devices either in host or peripheral mode. This
  330. driver supports the host-mode of the MAX3421E only.
  331. To compile this driver as a module, choose M here: the module will
  332. be called max3421-hcd.
  333. config USB_OHCI_HCD
  334. tristate "OHCI HCD (USB 1.1) support"
  335. depends on HAS_DMA && HAS_IOMEM
  336. ---help---
  337. The Open Host Controller Interface (OHCI) is a standard for accessing
  338. USB 1.1 host controller hardware. It does more in hardware than Intel's
  339. UHCI specification. If your USB host controller follows the OHCI spec,
  340. say Y. On most non-x86 systems, and on x86 hardware that's not using a
  341. USB controller from Intel or VIA, this is appropriate. If your host
  342. controller doesn't use PCI, this is probably appropriate. For a PCI
  343. based system where you're not sure, the "lspci -v" entry will list the
  344. right "prog-if" for your USB controller(s): EHCI, OHCI, or UHCI.
  345. To compile this driver as a module, choose M here: the
  346. module will be called ohci-hcd.
  347. if USB_OHCI_HCD
  348. config USB_OHCI_HCD_OMAP1
  349. tristate "OHCI support for OMAP1/2 chips"
  350. depends on ARCH_OMAP1
  351. depends on ISP1301_OMAP || !(MACH_OMAP_H2 || MACH_OMAP_H3)
  352. default y
  353. ---help---
  354. Enables support for the OHCI controller on OMAP1/2 chips.
  355. config USB_OHCI_HCD_SPEAR
  356. tristate "Support for ST SPEAr on-chip OHCI USB controller"
  357. depends on USB_OHCI_HCD && PLAT_SPEAR
  358. default y
  359. ---help---
  360. Enables support for the on-chip OHCI controller on
  361. ST SPEAr chips.
  362. config USB_OHCI_HCD_STI
  363. tristate "Support for ST STiHxxx on-chip OHCI USB controller"
  364. depends on ARCH_STI && OF
  365. select GENERIC_PHY
  366. select USB_OHCI_HCD_PLATFORM
  367. help
  368. Enable support for the on-chip OHCI controller found on
  369. STMicroelectronics consumer electronics SoC's.
  370. config USB_OHCI_HCD_S3C2410
  371. tristate "OHCI support for Samsung S3C24xx/S3C64xx SoC series"
  372. depends on USB_OHCI_HCD && (ARCH_S3C24XX || ARCH_S3C64XX)
  373. default y
  374. ---help---
  375. Enables support for the on-chip OHCI controller on
  376. S3C24xx/S3C64xx chips.
  377. config USB_OHCI_HCD_LPC32XX
  378. tristate "Support for LPC on-chip OHCI USB controller"
  379. depends on USB_OHCI_HCD && ARCH_LPC32XX
  380. depends on USB_ISP1301
  381. default y
  382. ---help---
  383. Enables support for the on-chip OHCI controller on
  384. NXP chips.
  385. config USB_OHCI_HCD_PXA27X
  386. tristate "Support for PXA27X/PXA3XX on-chip OHCI USB controller"
  387. depends on USB_OHCI_HCD && (PXA27x || PXA3xx)
  388. default y
  389. ---help---
  390. Enables support for the on-chip OHCI controller on
  391. PXA27x/PXA3xx chips.
  392. config USB_OHCI_HCD_AT91
  393. tristate "Support for Atmel on-chip OHCI USB controller"
  394. depends on USB_OHCI_HCD && ARCH_AT91 && OF
  395. default y
  396. ---help---
  397. Enables support for the on-chip OHCI controller on
  398. Atmel chips.
  399. config USB_OHCI_HCD_OMAP3
  400. tristate "OHCI support for OMAP3 and later chips"
  401. depends on (ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5)
  402. default y
  403. ---help---
  404. Enables support for the on-chip OHCI controller on
  405. OMAP3 and later chips.
  406. config USB_OHCI_HCD_DAVINCI
  407. bool "OHCI support for TI DaVinci DA8xx"
  408. depends on ARCH_DAVINCI_DA8XX
  409. depends on USB_OHCI_HCD=y
  410. default y
  411. help
  412. Enables support for the DaVinci DA8xx integrated OHCI
  413. controller. This driver cannot currently be a loadable
  414. module because it lacks a proper PHY abstraction.
  415. config USB_OHCI_ATH79
  416. bool "USB OHCI support for the Atheros AR71XX/AR7240 SoCs (DEPRECATED)"
  417. depends on (SOC_AR71XX || SOC_AR724X)
  418. select USB_OHCI_HCD_PLATFORM
  419. default y
  420. help
  421. This option is deprecated now and the driver was removed, use
  422. USB_OHCI_HCD_PLATFORM instead.
  423. Enables support for the built-in OHCI controller present on the
  424. Atheros AR71XX/AR7240 SoCs.
  425. config USB_OHCI_HCD_PPC_OF_BE
  426. bool "OHCI support for OF platform bus (big endian)"
  427. depends on PPC
  428. select USB_OHCI_BIG_ENDIAN_DESC
  429. select USB_OHCI_BIG_ENDIAN_MMIO
  430. ---help---
  431. Enables support for big-endian USB controllers present on the
  432. OpenFirmware platform bus.
  433. config USB_OHCI_HCD_PPC_OF_LE
  434. bool "OHCI support for OF platform bus (little endian)"
  435. depends on PPC
  436. select USB_OHCI_LITTLE_ENDIAN
  437. ---help---
  438. Enables support for little-endian USB controllers present on the
  439. OpenFirmware platform bus.
  440. config USB_OHCI_HCD_PPC_OF
  441. bool
  442. depends on PPC
  443. default USB_OHCI_HCD_PPC_OF_BE || USB_OHCI_HCD_PPC_OF_LE
  444. config USB_OHCI_HCD_PCI
  445. tristate "OHCI support for PCI-bus USB controllers"
  446. depends on PCI
  447. default y
  448. select USB_OHCI_LITTLE_ENDIAN
  449. ---help---
  450. Enables support for PCI-bus plug-in USB controller cards.
  451. If unsure, say Y.
  452. config USB_OHCI_HCD_SSB
  453. bool "OHCI support for Broadcom SSB OHCI core (DEPRECATED)"
  454. depends on (SSB = y || SSB = USB_OHCI_HCD)
  455. select USB_HCD_SSB
  456. select USB_OHCI_HCD_PLATFORM
  457. default n
  458. ---help---
  459. This option is deprecated now and the driver was removed, use
  460. USB_HCD_SSB and USB_OHCI_HCD_PLATFORM instead.
  461. Support for the Sonics Silicon Backplane (SSB) attached
  462. Broadcom USB OHCI core.
  463. This device is present in some embedded devices with
  464. Broadcom based SSB bus.
  465. If unsure, say N.
  466. config USB_OHCI_SH
  467. bool "OHCI support for SuperH USB controller (DEPRECATED)"
  468. depends on SUPERH
  469. select USB_OHCI_HCD_PLATFORM
  470. ---help---
  471. This option is deprecated now and the driver was removed, use
  472. USB_OHCI_HCD_PLATFORM instead.
  473. Enables support for the on-chip OHCI controller on the SuperH.
  474. If you use the PCI OHCI controller, this option is not necessary.
  475. config USB_OHCI_EXYNOS
  476. tristate "OHCI support for Samsung S5P/EXYNOS SoC Series"
  477. depends on ARCH_S5PV210 || ARCH_EXYNOS
  478. help
  479. Enable support for the Samsung Exynos SOC's on-chip OHCI controller.
  480. config USB_CNS3XXX_OHCI
  481. bool "Cavium CNS3XXX OHCI Module (DEPRECATED)"
  482. depends on ARCH_CNS3XXX
  483. select USB_OHCI_HCD_PLATFORM
  484. ---help---
  485. This option is deprecated now and the driver was removed, use
  486. USB_OHCI_HCD_PLATFORM instead.
  487. Enable support for the CNS3XXX SOC's on-chip OHCI controller.
  488. It is needed for low-speed USB 1.0 device support.
  489. config USB_OHCI_HCD_PLATFORM
  490. tristate "Generic OHCI driver for a platform device"
  491. default n
  492. ---help---
  493. Adds an OHCI host driver for a generic platform device, which
  494. provides a memory space and an irq.
  495. If unsure, say N.
  496. config USB_OCTEON_OHCI
  497. bool "Octeon on-chip OHCI support (DEPRECATED)"
  498. depends on CAVIUM_OCTEON_SOC
  499. default USB_OCTEON_EHCI
  500. select USB_OHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
  501. select USB_OHCI_LITTLE_ENDIAN
  502. select USB_OHCI_HCD_PLATFORM
  503. help
  504. This option is deprecated now and the driver was removed, use
  505. USB_OHCI_HCD_PLATFORM instead.
  506. Enable support for the Octeon II SOC's on-chip OHCI
  507. controller. It is needed for low-speed USB 1.0 device
  508. support. All CN6XXX based chips with USB are supported.
  509. endif # USB_OHCI_HCD
  510. config USB_UHCI_HCD
  511. tristate "UHCI HCD (most Intel and VIA) support"
  512. depends on PCI || USB_UHCI_SUPPORT_NON_PCI_HC
  513. ---help---
  514. The Universal Host Controller Interface is a standard by Intel for
  515. accessing the USB hardware in the PC (which is also called the USB
  516. host controller). If your USB host controller conforms to this
  517. standard, you may want to say Y, but see below. All recent boards
  518. with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX,
  519. i810, i820) conform to this standard. Also all VIA PCI chipsets
  520. (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro
  521. 133) and LEON/GRLIB SoCs with the GRUSBHC controller.
  522. If unsure, say Y.
  523. To compile this driver as a module, choose M here: the
  524. module will be called uhci-hcd.
  525. config USB_UHCI_SUPPORT_NON_PCI_HC
  526. bool
  527. default y if (SPARC_LEON || USB_UHCI_PLATFORM)
  528. config USB_UHCI_PLATFORM
  529. bool
  530. default y if ARCH_VT8500
  531. config USB_FHCI_HCD
  532. tristate "Freescale QE USB Host Controller support"
  533. depends on OF_GPIO && QE_GPIO && QUICC_ENGINE
  534. select FSL_GTM
  535. select QE_USB
  536. help
  537. This driver enables support for Freescale QE USB Host Controller
  538. (as found on MPC8360 and MPC8323 processors), the driver supports
  539. Full and Low Speed USB.
  540. config FHCI_DEBUG
  541. bool "Freescale QE USB Host Controller debug support"
  542. depends on USB_FHCI_HCD && DEBUG_FS
  543. help
  544. Say "y" to see some FHCI debug information and statistics
  545. through debugfs.
  546. config USB_U132_HCD
  547. tristate "Elan U132 Adapter Host Controller"
  548. depends on USB_FTDI_ELAN
  549. help
  550. The U132 adapter is a USB to CardBus adapter specifically designed
  551. for PC cards that contain an OHCI host controller. Typical PC cards
  552. are the Orange Mobile 3G Option GlobeTrotter Fusion card. The U132
  553. adapter will *NOT* work with PC cards that do not contain an OHCI
  554. controller.
  555. For those PC cards that contain multiple OHCI controllers only the
  556. first one is used.
  557. The driver consists of two modules, the "ftdi-elan" module is a
  558. USB client driver that interfaces to the FTDI chip within ELAN's
  559. USB-to-PCMCIA adapter, and this "u132-hcd" module is a USB host
  560. controller driver that talks to the OHCI controller within the
  561. CardBus cards that are inserted in the U132 adapter.
  562. This driver has been tested with a CardBus OHCI USB adapter, and
  563. worked with a USB PEN Drive inserted into the first USB port of
  564. the PCCARD. A rather pointless thing to do, but useful for testing.
  565. It is safe to say M here.
  566. See also <http://www.elandigitalsystems.com/support/ufaq/u132linux.php>
  567. config USB_SL811_HCD
  568. tristate "SL811HS HCD support"
  569. depends on HAS_IOMEM
  570. help
  571. The SL811HS is a single-port USB controller that supports either
  572. host side or peripheral side roles. Enable this option if your
  573. board has this chip, and you want to use it as a host controller.
  574. If unsure, say N.
  575. To compile this driver as a module, choose M here: the
  576. module will be called sl811-hcd.
  577. config USB_SL811_HCD_ISO
  578. bool "partial ISO support"
  579. depends on USB_SL811_HCD
  580. help
  581. The driver doesn't support iso_frame_desc (yet), but for some simple
  582. devices that just queue one ISO frame per URB, then ISO transfers
  583. "should" work using the normal urb status fields.
  584. If unsure, say N.
  585. config USB_SL811_CS
  586. tristate "CF/PCMCIA support for SL811HS HCD"
  587. depends on USB_SL811_HCD && PCMCIA
  588. help
  589. Wraps a PCMCIA driver around the SL811HS HCD, supporting the RATOC
  590. REX-CFU1U CF card (often used with PDAs). If unsure, say N.
  591. To compile this driver as a module, choose M here: the
  592. module will be called "sl811_cs".
  593. config USB_R8A66597_HCD
  594. tristate "R8A66597 HCD support"
  595. depends on HAS_IOMEM
  596. help
  597. The R8A66597 is a USB 2.0 host and peripheral controller.
  598. Enable this option if your board has this chip, and you want
  599. to use it as a host controller. If unsure, say N.
  600. To compile this driver as a module, choose M here: the
  601. module will be called r8a66597-hcd.
  602. config USB_RENESAS_USBHS_HCD
  603. tristate "Renesas USBHS HCD support"
  604. depends on USB_RENESAS_USBHS
  605. help
  606. The Renesas USBHS is a USB 2.0 host and peripheral controller.
  607. Enable this option if your board has this chip, and you want
  608. to use it as a host controller. If unsure, say N.
  609. To compile this driver as a module, choose M here: the
  610. module will be called renesas-usbhs.
  611. config USB_WHCI_HCD
  612. tristate "Wireless USB Host Controller Interface (WHCI) driver"
  613. depends on PCI && USB && UWB
  614. select USB_WUSB
  615. select UWB_WHCI
  616. help
  617. A driver for PCI-based Wireless USB Host Controllers that are
  618. compliant with the WHCI specification.
  619. To compile this driver a module, choose M here: the module
  620. will be called "whci-hcd".
  621. config USB_HWA_HCD
  622. tristate "Host Wire Adapter (HWA) driver"
  623. depends on USB && UWB
  624. select USB_WUSB
  625. select UWB_HWA
  626. help
  627. This driver enables you to connect Wireless USB devices to
  628. your system using a Host Wire Adaptor USB dongle. This is an
  629. UWB Radio Controller and WUSB Host Controller connected to
  630. your machine via USB (specified in WUSB1.0).
  631. To compile this driver a module, choose M here: the module
  632. will be called "hwa-hc".
  633. config USB_IMX21_HCD
  634. tristate "i.MX21 HCD support"
  635. depends on ARM && ARCH_MXC
  636. help
  637. This driver enables support for the on-chip USB host in the
  638. i.MX21 processor.
  639. To compile this driver as a module, choose M here: the
  640. module will be called "imx21-hcd".
  641. config USB_HCD_BCMA
  642. tristate "BCMA usb host driver"
  643. depends on BCMA
  644. select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
  645. select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
  646. help
  647. Enable support for the EHCI and OCHI host controller on an bcma bus.
  648. It converts the bcma driver into two platform device drivers
  649. for ehci and ohci.
  650. If unsure, say N.
  651. config USB_HCD_SSB
  652. tristate "SSB usb host driver"
  653. depends on SSB
  654. select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
  655. select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
  656. help
  657. Enable support for the EHCI and OCHI host controller on an bcma bus.
  658. It converts the bcma driver into two platform device drivers
  659. for ehci and ohci.
  660. If unsure, say N.
  661. config USB_HCD_TEST_MODE
  662. bool "HCD test mode support"
  663. ---help---
  664. Say 'Y' to enable additional software test modes that may be
  665. supported by the host controller drivers.
  666. One such test mode is the Embedded High-speed Host Electrical Test
  667. (EHSET) for EHCI host controller hardware, specifically the "Single
  668. Step Set Feature" test. Typically this will be enabled for On-the-Go
  669. or embedded hosts that need to undergo USB-IF compliance testing with
  670. the aid of special testing hardware. In the future, this may expand
  671. to include other tests that require support from a HCD driver.
  672. This option is of interest only to developers who need to validate
  673. their USB hardware designs. It is not needed for normal use. If
  674. unsure, say N.