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