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