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