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