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