• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/linux/linux-2.6.36/drivers/usb/host/
1#
2# USB Host Controller Drivers
3#
4comment "USB Host Controller Drivers"
5	depends on USB
6
7config USB_C67X00_HCD
8	tristate "Cypress C67x00 HCD support"
9	depends on USB
10	help
11	  The Cypress C67x00 (EZ-Host/EZ-OTG) chips are dual-role
12	  host/peripheral/OTG USB controllers.
13
14	  Enable this option to support this chip in host controller mode.
15	  If unsure, say N.
16
17	  To compile this driver as a module, choose M here: the
18	  module will be called c67x00.
19
20config USB_XHCI_HCD
21	tristate "xHCI HCD (USB 3.0) support (EXPERIMENTAL)"
22	depends on USB && PCI && EXPERIMENTAL
23	---help---
24	  The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0
25	  "SuperSpeed" host controller hardware.
26
27	  To compile this driver as a module, choose M here: the
28	  module will be called xhci-hcd.
29
30config USB_XHCI_HCD_DEBUGGING
31	bool "Debugging for the xHCI host controller"
32	depends on USB_XHCI_HCD
33	---help---
34	  Say 'Y' to turn on debugging for the xHCI host controller driver.
35	  This will spew debugging output, even in interrupt context.
36	  This should only be used for debugging xHCI driver bugs.
37
38	  If unsure, say N.
39
40config USB_EHCI_HCD
41	tristate "EHCI HCD (USB 2.0) support"
42	depends on USB && USB_ARCH_HAS_EHCI
43	---help---
44	  The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0
45	  "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware.
46	  If your USB host controller supports USB 2.0, you will likely want to
47	  configure this Host Controller Driver.
48
49	  EHCI controllers are packaged with "companion" host controllers (OHCI
50	  or UHCI) to handle USB 1.1 devices connected to root hub ports.  Ports
51	  will connect to EHCI if the device is high speed, otherwise they
52	  connect to a companion controller.  If you configure EHCI, you should
53	  probably configure the OHCI (for NEC and some other vendors) USB Host
54	  Controller Driver or UHCI (for Via motherboards) Host Controller
55	  Driver too.
56
57	  You may want to read <file:Documentation/usb/ehci.txt>.
58
59	  To compile this driver as a module, choose M here: the
60	  module will be called ehci-hcd.
61
62config USB_EHCI_ROOT_HUB_TT
63	bool "Root Hub Transaction Translators"
64	depends on USB_EHCI_HCD
65	---help---
66	  Some EHCI chips have vendor-specific extensions to integrate
67	  transaction translators, so that no OHCI or UHCI companion
68	  controller is needed.  It's safe to say "y" even if your
69	  controller doesn't support this feature.
70
71	  This supports the EHCI implementation that's originally
72	  from ARC, and has since changed hands a few times.
73
74config USB_EHCI_TT_NEWSCHED
75	bool "Improved Transaction Translator scheduling"
76	depends on USB_EHCI_HCD
77	default y
78	---help---
79	  This changes the periodic scheduling code to fill more of the low
80	  and full speed bandwidth available from the Transaction Translator
81	  (TT) in USB 2.0 hubs.  Without this, only one transfer will be
82	  issued in each microframe, significantly reducing the number of
83	  periodic low/fullspeed transfers possible.
84
85	  If you have multiple periodic low/fullspeed devices connected to a
86	  highspeed USB hub which is connected to a highspeed USB Host
87	  Controller, and some of those devices will not work correctly
88	  (possibly due to "ENOSPC" or "-28" errors), say Y.  Conversely, if
89	  you have only one such device and it doesn't work, you could try
90	  saying N.
91
92	  If unsure, say Y.
93
94config USB_EHCI_BIG_ENDIAN_MMIO
95	bool
96	depends on USB_EHCI_HCD && (PPC_CELLEB || PPC_PS3 || 440EPX || ARCH_IXP4XX || XPS_USB_HCD_XILINX)
97	default y
98
99config USB_EHCI_BIG_ENDIAN_DESC
100	bool
101	depends on USB_EHCI_HCD && (440EPX || ARCH_IXP4XX || XPS_USB_HCD_XILINX || MIPS_SEAD3)
102	default y
103
104config XPS_USB_HCD_XILINX
105	bool "Use Xilinx usb host EHCI controller core"
106	depends on USB_EHCI_HCD && (PPC32 || MICROBLAZE)
107	select USB_EHCI_BIG_ENDIAN_DESC
108	select USB_EHCI_BIG_ENDIAN_MMIO
109	---help---
110		Xilinx xps USB host controller core is EHCI compilant and has
111		transaction translator built-in. It can be configured to either
112		support both high speed and full speed devices, or high speed
113		devices only.
114
115config USB_EHCI_FSL
116	bool "Support for Freescale on-chip EHCI USB controller"
117	depends on USB_EHCI_HCD && FSL_SOC
118	select USB_EHCI_ROOT_HUB_TT
119	---help---
120	  Variation of ARC USB block used in some Freescale chips.
121
122config USB_EHCI_MXC
123	bool "Support for Freescale on-chip EHCI USB controller"
124	depends on USB_EHCI_HCD && ARCH_MXC
125	select USB_EHCI_ROOT_HUB_TT
126	---help---
127	  Variation of ARC USB block used in some Freescale chips.
128
129config USB_EHCI_HCD_PPC_OF
130	bool "EHCI support for PPC USB controller on OF platform bus"
131	depends on USB_EHCI_HCD && PPC_OF
132	default y
133	---help---
134	  Enables support for the USB controller present on the PowerPC
135	  OpenFirmware platform bus.
136
137config USB_W90X900_EHCI
138	bool "W90X900(W90P910) EHCI support"
139	depends on USB_EHCI_HCD && ARCH_W90X900
140	---help---
141		Enables support for the W90X900 USB controller
142
143config USB_OXU210HP_HCD
144	tristate "OXU210HP HCD support"
145	depends on USB
146	---help---
147	  The OXU210HP is an USB host/OTG/device controller. Enable this
148	  option if your board has this chip. If unsure, say N.
149
150	  This driver does not support isochronous transfers and doesn't
151	  implement OTG nor USB device controllers.
152
153	  To compile this driver as a module, choose M here: the
154	  module will be called oxu210hp-hcd.
155
156config USB_ISP116X_HCD
157	tristate "ISP116X HCD support"
158	depends on USB
159	---help---
160	  The ISP1160 and ISP1161 chips are USB host controllers. Enable this
161	  option if your board has this chip. If unsure, say N.
162
163	  This driver does not support isochronous transfers.
164
165	  To compile this driver as a module, choose M here: the
166	  module will be called isp116x-hcd.
167
168config USB_ISP1760_HCD
169	tristate "ISP 1760 HCD support"
170	depends on USB && EXPERIMENTAL
171	---help---
172	  The ISP1760 chip is a USB 2.0 host controller.
173
174	  This driver does not support isochronous transfers or OTG.
175	  This USB controller is usually attached to a non-DMA-Master
176	  capable bus. NXP's eval kit brings this chip on PCI card
177	  where the chip itself is behind a PLB to simulate such
178	  a bus.
179
180	  To compile this driver as a module, choose M here: the
181	  module will be called isp1760.
182
183config USB_ISP1362_HCD
184	tristate "ISP1362 HCD support"
185	depends on USB
186	default N
187	---help---
188	  Supports the Philips ISP1362 chip as a host controller
189
190	  This driver does not support isochronous transfers.
191
192	  To compile this driver as a module, choose M here: the
193	  module will be called isp1362-hcd.
194
195config USB_OHCI_HCD
196	tristate "OHCI HCD support"
197	depends on USB && USB_ARCH_HAS_OHCI
198	select ISP1301_OMAP if MACH_OMAP_H2 || MACH_OMAP_H3
199	select USB_OTG_UTILS if ARCH_OMAP
200	---help---
201	  The Open Host Controller Interface (OHCI) is a standard for accessing
202	  USB 1.1 host controller hardware.  It does more in hardware than Intel's
203	  UHCI specification.  If your USB host controller follows the OHCI spec,
204	  say Y.  On most non-x86 systems, and on x86 hardware that's not using a
205	  USB controller from Intel or VIA, this is appropriate.  If your host
206	  controller doesn't use PCI, this is probably appropriate.  For a PCI
207	  based system where you're not sure, the "lspci -v" entry will list the
208	  right "prog-if" for your USB controller(s):  EHCI, OHCI, or UHCI.
209
210	  To compile this driver as a module, choose M here: the
211	  module will be called ohci-hcd.
212
213config USB_OHCI_HCD_OMAP1
214	bool "OHCI support for OMAP1/2 chips"
215	depends on USB_OHCI_HCD && (ARCH_OMAP1 || ARCH_OMAP2)
216	default y
217	---help---
218	  Enables support for the OHCI controller on OMAP1/2 chips.
219
220config USB_OHCI_HCD_OMAP3
221	bool "OHCI support for OMAP3 and later chips"
222	depends on USB_OHCI_HCD && (ARCH_OMAP3 || ARCH_OMAP4)
223	default y
224	---help---
225	  Enables support for the on-chip OHCI controller on
226	  OMAP3 and later chips.
227
228config USB_OHCI_HCD_PPC_SOC
229	bool "OHCI support for on-chip PPC USB controller"
230	depends on USB_OHCI_HCD && (STB03xxx || PPC_MPC52xx)
231	default y
232	select USB_OHCI_BIG_ENDIAN_DESC
233	select USB_OHCI_BIG_ENDIAN_MMIO
234	---help---
235	  Enables support for the USB controller on the MPC52xx or
236	  STB03xxx processor chip.  If unsure, say Y.
237
238config USB_OHCI_HCD_PPC_OF_BE
239	bool "OHCI support for OF platform bus (big endian)"
240	depends on USB_OHCI_HCD && PPC_OF
241	select USB_OHCI_BIG_ENDIAN_DESC
242	select USB_OHCI_BIG_ENDIAN_MMIO
243	---help---
244	  Enables support for big-endian USB controllers present on the
245	  OpenFirmware platform bus.
246
247config USB_OHCI_HCD_PPC_OF_LE
248	bool "OHCI support for OF platform bus (little endian)"
249	depends on USB_OHCI_HCD && PPC_OF
250	select USB_OHCI_LITTLE_ENDIAN
251	---help---
252	  Enables support for little-endian USB controllers present on the
253	  OpenFirmware platform bus.
254
255config USB_OHCI_HCD_PPC_OF
256	bool
257	depends on USB_OHCI_HCD && PPC_OF
258	default USB_OHCI_HCD_PPC_OF_BE || USB_OHCI_HCD_PPC_OF_LE
259
260config USB_OHCI_HCD_PCI
261	bool "OHCI support for PCI-bus USB controllers"
262	depends on USB_OHCI_HCD && PCI && (STB03xxx || PPC_MPC52xx || USB_OHCI_HCD_PPC_OF)
263	default y
264	select USB_OHCI_LITTLE_ENDIAN
265	---help---
266	  Enables support for PCI-bus plug-in USB controller cards.
267	  If unsure, say Y.
268
269config USB_OHCI_HCD_SSB
270	bool "OHCI support for Broadcom SSB OHCI core"
271	depends on USB_OHCI_HCD && (SSB = y || SSB = USB_OHCI_HCD) && EXPERIMENTAL
272	default n
273	---help---
274	  Support for the Sonics Silicon Backplane (SSB) attached
275	  Broadcom USB OHCI core.
276
277	  This device is present in some embedded devices with
278	  Broadcom based SSB bus.
279
280	  If unsure, say N.
281
282config USB_OHCI_BIG_ENDIAN_DESC
283	bool
284	depends on USB_OHCI_HCD
285	default n
286
287config USB_OHCI_BIG_ENDIAN_MMIO
288	bool
289	depends on USB_OHCI_HCD
290	default n
291
292config USB_OHCI_LITTLE_ENDIAN
293	bool
294	depends on USB_OHCI_HCD
295	default n if STB03xxx || PPC_MPC52xx
296	default y
297
298config USB_UHCI_HCD
299	tristate "UHCI HCD (most Intel and VIA) support"
300	depends on USB && PCI
301	---help---
302	  The Universal Host Controller Interface is a standard by Intel for
303	  accessing the USB hardware in the PC (which is also called the USB
304	  host controller). If your USB host controller conforms to this
305	  standard, you may want to say Y, but see below. All recent boards
306	  with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX,
307	  i810, i820) conform to this standard. Also all VIA PCI chipsets
308	  (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro
309	  133). If unsure, say Y.
310
311	  To compile this driver as a module, choose M here: the
312	  module will be called uhci-hcd.
313
314config USB_FHCI_HCD
315	tristate "Freescale QE USB Host Controller support"
316	depends on USB && OF_GPIO && QE_GPIO && QUICC_ENGINE
317	select FSL_GTM
318	select QE_USB
319	help
320	  This driver enables support for Freescale QE USB Host Controller
321	  (as found on MPC8360 and MPC8323 processors), the driver supports
322	  Full and Low Speed USB.
323
324config FHCI_DEBUG
325	bool "Freescale QE USB Host Controller debug support"
326	depends on USB_FHCI_HCD && DEBUG_FS
327	help
328	  Say "y" to see some FHCI debug information and statistics
329	  throught debugfs.
330
331config USB_U132_HCD
332	tristate "Elan U132 Adapter Host Controller"
333	depends on USB && USB_FTDI_ELAN
334	default M
335	help
336	  The U132 adapter is a USB to CardBus adapter specifically designed
337	  for PC cards that contain an OHCI host controller. Typical PC cards
338	  are the Orange Mobile 3G Option GlobeTrotter Fusion card. The U132
339	  adapter will *NOT* work with PC cards that do not contain an OHCI
340	  controller.
341
342	  For those PC cards that contain multiple OHCI controllers only the
343	  first one is used.
344
345	  The driver consists of two modules, the "ftdi-elan" module is a
346	  USB client driver that interfaces to the FTDI chip within ELAN's
347	  USB-to-PCMCIA adapter, and this "u132-hcd" module is a USB host
348	  controller driver that talks to the OHCI controller within the
349	  CardBus cards that are inserted in the U132 adapter.
350
351	  This driver has been tested with a CardBus OHCI USB adapter, and
352	  worked with a USB PEN Drive inserted into the first USB port of
353	  the PCCARD. A rather pointless thing to do, but useful for testing.
354
355	  It is safe to say M here.
356
357	  See also <http://www.elandigitalsystems.com/support/ufaq/u132linux.php>
358
359config USB_SL811_HCD
360	tristate "SL811HS HCD support"
361	depends on USB
362	help
363	  The SL811HS is a single-port USB controller that supports either
364	  host side or peripheral side roles.  Enable this option if your
365	  board has this chip, and you want to use it as a host controller. 
366	  If unsure, say N.
367
368	  To compile this driver as a module, choose M here: the
369	  module will be called sl811-hcd.
370
371config USB_SL811_CS
372	tristate "CF/PCMCIA support for SL811HS HCD"
373	depends on USB_SL811_HCD && PCMCIA
374	help
375	  Wraps a PCMCIA driver around the SL811HS HCD, supporting the RATOC
376	  REX-CFU1U CF card (often used with PDAs).  If unsure, say N.
377
378	  To compile this driver as a module, choose M here: the
379	  module will be called "sl811_cs".
380
381config USB_R8A66597_HCD
382	tristate "R8A66597 HCD support"
383	depends on USB
384	help
385	  The R8A66597 is a USB 2.0 host and peripheral controller.
386
387	  Enable this option if your board has this chip, and you want
388	  to use it as a host controller.  If unsure, say N.
389
390	  To compile this driver as a module, choose M here: the
391	  module will be called r8a66597-hcd.
392
393config USB_WHCI_HCD
394	tristate "Wireless USB Host Controller Interface (WHCI) driver (EXPERIMENTAL)"
395	depends on EXPERIMENTAL
396	depends on PCI && USB
397	select USB_WUSB
398	select UWB_WHCI
399	help
400	  A driver for PCI-based Wireless USB Host Controllers that are
401	  compliant with the WHCI specification.
402
403	  To compile this driver a module, choose M here: the module
404	  will be called "whci-hcd".
405
406config USB_HWA_HCD
407	tristate "Host Wire Adapter (HWA) driver (EXPERIMENTAL)"
408	depends on EXPERIMENTAL
409	depends on USB
410	select USB_WUSB
411	select UWB_HWA
412	help
413	  This driver enables you to connect Wireless USB devices to
414	  your system using a Host Wire Adaptor USB dongle. This is an
415	  UWB Radio Controller and WUSB Host Controller connected to
416	  your machine via USB (specified in WUSB1.0).
417
418	  To compile this driver a module, choose M here: the module
419	  will be called "hwa-hc".
420
421config USB_IMX21_HCD
422       tristate "iMX21 HCD support"
423       depends on USB && ARM && MACH_MX21
424       help
425         This driver enables support for the on-chip USB host in the
426         iMX21 processor.
427
428         To compile this driver as a module, choose M here: the
429         module will be called "imx21-hcd".
430
431