Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | # |
| 2 | # USB Host Controller Drivers |
| 3 | # |
| 4 | comment "USB Host Controller Drivers" |
| 5 | depends on USB |
| 6 | |
Peter Korsgaard | e9b29ff | 2008-04-27 08:59:45 +0200 | [diff] [blame] | 7 | config 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 | |
Sarah Sharp | eb6bab1 | 2009-04-29 19:07:13 -0700 | [diff] [blame] | 20 | config USB_XHCI_HCD |
| 21 | tristate "xHCI HCD (USB 3.0) support (EXPERIMENTAL)" |
Felipe Balbi | 7b72000 | 2011-09-23 14:19:56 -0700 | [diff] [blame] | 22 | depends on USB && USB_ARCH_HAS_XHCI && EXPERIMENTAL |
Sarah Sharp | eb6bab1 | 2009-04-29 19:07:13 -0700 | [diff] [blame] | 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 | |
Sebastian Andrzej Siewior | 3429e91 | 2012-03-13 16:57:41 +0200 | [diff] [blame] | 30 | config USB_XHCI_PLATFORM |
| 31 | tristate |
| 32 | depends on USB_XHCI_HCD |
| 33 | |
Sarah Sharp | eb6bab1 | 2009-04-29 19:07:13 -0700 | [diff] [blame] | 34 | config USB_XHCI_HCD_DEBUGGING |
| 35 | bool "Debugging for the xHCI host controller" |
| 36 | depends on USB_XHCI_HCD |
| 37 | ---help--- |
| 38 | Say 'Y' to turn on debugging for the xHCI host controller driver. |
| 39 | This will spew debugging output, even in interrupt context. |
| 40 | This should only be used for debugging xHCI driver bugs. |
| 41 | |
| 42 | If unsure, say N. |
| 43 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 44 | config USB_EHCI_HCD |
| 45 | tristate "EHCI HCD (USB 2.0) support" |
Jordan Crouse | 76fa9a2 | 2006-01-20 14:06:09 -0800 | [diff] [blame] | 46 | depends on USB && USB_ARCH_HAS_EHCI |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 47 | ---help--- |
| 48 | The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0 |
| 49 | "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware. |
| 50 | If your USB host controller supports USB 2.0, you will likely want to |
Thierry Vignaud | b967c88 | 2009-02-11 13:31:05 -0800 | [diff] [blame] | 51 | configure this Host Controller Driver. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 52 | |
| 53 | EHCI controllers are packaged with "companion" host controllers (OHCI |
| 54 | or UHCI) to handle USB 1.1 devices connected to root hub ports. Ports |
Jesper Juhl | b3c29d8 | 2006-01-10 00:35:22 +0100 | [diff] [blame] | 55 | will connect to EHCI if the device is high speed, otherwise they |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 56 | connect to a companion controller. If you configure EHCI, you should |
| 57 | probably configure the OHCI (for NEC and some other vendors) USB Host |
| 58 | Controller Driver or UHCI (for Via motherboards) Host Controller |
| 59 | Driver too. |
| 60 | |
| 61 | You may want to read <file:Documentation/usb/ehci.txt>. |
| 62 | |
| 63 | To compile this driver as a module, choose M here: the |
| 64 | module will be called ehci-hcd. |
| 65 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 66 | config USB_EHCI_ROOT_HUB_TT |
Robert P. J. Day | 9ec249a | 2008-03-08 03:27:44 -0500 | [diff] [blame] | 67 | bool "Root Hub Transaction Translators" |
| 68 | depends on USB_EHCI_HCD |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 69 | ---help--- |
| 70 | Some EHCI chips have vendor-specific extensions to integrate |
| 71 | transaction translators, so that no OHCI or UHCI companion |
| 72 | controller is needed. It's safe to say "y" even if your |
| 73 | controller doesn't support this feature. |
| 74 | |
Dan Streetman | ba47f66 | 2006-05-24 09:39:16 -0700 | [diff] [blame] | 75 | This supports the EHCI implementation that's originally |
| 76 | from ARC, and has since changed hands a few times. |
| 77 | |
| 78 | config USB_EHCI_TT_NEWSCHED |
Alan Stern | 37cd681 | 2010-05-21 17:08:21 -0400 | [diff] [blame] | 79 | bool "Improved Transaction Translator scheduling" |
| 80 | depends on USB_EHCI_HCD |
| 81 | default y |
Dan Streetman | ba47f66 | 2006-05-24 09:39:16 -0700 | [diff] [blame] | 82 | ---help--- |
| 83 | This changes the periodic scheduling code to fill more of the low |
| 84 | and full speed bandwidth available from the Transaction Translator |
| 85 | (TT) in USB 2.0 hubs. Without this, only one transfer will be |
| 86 | issued in each microframe, significantly reducing the number of |
| 87 | periodic low/fullspeed transfers possible. |
| 88 | |
| 89 | If you have multiple periodic low/fullspeed devices connected to a |
| 90 | highspeed USB hub which is connected to a highspeed USB Host |
| 91 | Controller, and some of those devices will not work correctly |
Alan Stern | 37cd681 | 2010-05-21 17:08:21 -0400 | [diff] [blame] | 92 | (possibly due to "ENOSPC" or "-28" errors), say Y. Conversely, if |
| 93 | you have only one such device and it doesn't work, you could try |
| 94 | saying N. |
Dan Streetman | ba47f66 | 2006-05-24 09:39:16 -0700 | [diff] [blame] | 95 | |
Alan Stern | 37cd681 | 2010-05-21 17:08:21 -0400 | [diff] [blame] | 96 | If unsure, say Y. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 97 | |
Anoop | 22ced68 | 2011-02-24 19:26:28 +0530 | [diff] [blame] | 98 | config USB_EHCI_HCD_PMC_MSP |
| 99 | tristate "EHCI support for on-chip PMC MSP71xx USB controller" |
| 100 | depends on USB_EHCI_HCD && MSP_HAS_USB |
| 101 | default n |
| 102 | select USB_EHCI_BIG_ENDIAN_DESC |
| 103 | select USB_EHCI_BIG_ENDIAN_MMIO |
| 104 | ---help--- |
| 105 | Enables support for the onchip USB controller on the PMC_MSP7100 Family SoC's. |
| 106 | If unsure, say N. |
| 107 | |
Benjamin Herrenschmidt | 083522d | 2006-12-15 06:54:08 +1100 | [diff] [blame] | 108 | config USB_EHCI_BIG_ENDIAN_MMIO |
| 109 | bool |
David Daney | 1643acc | 2010-10-08 14:47:52 -0700 | [diff] [blame] | 110 | depends on USB_EHCI_HCD && (PPC_CELLEB || PPC_PS3 || 440EPX || \ |
| 111 | ARCH_IXP4XX || XPS_USB_HCD_XILINX || \ |
Anoop | 22ced68 | 2011-02-24 19:26:28 +0530 | [diff] [blame] | 112 | PPC_MPC512x || CPU_CAVIUM_OCTEON || \ |
Jan Andersson | 9be0392 | 2011-05-03 20:11:58 +0200 | [diff] [blame] | 113 | PMC_MSP || SPARC_LEON) |
Stefan Roese | 4d68c0b | 2007-05-04 11:39:37 -0700 | [diff] [blame] | 114 | default y |
Benjamin Herrenschmidt | 083522d | 2006-12-15 06:54:08 +1100 | [diff] [blame] | 115 | |
Stefan Roese | 6dbd682 | 2007-05-01 09:29:37 -0700 | [diff] [blame] | 116 | config USB_EHCI_BIG_ENDIAN_DESC |
| 117 | bool |
Anatolij Gustschin | 230f7ed | 2010-09-28 20:55:21 +0200 | [diff] [blame] | 118 | depends on USB_EHCI_HCD && (440EPX || ARCH_IXP4XX || XPS_USB_HCD_XILINX || \ |
Jan Andersson | 9be0392 | 2011-05-03 20:11:58 +0200 | [diff] [blame] | 119 | PPC_MPC512x || PMC_MSP || SPARC_LEON) |
Stefan Roese | 4d68c0b | 2007-05-04 11:39:37 -0700 | [diff] [blame] | 120 | default y |
Stefan Roese | 6dbd682 | 2007-05-01 09:29:37 -0700 | [diff] [blame] | 121 | |
Julie Zhu | 08d3c18 | 2009-09-21 16:08:19 -0600 | [diff] [blame] | 122 | config XPS_USB_HCD_XILINX |
| 123 | bool "Use Xilinx usb host EHCI controller core" |
| 124 | depends on USB_EHCI_HCD && (PPC32 || MICROBLAZE) |
| 125 | select USB_EHCI_BIG_ENDIAN_DESC |
| 126 | select USB_EHCI_BIG_ENDIAN_MMIO |
| 127 | ---help--- |
| 128 | Xilinx xps USB host controller core is EHCI compilant and has |
| 129 | transaction translator built-in. It can be configured to either |
| 130 | support both high speed and full speed devices, or high speed |
| 131 | devices only. |
| 132 | |
Anatolij Gustschin | 126512e | 2010-09-28 20:55:20 +0200 | [diff] [blame] | 133 | config USB_FSL_MPH_DR_OF |
| 134 | tristate |
| 135 | |
Li Yang | ba02978 | 2007-05-11 17:09:55 +0800 | [diff] [blame] | 136 | config USB_EHCI_FSL |
Fabio Estevam | c0ca9bc | 2012-02-02 14:23:34 -0200 | [diff] [blame] | 137 | bool "Support for Freescale PPC on-chip EHCI USB controller" |
Anton Vorontsov | b5937a4 | 2008-02-21 23:30:58 +0300 | [diff] [blame] | 138 | depends on USB_EHCI_HCD && FSL_SOC |
Li Yang | ba02978 | 2007-05-11 17:09:55 +0800 | [diff] [blame] | 139 | select USB_EHCI_ROOT_HUB_TT |
Marc Kleine-Budde | 018b97d | 2010-10-29 11:04:49 +0200 | [diff] [blame] | 140 | select USB_FSL_MPH_DR_OF if OF |
Li Yang | ba02978 | 2007-05-11 17:09:55 +0800 | [diff] [blame] | 141 | ---help--- |
| 142 | Variation of ARC USB block used in some Freescale chips. |
| 143 | |
Daniel Mack | 7e8d5cd | 2009-10-28 01:14:59 +0100 | [diff] [blame] | 144 | config USB_EHCI_MXC |
Fabio Estevam | c0ca9bc | 2012-02-02 14:23:34 -0200 | [diff] [blame] | 145 | bool "Support for Freescale i.MX on-chip EHCI USB controller" |
Daniel Mack | 7e8d5cd | 2009-10-28 01:14:59 +0100 | [diff] [blame] | 146 | depends on USB_EHCI_HCD && ARCH_MXC |
| 147 | select USB_EHCI_ROOT_HUB_TT |
| 148 | ---help--- |
| 149 | Variation of ARC USB block used in some Freescale chips. |
| 150 | |
Keshava Munegowda | 7f124f4 | 2010-11-21 23:23:41 +0530 | [diff] [blame] | 151 | config USB_EHCI_HCD_OMAP |
| 152 | bool "EHCI support for OMAP3 and later chips" |
| 153 | depends on USB_EHCI_HCD && ARCH_OMAP |
| 154 | default y |
| 155 | --- help --- |
| 156 | Enables support for the on-chip EHCI controller on |
| 157 | OMAP3 and later chips. |
| 158 | |
Pavankumar Kondeti | b0848ae | 2010-12-07 17:53:56 +0530 | [diff] [blame] | 159 | config USB_EHCI_MSM |
| 160 | bool "Support for MSM on-chip EHCI USB controller" |
| 161 | depends on USB_EHCI_HCD && ARCH_MSM |
| 162 | select USB_EHCI_ROOT_HUB_TT |
Pavankumar Kondeti | dfb2130 | 2011-03-04 22:45:02 +0530 | [diff] [blame] | 163 | select USB_MSM_OTG |
Pavankumar Kondeti | b0848ae | 2010-12-07 17:53:56 +0530 | [diff] [blame] | 164 | ---help--- |
| 165 | Enables support for the USB Host controller present on the |
| 166 | Qualcomm chipsets. Root Hub has inbuilt TT. |
| 167 | This driver depends on OTG driver for PHY initialization, |
Pavankumar Kondeti | 8bb6a16 | 2010-12-07 17:53:57 +0530 | [diff] [blame] | 168 | clock management, powering up VBUS, and power management. |
Pavankumar Kondeti | 8cf28f1 | 2011-02-04 10:08:18 +0530 | [diff] [blame] | 169 | This driver is not supported on boards like trout which |
| 170 | has an external PHY. |
Pavankumar Kondeti | b0848ae | 2010-12-07 17:53:56 +0530 | [diff] [blame] | 171 | |
Benoit Goby | 79ad3b5 | 2011-03-09 16:28:56 -0800 | [diff] [blame] | 172 | config USB_EHCI_TEGRA |
| 173 | boolean "NVIDIA Tegra HCD support" |
| 174 | depends on USB_EHCI_HCD && ARCH_TEGRA |
| 175 | select USB_EHCI_ROOT_HUB_TT |
| 176 | help |
| 177 | This driver enables support for the internal USB Host Controllers |
| 178 | found in NVIDIA Tegra SoCs. The controllers are EHCI compliant. |
| 179 | |
Valentine Barshak | da0e8fb | 2007-12-30 15:28:50 -0800 | [diff] [blame] | 180 | config USB_EHCI_HCD_PPC_OF |
| 181 | bool "EHCI support for PPC USB controller on OF platform bus" |
| 182 | depends on USB_EHCI_HCD && PPC_OF |
| 183 | default y |
| 184 | ---help--- |
| 185 | Enables support for the USB controller present on the PowerPC |
| 186 | OpenFirmware platform bus. |
| 187 | |
Yoshihiro Shimoda | 60b0bf0 | 2011-03-01 16:58:37 +0900 | [diff] [blame] | 188 | config USB_EHCI_SH |
| 189 | bool "EHCI support for SuperH USB controller" |
| 190 | depends on USB_EHCI_HCD && SUPERH |
| 191 | ---help--- |
| 192 | Enables support for the on-chip EHCI controller on the SuperH. |
| 193 | If you use the PCI EHCI controller, this option is not necessary. |
| 194 | |
Joonyoung Shim | 1bcc5aa | 2011-04-08 14:08:50 +0900 | [diff] [blame] | 195 | config USB_EHCI_S5P |
| 196 | boolean "S5P EHCI support" |
| 197 | depends on USB_EHCI_HCD && PLAT_S5P |
| 198 | help |
| 199 | Enable support for the S5P SOC's on-chip EHCI controller. |
| 200 | |
Neil Zhang | 3a082ec | 2011-12-20 13:20:23 +0800 | [diff] [blame] | 201 | config USB_EHCI_MV |
| 202 | bool "EHCI support for Marvell on-chip controller" |
Neil Zhang | a219b66 | 2012-02-23 11:41:54 +0800 | [diff] [blame] | 203 | depends on USB_EHCI_HCD && (ARCH_PXA || ARCH_MMP) |
Neil Zhang | 3a082ec | 2011-12-20 13:20:23 +0800 | [diff] [blame] | 204 | select USB_EHCI_ROOT_HUB_TT |
| 205 | ---help--- |
| 206 | Enables support for Marvell (including PXA and MMP series) on-chip |
| 207 | USB SPH and OTG controller. SPH is a single port host, and it can |
| 208 | only be EHCI host. OTG is controller that can switch to host mode. |
| 209 | |
Wan ZongShun | 586dfc8 | 2009-06-13 09:14:28 +0800 | [diff] [blame] | 210 | config USB_W90X900_EHCI |
| 211 | bool "W90X900(W90P910) EHCI support" |
| 212 | depends on USB_EHCI_HCD && ARCH_W90X900 |
| 213 | ---help--- |
| 214 | Enables support for the W90X900 USB controller |
| 215 | |
Mac Lin | 760efe6 | 2010-11-25 23:58:00 +0800 | [diff] [blame] | 216 | config USB_CNS3XXX_EHCI |
| 217 | bool "Cavium CNS3XXX EHCI Module" |
| 218 | depends on USB_EHCI_HCD && ARCH_CNS3XXX |
| 219 | ---help--- |
| 220 | Enable support for the CNS3XXX SOC's on-chip EHCI controller. |
| 221 | It is needed for high-speed (480Mbit/sec) USB 2.0 device |
| 222 | support. |
| 223 | |
Gabor Juhos | 502fa84 | 2011-04-13 10:54:22 +0200 | [diff] [blame] | 224 | config USB_EHCI_ATH79 |
Hauke Mehrtens | 5d98cd4 | 2012-03-13 01:04:53 +0100 | [diff] [blame] | 225 | bool "EHCI support for AR7XXX/AR9XXX SoCs (DEPRECATED)" |
Gabor Juhos | 9d6b204 | 2011-06-20 21:26:09 +0200 | [diff] [blame] | 226 | depends on USB_EHCI_HCD && (SOC_AR71XX || SOC_AR724X || SOC_AR913X || SOC_AR933X) |
Gabor Juhos | 502fa84 | 2011-04-13 10:54:22 +0200 | [diff] [blame] | 227 | select USB_EHCI_ROOT_HUB_TT |
Hauke Mehrtens | 5d98cd4 | 2012-03-13 01:04:53 +0100 | [diff] [blame] | 228 | select USB_EHCI_HCD_PLATFORM |
Gabor Juhos | 502fa84 | 2011-04-13 10:54:22 +0200 | [diff] [blame] | 229 | default y |
| 230 | ---help--- |
Hauke Mehrtens | 5d98cd4 | 2012-03-13 01:04:53 +0100 | [diff] [blame] | 231 | This option is deprecated now and the driver was removed, use |
| 232 | USB_EHCI_HCD_PLATFORM instead. |
| 233 | |
Gabor Juhos | 502fa84 | 2011-04-13 10:54:22 +0200 | [diff] [blame] | 234 | Enables support for the built-in EHCI controller present |
| 235 | on the Atheros AR7XXX/AR9XXX SoCs. |
| 236 | |
Rodolfo Giometti | b92a78e | 2008-10-23 10:08:07 +0200 | [diff] [blame] | 237 | config USB_OXU210HP_HCD |
| 238 | tristate "OXU210HP HCD support" |
| 239 | depends on USB |
| 240 | ---help--- |
| 241 | The OXU210HP is an USB host/OTG/device controller. Enable this |
| 242 | option if your board has this chip. If unsure, say N. |
| 243 | |
| 244 | This driver does not support isochronous transfers and doesn't |
| 245 | implement OTG nor USB device controllers. |
| 246 | |
| 247 | To compile this driver as a module, choose M here: the |
| 248 | module will be called oxu210hp-hcd. |
| 249 | |
Olav Kongas | 4808a1c | 2005-04-09 22:57:39 +0300 | [diff] [blame] | 250 | config USB_ISP116X_HCD |
| 251 | tristate "ISP116X HCD support" |
| 252 | depends on USB |
Olav Kongas | 4808a1c | 2005-04-09 22:57:39 +0300 | [diff] [blame] | 253 | ---help--- |
| 254 | The ISP1160 and ISP1161 chips are USB host controllers. Enable this |
| 255 | option if your board has this chip. If unsure, say N. |
| 256 | |
| 257 | This driver does not support isochronous transfers. |
| 258 | |
| 259 | To compile this driver as a module, choose M here: the |
| 260 | module will be called isp116x-hcd. |
| 261 | |
Sebastian Siewior | db11e47 | 2008-04-24 00:37:04 +0200 | [diff] [blame] | 262 | config USB_ISP1760_HCD |
| 263 | tristate "ISP 1760 HCD support" |
Catalin Marinas | f7e7aa5 | 2009-02-10 16:55:51 +0000 | [diff] [blame] | 264 | depends on USB && EXPERIMENTAL |
Sebastian Siewior | db11e47 | 2008-04-24 00:37:04 +0200 | [diff] [blame] | 265 | ---help--- |
| 266 | The ISP1760 chip is a USB 2.0 host controller. |
| 267 | |
| 268 | This driver does not support isochronous transfers or OTG. |
Sebastian Andrzej Siewior | ff30bf1 | 2008-11-02 15:25:42 +0100 | [diff] [blame] | 269 | This USB controller is usually attached to a non-DMA-Master |
| 270 | capable bus. NXP's eval kit brings this chip on PCI card |
| 271 | where the chip itself is behind a PLB to simulate such |
| 272 | a bus. |
Sebastian Siewior | db11e47 | 2008-04-24 00:37:04 +0200 | [diff] [blame] | 273 | |
| 274 | To compile this driver as a module, choose M here: the |
Sebastian Andrzej Siewior | ff30bf1 | 2008-11-02 15:25:42 +0100 | [diff] [blame] | 275 | module will be called isp1760. |
Sebastian Siewior | db11e47 | 2008-04-24 00:37:04 +0200 | [diff] [blame] | 276 | |
Lothar Wassmann | a9d4309 | 2009-07-16 20:51:21 -0400 | [diff] [blame] | 277 | config USB_ISP1362_HCD |
| 278 | tristate "ISP1362 HCD support" |
| 279 | depends on USB |
| 280 | default N |
| 281 | ---help--- |
| 282 | Supports the Philips ISP1362 chip as a host controller |
| 283 | |
| 284 | This driver does not support isochronous transfers. |
| 285 | |
| 286 | To compile this driver as a module, choose M here: the |
| 287 | module will be called isp1362-hcd. |
| 288 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 289 | config USB_OHCI_HCD |
| 290 | tristate "OHCI HCD support" |
| 291 | depends on USB && USB_ARCH_HAS_OHCI |
| 292 | select ISP1301_OMAP if MACH_OMAP_H2 || MACH_OMAP_H3 |
David Brownell | 2bf5fa1 | 2009-01-24 17:55:57 -0800 | [diff] [blame] | 293 | select USB_OTG_UTILS if ARCH_OMAP |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 294 | ---help--- |
| 295 | The Open Host Controller Interface (OHCI) is a standard for accessing |
| 296 | USB 1.1 host controller hardware. It does more in hardware than Intel's |
| 297 | UHCI specification. If your USB host controller follows the OHCI spec, |
| 298 | say Y. On most non-x86 systems, and on x86 hardware that's not using a |
| 299 | USB controller from Intel or VIA, this is appropriate. If your host |
| 300 | controller doesn't use PCI, this is probably appropriate. For a PCI |
| 301 | based system where you're not sure, the "lspci -v" entry will list the |
| 302 | right "prog-if" for your USB controller(s): EHCI, OHCI, or UHCI. |
| 303 | |
| 304 | To compile this driver as a module, choose M here: the |
| 305 | module will be called ohci-hcd. |
| 306 | |
Anand Gadiyar | 968b448 | 2010-05-10 21:56:12 +0530 | [diff] [blame] | 307 | config USB_OHCI_HCD_OMAP1 |
| 308 | bool "OHCI support for OMAP1/2 chips" |
| 309 | depends on USB_OHCI_HCD && (ARCH_OMAP1 || ARCH_OMAP2) |
| 310 | default y |
| 311 | ---help--- |
| 312 | Enables support for the OHCI controller on OMAP1/2 chips. |
| 313 | |
| 314 | config USB_OHCI_HCD_OMAP3 |
| 315 | bool "OHCI support for OMAP3 and later chips" |
| 316 | depends on USB_OHCI_HCD && (ARCH_OMAP3 || ARCH_OMAP4) |
| 317 | default y |
| 318 | ---help--- |
| 319 | Enables support for the on-chip OHCI controller on |
| 320 | OMAP3 and later chips. |
| 321 | |
Gabor Juhos | 90e6ca5 | 2011-04-13 10:54:24 +0200 | [diff] [blame] | 322 | config USB_OHCI_ATH79 |
Hauke Mehrtens | 5d98cd4 | 2012-03-13 01:04:53 +0100 | [diff] [blame] | 323 | bool "USB OHCI support for the Atheros AR71XX/AR7240 SoCs (DEPRECATED)" |
Gabor Juhos | 90e6ca5 | 2011-04-13 10:54:24 +0200 | [diff] [blame] | 324 | depends on USB_OHCI_HCD && (SOC_AR71XX || SOC_AR724X) |
Hauke Mehrtens | 5d98cd4 | 2012-03-13 01:04:53 +0100 | [diff] [blame] | 325 | select USB_OHCI_HCD_PLATFORM |
Gabor Juhos | 90e6ca5 | 2011-04-13 10:54:24 +0200 | [diff] [blame] | 326 | default y |
| 327 | help |
Hauke Mehrtens | 5d98cd4 | 2012-03-13 01:04:53 +0100 | [diff] [blame] | 328 | This option is deprecated now and the driver was removed, use |
| 329 | USB_OHCI_HCD_PLATFORM instead. |
| 330 | |
Gabor Juhos | 90e6ca5 | 2011-04-13 10:54:24 +0200 | [diff] [blame] | 331 | Enables support for the built-in OHCI controller present on the |
| 332 | Atheros AR71XX/AR7240 SoCs. |
| 333 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 334 | config USB_OHCI_HCD_PPC_SOC |
| 335 | bool "OHCI support for on-chip PPC USB controller" |
| 336 | depends on USB_OHCI_HCD && (STB03xxx || PPC_MPC52xx) |
| 337 | default y |
Benjamin Herrenschmidt | 11d1a4a | 2006-12-15 06:54:03 +1100 | [diff] [blame] | 338 | select USB_OHCI_BIG_ENDIAN_DESC |
| 339 | select USB_OHCI_BIG_ENDIAN_MMIO |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 340 | ---help--- |
| 341 | Enables support for the USB controller on the MPC52xx or |
| 342 | STB03xxx processor chip. If unsure, say Y. |
| 343 | |
Sylvain Munaut | 495a678 | 2006-12-13 21:09:55 +0100 | [diff] [blame] | 344 | config USB_OHCI_HCD_PPC_OF_BE |
Arnd Bergmann | 45e8388 | 2009-06-19 05:35:34 -0700 | [diff] [blame] | 345 | bool "OHCI support for OF platform bus (big endian)" |
| 346 | depends on USB_OHCI_HCD && PPC_OF |
Sylvain Munaut | 495a678 | 2006-12-13 21:09:55 +0100 | [diff] [blame] | 347 | select USB_OHCI_BIG_ENDIAN_DESC |
| 348 | select USB_OHCI_BIG_ENDIAN_MMIO |
Arnd Bergmann | 45e8388 | 2009-06-19 05:35:34 -0700 | [diff] [blame] | 349 | ---help--- |
| 350 | Enables support for big-endian USB controllers present on the |
| 351 | OpenFirmware platform bus. |
Sylvain Munaut | 495a678 | 2006-12-13 21:09:55 +0100 | [diff] [blame] | 352 | |
| 353 | config USB_OHCI_HCD_PPC_OF_LE |
Arnd Bergmann | 45e8388 | 2009-06-19 05:35:34 -0700 | [diff] [blame] | 354 | bool "OHCI support for OF platform bus (little endian)" |
| 355 | depends on USB_OHCI_HCD && PPC_OF |
Sylvain Munaut | 495a678 | 2006-12-13 21:09:55 +0100 | [diff] [blame] | 356 | select USB_OHCI_LITTLE_ENDIAN |
Arnd Bergmann | 45e8388 | 2009-06-19 05:35:34 -0700 | [diff] [blame] | 357 | ---help--- |
| 358 | Enables support for little-endian USB controllers present on the |
| 359 | OpenFirmware platform bus. |
| 360 | |
| 361 | config USB_OHCI_HCD_PPC_OF |
| 362 | bool |
| 363 | depends on USB_OHCI_HCD && PPC_OF |
| 364 | default USB_OHCI_HCD_PPC_OF_BE || USB_OHCI_HCD_PPC_OF_LE |
Sylvain Munaut | 495a678 | 2006-12-13 21:09:55 +0100 | [diff] [blame] | 365 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 366 | config USB_OHCI_HCD_PCI |
| 367 | bool "OHCI support for PCI-bus USB controllers" |
Sylvain Munaut | 495a678 | 2006-12-13 21:09:55 +0100 | [diff] [blame] | 368 | depends on USB_OHCI_HCD && PCI && (STB03xxx || PPC_MPC52xx || USB_OHCI_HCD_PPC_OF) |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 369 | default y |
| 370 | select USB_OHCI_LITTLE_ENDIAN |
| 371 | ---help--- |
| 372 | Enables support for PCI-bus plug-in USB controller cards. |
| 373 | If unsure, say Y. |
| 374 | |
Michael Buesch | c604e85 | 2007-10-09 23:47:17 -0700 | [diff] [blame] | 375 | config USB_OHCI_HCD_SSB |
| 376 | bool "OHCI support for Broadcom SSB OHCI core" |
Adrian Bunk | 1011b32 | 2007-10-27 03:06:47 +0200 | [diff] [blame] | 377 | depends on USB_OHCI_HCD && (SSB = y || SSB = USB_OHCI_HCD) && EXPERIMENTAL |
Michael Buesch | c604e85 | 2007-10-09 23:47:17 -0700 | [diff] [blame] | 378 | default n |
| 379 | ---help--- |
| 380 | Support for the Sonics Silicon Backplane (SSB) attached |
| 381 | Broadcom USB OHCI core. |
| 382 | |
| 383 | This device is present in some embedded devices with |
| 384 | Broadcom based SSB bus. |
| 385 | |
| 386 | If unsure, say N. |
| 387 | |
Yoshihiro Shimoda | 60b0bf0 | 2011-03-01 16:58:37 +0900 | [diff] [blame] | 388 | config USB_OHCI_SH |
| 389 | bool "OHCI support for SuperH USB controller" |
| 390 | depends on USB_OHCI_HCD && SUPERH |
| 391 | ---help--- |
| 392 | Enables support for the on-chip OHCI controller on the SuperH. |
| 393 | If you use the PCI OHCI controller, this option is not necessary. |
| 394 | |
Jingoo Han | 6219424 | 2011-12-23 11:20:54 +0900 | [diff] [blame] | 395 | config USB_OHCI_EXYNOS |
| 396 | boolean "OHCI support for Samsung EXYNOS SoC Series" |
| 397 | depends on USB_OHCI_HCD && ARCH_EXYNOS |
| 398 | help |
| 399 | Enable support for the Samsung Exynos SOC's on-chip OHCI controller. |
| 400 | |
Mac Lin | 760efe6 | 2010-11-25 23:58:00 +0800 | [diff] [blame] | 401 | config USB_CNS3XXX_OHCI |
| 402 | bool "Cavium CNS3XXX OHCI Module" |
| 403 | depends on USB_OHCI_HCD && ARCH_CNS3XXX |
| 404 | ---help--- |
| 405 | Enable support for the CNS3XXX SOC's on-chip OHCI controller. |
| 406 | It is needed for low-speed USB 1.0 device support. |
| 407 | |
Hauke Mehrtens | fa3364b | 2012-03-13 01:04:47 +0100 | [diff] [blame] | 408 | config USB_OHCI_HCD_PLATFORM |
| 409 | bool "Generic OHCI driver for a platform device" |
| 410 | depends on USB_OHCI_HCD && EXPERIMENTAL |
| 411 | default n |
| 412 | ---help--- |
| 413 | Adds an OHCI host driver for a generic platform device, which |
| 414 | provieds a memory space and an irq. |
| 415 | |
| 416 | If unsure, say N. |
| 417 | |
Hauke Mehrtens | 7a7a4a59 | 2012-03-13 01:04:48 +0100 | [diff] [blame] | 418 | config USB_EHCI_HCD_PLATFORM |
| 419 | bool "Generic EHCI driver for a platform device" |
| 420 | depends on USB_EHCI_HCD && EXPERIMENTAL |
| 421 | default n |
| 422 | ---help--- |
| 423 | Adds an EHCI host driver for a generic platform device, which |
| 424 | provieds a memory space and an irq. |
| 425 | |
| 426 | If unsure, say N. |
| 427 | |
Benjamin Herrenschmidt | 11d1a4a | 2006-12-15 06:54:03 +1100 | [diff] [blame] | 428 | config USB_OHCI_BIG_ENDIAN_DESC |
| 429 | bool |
| 430 | depends on USB_OHCI_HCD |
| 431 | default n |
| 432 | |
| 433 | config USB_OHCI_BIG_ENDIAN_MMIO |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 434 | bool |
| 435 | depends on USB_OHCI_HCD |
| 436 | default n |
| 437 | |
| 438 | config USB_OHCI_LITTLE_ENDIAN |
| 439 | bool |
| 440 | depends on USB_OHCI_HCD |
| 441 | default n if STB03xxx || PPC_MPC52xx |
| 442 | default y |
| 443 | |
| 444 | config USB_UHCI_HCD |
| 445 | tristate "UHCI HCD (most Intel and VIA) support" |
Jan Andersson | 3db7739 | 2011-05-06 12:00:18 +0200 | [diff] [blame] | 446 | depends on USB && (PCI || SPARC_LEON) |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 447 | ---help--- |
| 448 | The Universal Host Controller Interface is a standard by Intel for |
| 449 | accessing the USB hardware in the PC (which is also called the USB |
| 450 | host controller). If your USB host controller conforms to this |
| 451 | standard, you may want to say Y, but see below. All recent boards |
| 452 | with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX, |
| 453 | i810, i820) conform to this standard. Also all VIA PCI chipsets |
| 454 | (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro |
Jan Andersson | 3db7739 | 2011-05-06 12:00:18 +0200 | [diff] [blame] | 455 | 133) and LEON/GRLIB SoCs with the GRUSBHC controller. |
| 456 | If unsure, say Y. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 457 | |
| 458 | To compile this driver as a module, choose M here: the |
| 459 | module will be called uhci-hcd. |
| 460 | |
Jan Andersson | d3219d1 | 2011-05-06 12:00:17 +0200 | [diff] [blame] | 461 | config USB_UHCI_SUPPORT_NON_PCI_HC |
| 462 | bool |
| 463 | depends on USB_UHCI_HCD |
Jan Andersson | 3db7739 | 2011-05-06 12:00:18 +0200 | [diff] [blame] | 464 | default y if SPARC_LEON |
Jan Andersson | d3219d1 | 2011-05-06 12:00:17 +0200 | [diff] [blame] | 465 | |
Jan Andersson | 8452c67 | 2011-05-18 10:44:49 +0200 | [diff] [blame] | 466 | config USB_UHCI_BIG_ENDIAN_MMIO |
| 467 | bool |
Jan Andersson | fda928a | 2011-05-18 10:44:53 +0200 | [diff] [blame] | 468 | depends on USB_UHCI_SUPPORT_NON_PCI_HC && SPARC_LEON |
| 469 | default y |
Jan Andersson | 8452c67 | 2011-05-18 10:44:49 +0200 | [diff] [blame] | 470 | |
Jan Andersson | 51e2f62 | 2011-05-18 10:44:51 +0200 | [diff] [blame] | 471 | config USB_UHCI_BIG_ENDIAN_DESC |
| 472 | bool |
Jan Andersson | fda928a | 2011-05-18 10:44:53 +0200 | [diff] [blame] | 473 | depends on USB_UHCI_SUPPORT_NON_PCI_HC && SPARC_LEON |
| 474 | default y |
Jan Andersson | 51e2f62 | 2011-05-18 10:44:51 +0200 | [diff] [blame] | 475 | |
Anton Vorontsov | 236dd4d | 2009-01-10 05:03:21 +0300 | [diff] [blame] | 476 | config USB_FHCI_HCD |
| 477 | tristate "Freescale QE USB Host Controller support" |
| 478 | depends on USB && OF_GPIO && QE_GPIO && QUICC_ENGINE |
| 479 | select FSL_GTM |
| 480 | select QE_USB |
| 481 | help |
| 482 | This driver enables support for Freescale QE USB Host Controller |
| 483 | (as found on MPC8360 and MPC8323 processors), the driver supports |
| 484 | Full and Low Speed USB. |
| 485 | |
| 486 | config FHCI_DEBUG |
| 487 | bool "Freescale QE USB Host Controller debug support" |
| 488 | depends on USB_FHCI_HCD && DEBUG_FS |
| 489 | help |
| 490 | Say "y" to see some FHCI debug information and statistics |
Lucas De Marchi | 25985ed | 2011-03-30 22:57:33 -0300 | [diff] [blame] | 491 | through debugfs. |
Anton Vorontsov | 236dd4d | 2009-01-10 05:03:21 +0300 | [diff] [blame] | 492 | |
Tony Olech | d774efe | 2006-09-13 11:27:35 +0100 | [diff] [blame] | 493 | config USB_U132_HCD |
| 494 | tristate "Elan U132 Adapter Host Controller" |
| 495 | depends on USB && USB_FTDI_ELAN |
| 496 | default M |
| 497 | help |
| 498 | The U132 adapter is a USB to CardBus adapter specifically designed |
| 499 | for PC cards that contain an OHCI host controller. Typical PC cards |
| 500 | are the Orange Mobile 3G Option GlobeTrotter Fusion card. The U132 |
| 501 | adapter will *NOT* work with PC cards that do not contain an OHCI |
| 502 | controller. |
| 503 | |
Matt LaPlante | 3cb2fcc | 2006-11-30 05:22:59 +0100 | [diff] [blame] | 504 | For those PC cards that contain multiple OHCI controllers only the |
Tony Olech | d774efe | 2006-09-13 11:27:35 +0100 | [diff] [blame] | 505 | first one is used. |
| 506 | |
| 507 | The driver consists of two modules, the "ftdi-elan" module is a |
| 508 | USB client driver that interfaces to the FTDI chip within ELAN's |
| 509 | USB-to-PCMCIA adapter, and this "u132-hcd" module is a USB host |
| 510 | controller driver that talks to the OHCI controller within the |
| 511 | CardBus cards that are inserted in the U132 adapter. |
| 512 | |
| 513 | This driver has been tested with a CardBus OHCI USB adapter, and |
| 514 | worked with a USB PEN Drive inserted into the first USB port of |
| 515 | the PCCARD. A rather pointless thing to do, but useful for testing. |
| 516 | |
| 517 | It is safe to say M here. |
| 518 | |
| 519 | See also <http://www.elandigitalsystems.com/support/ufaq/u132linux.php> |
| 520 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 521 | config USB_SL811_HCD |
| 522 | tristate "SL811HS HCD support" |
| 523 | depends on USB |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 524 | help |
| 525 | The SL811HS is a single-port USB controller that supports either |
| 526 | host side or peripheral side roles. Enable this option if your |
| 527 | board has this chip, and you want to use it as a host controller. |
| 528 | If unsure, say N. |
| 529 | |
| 530 | To compile this driver as a module, choose M here: the |
| 531 | module will be called sl811-hcd. |
| 532 | |
Mike Frysinger | ad7c56f | 2011-03-22 15:35:39 -0400 | [diff] [blame] | 533 | config USB_SL811_HCD_ISO |
| 534 | bool "partial ISO support" |
| 535 | depends on USB_SL811_HCD |
| 536 | help |
| 537 | The driver doesn't support iso_frame_desc (yet), but for some simple |
| 538 | devices that just queue one ISO frame per URB, then ISO transfers |
| 539 | "should" work using the normal urb status fields. |
| 540 | |
| 541 | If unsure, say N. |
| 542 | |
David Brownell | c6de2b6 | 2005-05-26 05:55:55 -0700 | [diff] [blame] | 543 | config USB_SL811_CS |
| 544 | tristate "CF/PCMCIA support for SL811HS HCD" |
| 545 | depends on USB_SL811_HCD && PCMCIA |
David Brownell | c6de2b6 | 2005-05-26 05:55:55 -0700 | [diff] [blame] | 546 | help |
| 547 | Wraps a PCMCIA driver around the SL811HS HCD, supporting the RATOC |
| 548 | REX-CFU1U CF card (often used with PDAs). If unsure, say N. |
| 549 | |
| 550 | To compile this driver as a module, choose M here: the |
| 551 | module will be called "sl811_cs". |
| 552 | |
Yoshihiro Shimoda | 5d30435 | 2007-05-10 13:18:19 +0900 | [diff] [blame] | 553 | config USB_R8A66597_HCD |
M4rkusXXL | fa0de2b | 2007-08-10 14:53:32 -0700 | [diff] [blame] | 554 | tristate "R8A66597 HCD support" |
Yoshihiro Shimoda | 5d30435 | 2007-05-10 13:18:19 +0900 | [diff] [blame] | 555 | depends on USB |
| 556 | help |
| 557 | The R8A66597 is a USB 2.0 host and peripheral controller. |
| 558 | |
| 559 | Enable this option if your board has this chip, and you want |
| 560 | to use it as a host controller. If unsure, say N. |
| 561 | |
| 562 | To compile this driver as a module, choose M here: the |
| 563 | module will be called r8a66597-hcd. |
| 564 | |
Kuninori Morimoto | 034d7c1 | 2011-10-10 22:07:40 -0700 | [diff] [blame] | 565 | config USB_RENESAS_USBHS_HCD |
| 566 | tristate "Renesas USBHS HCD support" |
| 567 | depends on USB |
| 568 | depends on USB_RENESAS_USBHS |
| 569 | help |
| 570 | The Renesas USBHS is a USB 2.0 host and peripheral controller. |
| 571 | |
| 572 | Enable this option if your board has this chip, and you want |
| 573 | to use it as a host controller. If unsure, say N. |
| 574 | |
| 575 | To compile this driver as a module, choose M here: the |
| 576 | module will be called renesas-usbhs. |
| 577 | |
David Vrabel | 7e6133a | 2008-09-17 16:34:28 +0100 | [diff] [blame] | 578 | config USB_WHCI_HCD |
David Vrabel | 6a7c3e4 | 2008-09-17 16:34:43 +0100 | [diff] [blame] | 579 | tristate "Wireless USB Host Controller Interface (WHCI) driver (EXPERIMENTAL)" |
| 580 | depends on EXPERIMENTAL |
Randy Dunlap | 36f8ecb | 2012-01-27 15:47:03 -0800 | [diff] [blame] | 581 | depends on PCI && USB && UWB |
David Vrabel | 7e6133a | 2008-09-17 16:34:28 +0100 | [diff] [blame] | 582 | select USB_WUSB |
| 583 | select UWB_WHCI |
| 584 | help |
| 585 | A driver for PCI-based Wireless USB Host Controllers that are |
| 586 | compliant with the WHCI specification. |
| 587 | |
| 588 | To compile this driver a module, choose M here: the module |
| 589 | will be called "whci-hcd". |
Inaky Perez-Gonzalez | d09318b | 2008-09-17 16:34:30 +0100 | [diff] [blame] | 590 | |
| 591 | config USB_HWA_HCD |
David Vrabel | 6a7c3e4 | 2008-09-17 16:34:43 +0100 | [diff] [blame] | 592 | tristate "Host Wire Adapter (HWA) driver (EXPERIMENTAL)" |
| 593 | depends on EXPERIMENTAL |
Randy Dunlap | 36f8ecb | 2012-01-27 15:47:03 -0800 | [diff] [blame] | 594 | depends on USB && UWB |
Inaky Perez-Gonzalez | d09318b | 2008-09-17 16:34:30 +0100 | [diff] [blame] | 595 | select USB_WUSB |
| 596 | select UWB_HWA |
| 597 | help |
| 598 | This driver enables you to connect Wireless USB devices to |
| 599 | your system using a Host Wire Adaptor USB dongle. This is an |
| 600 | UWB Radio Controller and WUSB Host Controller connected to |
| 601 | your machine via USB (specified in WUSB1.0). |
| 602 | |
| 603 | To compile this driver a module, choose M here: the module |
| 604 | will be called "hwa-hc". |
Martin Fuzzey | 23d3e7a | 2009-11-21 12:14:48 +0100 | [diff] [blame] | 605 | |
| 606 | config USB_IMX21_HCD |
Sascha Hauer | 5de9ec4 | 2011-08-24 08:41:10 +0200 | [diff] [blame] | 607 | tristate "i.MX21 HCD support" |
| 608 | depends on USB && ARM && ARCH_MXC |
Martin Fuzzey | 23d3e7a | 2009-11-21 12:14:48 +0100 | [diff] [blame] | 609 | help |
| 610 | This driver enables support for the on-chip USB host in the |
Sascha Hauer | 5de9ec4 | 2011-08-24 08:41:10 +0200 | [diff] [blame] | 611 | i.MX21 processor. |
Martin Fuzzey | 23d3e7a | 2009-11-21 12:14:48 +0100 | [diff] [blame] | 612 | |
| 613 | To compile this driver as a module, choose M here: the |
| 614 | module will be called "imx21-hcd". |
| 615 | |
David Daney | 1643acc | 2010-10-08 14:47:52 -0700 | [diff] [blame] | 616 | config USB_OCTEON_EHCI |
| 617 | bool "Octeon on-chip EHCI support" |
| 618 | depends on USB && USB_EHCI_HCD && CPU_CAVIUM_OCTEON |
| 619 | default n |
| 620 | select USB_EHCI_BIG_ENDIAN_MMIO |
| 621 | help |
| 622 | Enable support for the Octeon II SOC's on-chip EHCI |
| 623 | controller. It is needed for high-speed (480Mbit/sec) |
| 624 | USB 2.0 device support. All CN6XXX based chips with USB are |
| 625 | supported. |
| 626 | |
| 627 | config USB_OCTEON_OHCI |
| 628 | bool "Octeon on-chip OHCI support" |
| 629 | depends on USB && USB_OHCI_HCD && CPU_CAVIUM_OCTEON |
| 630 | default USB_OCTEON_EHCI |
| 631 | select USB_OHCI_BIG_ENDIAN_MMIO |
| 632 | select USB_OHCI_LITTLE_ENDIAN |
| 633 | help |
| 634 | Enable support for the Octeon II SOC's on-chip OHCI |
| 635 | controller. It is needed for low-speed USB 1.0 device |
| 636 | support. All CN6XXX based chips with USB are supported. |
| 637 | |
| 638 | config USB_OCTEON2_COMMON |
| 639 | bool |
| 640 | default y if USB_OCTEON_EHCI || USB_OCTEON_OHCI |