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