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