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