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