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 | 22ced687 | 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 | 22ced687 | 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 |
| 225 | bool "EHCI support for AR7XXX/AR9XXX SoCs" |
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 |
| 228 | default y |
| 229 | ---help--- |
| 230 | Enables support for the built-in EHCI controller present |
| 231 | on the Atheros AR7XXX/AR9XXX SoCs. |
| 232 | |
Rodolfo Giometti | b92a78e | 2008-10-23 10:08:07 +0200 | [diff] [blame] | 233 | config USB_OXU210HP_HCD |
| 234 | tristate "OXU210HP HCD support" |
| 235 | depends on USB |
| 236 | ---help--- |
| 237 | The OXU210HP is an USB host/OTG/device controller. Enable this |
| 238 | option if your board has this chip. If unsure, say N. |
| 239 | |
| 240 | This driver does not support isochronous transfers and doesn't |
| 241 | implement OTG nor USB device controllers. |
| 242 | |
| 243 | To compile this driver as a module, choose M here: the |
| 244 | module will be called oxu210hp-hcd. |
| 245 | |
Olav Kongas | 4808a1c | 2005-04-09 22:57:39 +0300 | [diff] [blame] | 246 | config USB_ISP116X_HCD |
| 247 | tristate "ISP116X HCD support" |
| 248 | depends on USB |
Olav Kongas | 4808a1c | 2005-04-09 22:57:39 +0300 | [diff] [blame] | 249 | ---help--- |
| 250 | The ISP1160 and ISP1161 chips are USB host controllers. Enable this |
| 251 | option if your board has this chip. If unsure, say N. |
| 252 | |
| 253 | This driver does not support isochronous transfers. |
| 254 | |
| 255 | To compile this driver as a module, choose M here: the |
| 256 | module will be called isp116x-hcd. |
| 257 | |
Sebastian Siewior | db11e47 | 2008-04-24 00:37:04 +0200 | [diff] [blame] | 258 | config USB_ISP1760_HCD |
| 259 | tristate "ISP 1760 HCD support" |
Catalin Marinas | f7e7aa5 | 2009-02-10 16:55:51 +0000 | [diff] [blame] | 260 | depends on USB && EXPERIMENTAL |
Sebastian Siewior | db11e47 | 2008-04-24 00:37:04 +0200 | [diff] [blame] | 261 | ---help--- |
| 262 | The ISP1760 chip is a USB 2.0 host controller. |
| 263 | |
| 264 | This driver does not support isochronous transfers or OTG. |
Sebastian Andrzej Siewior | ff30bf1 | 2008-11-02 15:25:42 +0100 | [diff] [blame] | 265 | This USB controller is usually attached to a non-DMA-Master |
| 266 | capable bus. NXP's eval kit brings this chip on PCI card |
| 267 | where the chip itself is behind a PLB to simulate such |
| 268 | a bus. |
Sebastian Siewior | db11e47 | 2008-04-24 00:37:04 +0200 | [diff] [blame] | 269 | |
| 270 | To compile this driver as a module, choose M here: the |
Sebastian Andrzej Siewior | ff30bf1 | 2008-11-02 15:25:42 +0100 | [diff] [blame] | 271 | module will be called isp1760. |
Sebastian Siewior | db11e47 | 2008-04-24 00:37:04 +0200 | [diff] [blame] | 272 | |
Lothar Wassmann | a9d4309 | 2009-07-16 20:51:21 -0400 | [diff] [blame] | 273 | config USB_ISP1362_HCD |
| 274 | tristate "ISP1362 HCD support" |
| 275 | depends on USB |
| 276 | default N |
| 277 | ---help--- |
| 278 | Supports the Philips ISP1362 chip as a host controller |
| 279 | |
| 280 | This driver does not support isochronous transfers. |
| 281 | |
| 282 | To compile this driver as a module, choose M here: the |
| 283 | module will be called isp1362-hcd. |
| 284 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 285 | config USB_OHCI_HCD |
| 286 | tristate "OHCI HCD support" |
| 287 | depends on USB && USB_ARCH_HAS_OHCI |
| 288 | select ISP1301_OMAP if MACH_OMAP_H2 || MACH_OMAP_H3 |
David Brownell | 2bf5fa1 | 2009-01-24 17:55:57 -0800 | [diff] [blame] | 289 | select USB_OTG_UTILS if ARCH_OMAP |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 290 | ---help--- |
| 291 | The Open Host Controller Interface (OHCI) is a standard for accessing |
| 292 | USB 1.1 host controller hardware. It does more in hardware than Intel's |
| 293 | UHCI specification. If your USB host controller follows the OHCI spec, |
| 294 | say Y. On most non-x86 systems, and on x86 hardware that's not using a |
| 295 | USB controller from Intel or VIA, this is appropriate. If your host |
| 296 | controller doesn't use PCI, this is probably appropriate. For a PCI |
| 297 | based system where you're not sure, the "lspci -v" entry will list the |
| 298 | right "prog-if" for your USB controller(s): EHCI, OHCI, or UHCI. |
| 299 | |
| 300 | To compile this driver as a module, choose M here: the |
| 301 | module will be called ohci-hcd. |
| 302 | |
Anand Gadiyar | 968b448 | 2010-05-10 21:56:12 +0530 | [diff] [blame] | 303 | config USB_OHCI_HCD_OMAP1 |
| 304 | bool "OHCI support for OMAP1/2 chips" |
| 305 | depends on USB_OHCI_HCD && (ARCH_OMAP1 || ARCH_OMAP2) |
| 306 | default y |
| 307 | ---help--- |
| 308 | Enables support for the OHCI controller on OMAP1/2 chips. |
| 309 | |
| 310 | config USB_OHCI_HCD_OMAP3 |
| 311 | bool "OHCI support for OMAP3 and later chips" |
| 312 | depends on USB_OHCI_HCD && (ARCH_OMAP3 || ARCH_OMAP4) |
| 313 | default y |
| 314 | ---help--- |
| 315 | Enables support for the on-chip OHCI controller on |
| 316 | OMAP3 and later chips. |
| 317 | |
Gabor Juhos | 90e6ca5 | 2011-04-13 10:54:24 +0200 | [diff] [blame] | 318 | config USB_OHCI_ATH79 |
| 319 | bool "USB OHCI support for the Atheros AR71XX/AR7240 SoCs" |
| 320 | depends on USB_OHCI_HCD && (SOC_AR71XX || SOC_AR724X) |
| 321 | default y |
| 322 | help |
| 323 | Enables support for the built-in OHCI controller present on the |
| 324 | Atheros AR71XX/AR7240 SoCs. |
| 325 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 326 | config USB_OHCI_HCD_PPC_SOC |
| 327 | bool "OHCI support for on-chip PPC USB controller" |
| 328 | depends on USB_OHCI_HCD && (STB03xxx || PPC_MPC52xx) |
| 329 | default y |
Benjamin Herrenschmidt | 11d1a4a | 2006-12-15 06:54:03 +1100 | [diff] [blame] | 330 | select USB_OHCI_BIG_ENDIAN_DESC |
| 331 | select USB_OHCI_BIG_ENDIAN_MMIO |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 332 | ---help--- |
| 333 | Enables support for the USB controller on the MPC52xx or |
| 334 | STB03xxx processor chip. If unsure, say Y. |
| 335 | |
Sylvain Munaut | 495a678 | 2006-12-13 21:09:55 +0100 | [diff] [blame] | 336 | config USB_OHCI_HCD_PPC_OF_BE |
Arnd Bergmann | 45e8388 | 2009-06-19 05:35:34 -0700 | [diff] [blame] | 337 | bool "OHCI support for OF platform bus (big endian)" |
| 338 | depends on USB_OHCI_HCD && PPC_OF |
Sylvain Munaut | 495a678 | 2006-12-13 21:09:55 +0100 | [diff] [blame] | 339 | select USB_OHCI_BIG_ENDIAN_DESC |
| 340 | select USB_OHCI_BIG_ENDIAN_MMIO |
Arnd Bergmann | 45e8388 | 2009-06-19 05:35:34 -0700 | [diff] [blame] | 341 | ---help--- |
| 342 | Enables support for big-endian USB controllers present on the |
| 343 | OpenFirmware platform bus. |
Sylvain Munaut | 495a678 | 2006-12-13 21:09:55 +0100 | [diff] [blame] | 344 | |
| 345 | config USB_OHCI_HCD_PPC_OF_LE |
Arnd Bergmann | 45e8388 | 2009-06-19 05:35:34 -0700 | [diff] [blame] | 346 | bool "OHCI support for OF platform bus (little endian)" |
| 347 | depends on USB_OHCI_HCD && PPC_OF |
Sylvain Munaut | 495a678 | 2006-12-13 21:09:55 +0100 | [diff] [blame] | 348 | select USB_OHCI_LITTLE_ENDIAN |
Arnd Bergmann | 45e8388 | 2009-06-19 05:35:34 -0700 | [diff] [blame] | 349 | ---help--- |
| 350 | Enables support for little-endian USB controllers present on the |
| 351 | OpenFirmware platform bus. |
| 352 | |
| 353 | config USB_OHCI_HCD_PPC_OF |
| 354 | bool |
| 355 | depends on USB_OHCI_HCD && PPC_OF |
| 356 | 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] | 357 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 358 | config USB_OHCI_HCD_PCI |
| 359 | bool "OHCI support for PCI-bus USB controllers" |
Sylvain Munaut | 495a678 | 2006-12-13 21:09:55 +0100 | [diff] [blame] | 360 | 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] | 361 | default y |
| 362 | select USB_OHCI_LITTLE_ENDIAN |
| 363 | ---help--- |
| 364 | Enables support for PCI-bus plug-in USB controller cards. |
| 365 | If unsure, say Y. |
| 366 | |
Michael Buesch | c604e85 | 2007-10-09 23:47:17 -0700 | [diff] [blame] | 367 | config USB_OHCI_HCD_SSB |
| 368 | bool "OHCI support for Broadcom SSB OHCI core" |
Adrian Bunk | 1011b32 | 2007-10-27 03:06:47 +0200 | [diff] [blame] | 369 | depends on USB_OHCI_HCD && (SSB = y || SSB = USB_OHCI_HCD) && EXPERIMENTAL |
Michael Buesch | c604e85 | 2007-10-09 23:47:17 -0700 | [diff] [blame] | 370 | default n |
| 371 | ---help--- |
| 372 | Support for the Sonics Silicon Backplane (SSB) attached |
| 373 | Broadcom USB OHCI core. |
| 374 | |
| 375 | This device is present in some embedded devices with |
| 376 | Broadcom based SSB bus. |
| 377 | |
| 378 | If unsure, say N. |
| 379 | |
Yoshihiro Shimoda | 60b0bf0 | 2011-03-01 16:58:37 +0900 | [diff] [blame] | 380 | config USB_OHCI_SH |
| 381 | bool "OHCI support for SuperH USB controller" |
| 382 | depends on USB_OHCI_HCD && SUPERH |
| 383 | ---help--- |
| 384 | Enables support for the on-chip OHCI controller on the SuperH. |
| 385 | If you use the PCI OHCI controller, this option is not necessary. |
| 386 | |
Jingoo Han | 6219424 | 2011-12-23 11:20:54 +0900 | [diff] [blame] | 387 | config USB_OHCI_EXYNOS |
| 388 | boolean "OHCI support for Samsung EXYNOS SoC Series" |
| 389 | depends on USB_OHCI_HCD && ARCH_EXYNOS |
| 390 | help |
| 391 | Enable support for the Samsung Exynos SOC's on-chip OHCI controller. |
| 392 | |
Mac Lin | 760efe6 | 2010-11-25 23:58:00 +0800 | [diff] [blame] | 393 | config USB_CNS3XXX_OHCI |
| 394 | bool "Cavium CNS3XXX OHCI Module" |
| 395 | depends on USB_OHCI_HCD && ARCH_CNS3XXX |
| 396 | ---help--- |
| 397 | Enable support for the CNS3XXX SOC's on-chip OHCI controller. |
| 398 | It is needed for low-speed USB 1.0 device support. |
| 399 | |
Hauke Mehrtens | fa3364b | 2012-03-13 01:04:47 +0100 | [diff] [blame] | 400 | config USB_OHCI_HCD_PLATFORM |
| 401 | bool "Generic OHCI driver for a platform device" |
| 402 | depends on USB_OHCI_HCD && EXPERIMENTAL |
| 403 | default n |
| 404 | ---help--- |
| 405 | Adds an OHCI host driver for a generic platform device, which |
| 406 | provieds a memory space and an irq. |
| 407 | |
| 408 | If unsure, say N. |
| 409 | |
Hauke Mehrtens | 7a7a4a59 | 2012-03-13 01:04:48 +0100 | [diff] [blame^] | 410 | config USB_EHCI_HCD_PLATFORM |
| 411 | bool "Generic EHCI driver for a platform device" |
| 412 | depends on USB_EHCI_HCD && EXPERIMENTAL |
| 413 | default n |
| 414 | ---help--- |
| 415 | Adds an EHCI host driver for a generic platform device, which |
| 416 | provieds a memory space and an irq. |
| 417 | |
| 418 | If unsure, say N. |
| 419 | |
Benjamin Herrenschmidt | 11d1a4a | 2006-12-15 06:54:03 +1100 | [diff] [blame] | 420 | config USB_OHCI_BIG_ENDIAN_DESC |
| 421 | bool |
| 422 | depends on USB_OHCI_HCD |
| 423 | default n |
| 424 | |
| 425 | config USB_OHCI_BIG_ENDIAN_MMIO |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 426 | bool |
| 427 | depends on USB_OHCI_HCD |
| 428 | default n |
| 429 | |
| 430 | config USB_OHCI_LITTLE_ENDIAN |
| 431 | bool |
| 432 | depends on USB_OHCI_HCD |
| 433 | default n if STB03xxx || PPC_MPC52xx |
| 434 | default y |
| 435 | |
| 436 | config USB_UHCI_HCD |
| 437 | tristate "UHCI HCD (most Intel and VIA) support" |
Jan Andersson | 3db7739 | 2011-05-06 12:00:18 +0200 | [diff] [blame] | 438 | depends on USB && (PCI || SPARC_LEON) |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 439 | ---help--- |
| 440 | The Universal Host Controller Interface is a standard by Intel for |
| 441 | accessing the USB hardware in the PC (which is also called the USB |
| 442 | host controller). If your USB host controller conforms to this |
| 443 | standard, you may want to say Y, but see below. All recent boards |
| 444 | with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX, |
| 445 | i810, i820) conform to this standard. Also all VIA PCI chipsets |
| 446 | (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] | 447 | 133) and LEON/GRLIB SoCs with the GRUSBHC controller. |
| 448 | If unsure, say Y. |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 449 | |
| 450 | To compile this driver as a module, choose M here: the |
| 451 | module will be called uhci-hcd. |
| 452 | |
Jan Andersson | d3219d1 | 2011-05-06 12:00:17 +0200 | [diff] [blame] | 453 | config USB_UHCI_SUPPORT_NON_PCI_HC |
| 454 | bool |
| 455 | depends on USB_UHCI_HCD |
Jan Andersson | 3db7739 | 2011-05-06 12:00:18 +0200 | [diff] [blame] | 456 | default y if SPARC_LEON |
Jan Andersson | d3219d1 | 2011-05-06 12:00:17 +0200 | [diff] [blame] | 457 | |
Jan Andersson | 8452c67 | 2011-05-18 10:44:49 +0200 | [diff] [blame] | 458 | config USB_UHCI_BIG_ENDIAN_MMIO |
| 459 | bool |
Jan Andersson | fda928a | 2011-05-18 10:44:53 +0200 | [diff] [blame] | 460 | depends on USB_UHCI_SUPPORT_NON_PCI_HC && SPARC_LEON |
| 461 | default y |
Jan Andersson | 8452c67 | 2011-05-18 10:44:49 +0200 | [diff] [blame] | 462 | |
Jan Andersson | 51e2f62 | 2011-05-18 10:44:51 +0200 | [diff] [blame] | 463 | config USB_UHCI_BIG_ENDIAN_DESC |
| 464 | bool |
Jan Andersson | fda928a | 2011-05-18 10:44:53 +0200 | [diff] [blame] | 465 | depends on USB_UHCI_SUPPORT_NON_PCI_HC && SPARC_LEON |
| 466 | default y |
Jan Andersson | 51e2f62 | 2011-05-18 10:44:51 +0200 | [diff] [blame] | 467 | |
Anton Vorontsov | 236dd4d | 2009-01-10 05:03:21 +0300 | [diff] [blame] | 468 | config USB_FHCI_HCD |
| 469 | tristate "Freescale QE USB Host Controller support" |
| 470 | depends on USB && OF_GPIO && QE_GPIO && QUICC_ENGINE |
| 471 | select FSL_GTM |
| 472 | select QE_USB |
| 473 | help |
| 474 | This driver enables support for Freescale QE USB Host Controller |
| 475 | (as found on MPC8360 and MPC8323 processors), the driver supports |
| 476 | Full and Low Speed USB. |
| 477 | |
| 478 | config FHCI_DEBUG |
| 479 | bool "Freescale QE USB Host Controller debug support" |
| 480 | depends on USB_FHCI_HCD && DEBUG_FS |
| 481 | help |
| 482 | Say "y" to see some FHCI debug information and statistics |
Lucas De Marchi | 25985ed | 2011-03-30 22:57:33 -0300 | [diff] [blame] | 483 | through debugfs. |
Anton Vorontsov | 236dd4d | 2009-01-10 05:03:21 +0300 | [diff] [blame] | 484 | |
Tony Olech | d774efe | 2006-09-13 11:27:35 +0100 | [diff] [blame] | 485 | config USB_U132_HCD |
| 486 | tristate "Elan U132 Adapter Host Controller" |
| 487 | depends on USB && USB_FTDI_ELAN |
| 488 | default M |
| 489 | help |
| 490 | The U132 adapter is a USB to CardBus adapter specifically designed |
| 491 | for PC cards that contain an OHCI host controller. Typical PC cards |
| 492 | are the Orange Mobile 3G Option GlobeTrotter Fusion card. The U132 |
| 493 | adapter will *NOT* work with PC cards that do not contain an OHCI |
| 494 | controller. |
| 495 | |
Matt LaPlante | 3cb2fcc | 2006-11-30 05:22:59 +0100 | [diff] [blame] | 496 | For those PC cards that contain multiple OHCI controllers only the |
Tony Olech | d774efe | 2006-09-13 11:27:35 +0100 | [diff] [blame] | 497 | first one is used. |
| 498 | |
| 499 | The driver consists of two modules, the "ftdi-elan" module is a |
| 500 | USB client driver that interfaces to the FTDI chip within ELAN's |
| 501 | USB-to-PCMCIA adapter, and this "u132-hcd" module is a USB host |
| 502 | controller driver that talks to the OHCI controller within the |
| 503 | CardBus cards that are inserted in the U132 adapter. |
| 504 | |
| 505 | This driver has been tested with a CardBus OHCI USB adapter, and |
| 506 | worked with a USB PEN Drive inserted into the first USB port of |
| 507 | the PCCARD. A rather pointless thing to do, but useful for testing. |
| 508 | |
| 509 | It is safe to say M here. |
| 510 | |
| 511 | See also <http://www.elandigitalsystems.com/support/ufaq/u132linux.php> |
| 512 | |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 513 | config USB_SL811_HCD |
| 514 | tristate "SL811HS HCD support" |
| 515 | depends on USB |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 516 | help |
| 517 | The SL811HS is a single-port USB controller that supports either |
| 518 | host side or peripheral side roles. Enable this option if your |
| 519 | board has this chip, and you want to use it as a host controller. |
| 520 | If unsure, say N. |
| 521 | |
| 522 | To compile this driver as a module, choose M here: the |
| 523 | module will be called sl811-hcd. |
| 524 | |
Mike Frysinger | ad7c56f | 2011-03-22 15:35:39 -0400 | [diff] [blame] | 525 | config USB_SL811_HCD_ISO |
| 526 | bool "partial ISO support" |
| 527 | depends on USB_SL811_HCD |
| 528 | help |
| 529 | The driver doesn't support iso_frame_desc (yet), but for some simple |
| 530 | devices that just queue one ISO frame per URB, then ISO transfers |
| 531 | "should" work using the normal urb status fields. |
| 532 | |
| 533 | If unsure, say N. |
| 534 | |
David Brownell | c6de2b6 | 2005-05-26 05:55:55 -0700 | [diff] [blame] | 535 | config USB_SL811_CS |
| 536 | tristate "CF/PCMCIA support for SL811HS HCD" |
| 537 | depends on USB_SL811_HCD && PCMCIA |
David Brownell | c6de2b6 | 2005-05-26 05:55:55 -0700 | [diff] [blame] | 538 | help |
| 539 | Wraps a PCMCIA driver around the SL811HS HCD, supporting the RATOC |
| 540 | REX-CFU1U CF card (often used with PDAs). If unsure, say N. |
| 541 | |
| 542 | To compile this driver as a module, choose M here: the |
| 543 | module will be called "sl811_cs". |
| 544 | |
Yoshihiro Shimoda | 5d30435 | 2007-05-10 13:18:19 +0900 | [diff] [blame] | 545 | config USB_R8A66597_HCD |
M4rkusXXL | fa0de2b | 2007-08-10 14:53:32 -0700 | [diff] [blame] | 546 | tristate "R8A66597 HCD support" |
Yoshihiro Shimoda | 5d30435 | 2007-05-10 13:18:19 +0900 | [diff] [blame] | 547 | depends on USB |
| 548 | help |
| 549 | The R8A66597 is a USB 2.0 host and peripheral controller. |
| 550 | |
| 551 | Enable this option if your board has this chip, and you want |
| 552 | to use it as a host controller. If unsure, say N. |
| 553 | |
| 554 | To compile this driver as a module, choose M here: the |
| 555 | module will be called r8a66597-hcd. |
| 556 | |
Kuninori Morimoto | 034d7c1 | 2011-10-10 22:07:40 -0700 | [diff] [blame] | 557 | config USB_RENESAS_USBHS_HCD |
| 558 | tristate "Renesas USBHS HCD support" |
| 559 | depends on USB |
| 560 | depends on USB_RENESAS_USBHS |
| 561 | help |
| 562 | The Renesas USBHS is a USB 2.0 host and peripheral controller. |
| 563 | |
| 564 | Enable this option if your board has this chip, and you want |
| 565 | to use it as a host controller. If unsure, say N. |
| 566 | |
| 567 | To compile this driver as a module, choose M here: the |
| 568 | module will be called renesas-usbhs. |
| 569 | |
David Vrabel | 7e6133a | 2008-09-17 16:34:28 +0100 | [diff] [blame] | 570 | config USB_WHCI_HCD |
David Vrabel | 6a7c3e4 | 2008-09-17 16:34:43 +0100 | [diff] [blame] | 571 | tristate "Wireless USB Host Controller Interface (WHCI) driver (EXPERIMENTAL)" |
| 572 | depends on EXPERIMENTAL |
Randy Dunlap | 36f8ecb | 2012-01-27 15:47:03 -0800 | [diff] [blame] | 573 | depends on PCI && USB && UWB |
David Vrabel | 7e6133a | 2008-09-17 16:34:28 +0100 | [diff] [blame] | 574 | select USB_WUSB |
| 575 | select UWB_WHCI |
| 576 | help |
| 577 | A driver for PCI-based Wireless USB Host Controllers that are |
| 578 | compliant with the WHCI specification. |
| 579 | |
| 580 | To compile this driver a module, choose M here: the module |
| 581 | will be called "whci-hcd". |
Inaky Perez-Gonzalez | d09318b | 2008-09-17 16:34:30 +0100 | [diff] [blame] | 582 | |
| 583 | config USB_HWA_HCD |
David Vrabel | 6a7c3e4 | 2008-09-17 16:34:43 +0100 | [diff] [blame] | 584 | tristate "Host Wire Adapter (HWA) driver (EXPERIMENTAL)" |
| 585 | depends on EXPERIMENTAL |
Randy Dunlap | 36f8ecb | 2012-01-27 15:47:03 -0800 | [diff] [blame] | 586 | depends on USB && UWB |
Inaky Perez-Gonzalez | d09318b | 2008-09-17 16:34:30 +0100 | [diff] [blame] | 587 | select USB_WUSB |
| 588 | select UWB_HWA |
| 589 | help |
| 590 | This driver enables you to connect Wireless USB devices to |
| 591 | your system using a Host Wire Adaptor USB dongle. This is an |
| 592 | UWB Radio Controller and WUSB Host Controller connected to |
| 593 | your machine via USB (specified in WUSB1.0). |
| 594 | |
| 595 | To compile this driver a module, choose M here: the module |
| 596 | will be called "hwa-hc". |
Martin Fuzzey | 23d3e7a | 2009-11-21 12:14:48 +0100 | [diff] [blame] | 597 | |
| 598 | config USB_IMX21_HCD |
Sascha Hauer | 5de9ec4 | 2011-08-24 08:41:10 +0200 | [diff] [blame] | 599 | tristate "i.MX21 HCD support" |
| 600 | depends on USB && ARM && ARCH_MXC |
Martin Fuzzey | 23d3e7a | 2009-11-21 12:14:48 +0100 | [diff] [blame] | 601 | help |
| 602 | This driver enables support for the on-chip USB host in the |
Sascha Hauer | 5de9ec4 | 2011-08-24 08:41:10 +0200 | [diff] [blame] | 603 | i.MX21 processor. |
Martin Fuzzey | 23d3e7a | 2009-11-21 12:14:48 +0100 | [diff] [blame] | 604 | |
| 605 | To compile this driver as a module, choose M here: the |
| 606 | module will be called "imx21-hcd". |
| 607 | |
David Daney | 1643acc | 2010-10-08 14:47:52 -0700 | [diff] [blame] | 608 | config USB_OCTEON_EHCI |
| 609 | bool "Octeon on-chip EHCI support" |
| 610 | depends on USB && USB_EHCI_HCD && CPU_CAVIUM_OCTEON |
| 611 | default n |
| 612 | select USB_EHCI_BIG_ENDIAN_MMIO |
| 613 | help |
| 614 | Enable support for the Octeon II SOC's on-chip EHCI |
| 615 | controller. It is needed for high-speed (480Mbit/sec) |
| 616 | USB 2.0 device support. All CN6XXX based chips with USB are |
| 617 | supported. |
| 618 | |
| 619 | config USB_OCTEON_OHCI |
| 620 | bool "Octeon on-chip OHCI support" |
| 621 | depends on USB && USB_OHCI_HCD && CPU_CAVIUM_OCTEON |
| 622 | default USB_OCTEON_EHCI |
| 623 | select USB_OHCI_BIG_ENDIAN_MMIO |
| 624 | select USB_OHCI_LITTLE_ENDIAN |
| 625 | help |
| 626 | Enable support for the Octeon II SOC's on-chip OHCI |
| 627 | controller. It is needed for low-speed USB 1.0 device |
| 628 | support. All CN6XXX based chips with USB are supported. |
| 629 | |
| 630 | config USB_OCTEON2_COMMON |
| 631 | bool |
| 632 | default y if USB_OCTEON_EHCI || USB_OCTEON_OHCI |