1# 2# USB Host Controller Drivers 3# 4comment "USB Host Controller Drivers" 5 depends on USB 6 7config 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 20config USB_EHCI_HCD 21 tristate "EHCI HCD (USB 2.0) support" 22 depends on USB && USB_ARCH_HAS_EHCI 23 ---help--- 24 The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0 25 "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware. 26 If your USB host controller supports USB 2.0, you will likely want to 27 configure this Host Controller Driver. 28 29 EHCI controllers are packaged with "companion" host controllers (OHCI 30 or UHCI) to handle USB 1.1 devices connected to root hub ports. Ports 31 will connect to EHCI if the device is high speed, otherwise they 32 connect to a companion controller. If you configure EHCI, you should 33 probably configure the OHCI (for NEC and some other vendors) USB Host 34 Controller Driver or UHCI (for Via motherboards) Host Controller 35 Driver too. 36 37 You may want to read <file:Documentation/usb/ehci.txt>. 38 39 To compile this driver as a module, choose M here: the 40 module will be called ehci-hcd. 41 42config USB_EHCI_ROOT_HUB_TT 43 bool "Root Hub Transaction Translators" 44 depends on USB_EHCI_HCD 45 ---help--- 46 Some EHCI chips have vendor-specific extensions to integrate 47 transaction translators, so that no OHCI or UHCI companion 48 controller is needed. It's safe to say "y" even if your 49 controller doesn't support this feature. 50 51 This supports the EHCI implementation that's originally 52 from ARC, and has since changed hands a few times. 53 54config USB_EHCI_TT_NEWSCHED 55 bool "Improved Transaction Translator scheduling (EXPERIMENTAL)" 56 depends on USB_EHCI_HCD && EXPERIMENTAL 57 ---help--- 58 This changes the periodic scheduling code to fill more of the low 59 and full speed bandwidth available from the Transaction Translator 60 (TT) in USB 2.0 hubs. Without this, only one transfer will be 61 issued in each microframe, significantly reducing the number of 62 periodic low/fullspeed transfers possible. 63 64 If you have multiple periodic low/fullspeed devices connected to a 65 highspeed USB hub which is connected to a highspeed USB Host 66 Controller, and some of those devices will not work correctly 67 (possibly due to "ENOSPC" or "-28" errors), say Y. 68 69 If unsure, say N. 70 71config USB_EHCI_BIG_ENDIAN_MMIO 72 bool 73 depends on USB_EHCI_HCD && (PPC_CELLEB || PPC_PS3 || 440EPX || ARCH_IXP4XX) 74 default y 75 76config USB_EHCI_BIG_ENDIAN_DESC 77 bool 78 depends on USB_EHCI_HCD && (440EPX || ARCH_IXP4XX) 79 default y 80 81config USB_EHCI_FSL 82 bool "Support for Freescale on-chip EHCI USB controller" 83 depends on USB_EHCI_HCD && FSL_SOC 84 select USB_EHCI_ROOT_HUB_TT 85 ---help--- 86 Variation of ARC USB block used in some Freescale chips. 87 88config USB_EHCI_HCD_PPC_OF 89 bool "EHCI support for PPC USB controller on OF platform bus" 90 depends on USB_EHCI_HCD && PPC_OF 91 default y 92 ---help--- 93 Enables support for the USB controller present on the PowerPC 94 OpenFirmware platform bus. 95 96config USB_OXU210HP_HCD 97 tristate "OXU210HP HCD support" 98 depends on USB 99 ---help--- 100 The OXU210HP is an USB host/OTG/device controller. Enable this 101 option if your board has this chip. If unsure, say N. 102 103 This driver does not support isochronous transfers and doesn't 104 implement OTG nor USB device controllers. 105 106 To compile this driver as a module, choose M here: the 107 module will be called oxu210hp-hcd. 108 109config USB_ISP116X_HCD 110 tristate "ISP116X HCD support" 111 depends on USB 112 ---help--- 113 The ISP1160 and ISP1161 chips are USB host controllers. Enable this 114 option if your board has this chip. If unsure, say N. 115 116 This driver does not support isochronous transfers. 117 118 To compile this driver as a module, choose M here: the 119 module will be called isp116x-hcd. 120 121config USB_ISP1760_HCD 122 tristate "ISP 1760 HCD support" 123 depends on USB && EXPERIMENTAL 124 ---help--- 125 The ISP1760 chip is a USB 2.0 host controller. 126 127 This driver does not support isochronous transfers or OTG. 128 This USB controller is usually attached to a non-DMA-Master 129 capable bus. NXP's eval kit brings this chip on PCI card 130 where the chip itself is behind a PLB to simulate such 131 a bus. 132 133 To compile this driver as a module, choose M here: the 134 module will be called isp1760. 135 136config USB_OHCI_HCD 137 tristate "OHCI HCD support" 138 depends on USB && USB_ARCH_HAS_OHCI 139 select ISP1301_OMAP if MACH_OMAP_H2 || MACH_OMAP_H3 140 select USB_OTG_UTILS if ARCH_OMAP 141 ---help--- 142 The Open Host Controller Interface (OHCI) is a standard for accessing 143 USB 1.1 host controller hardware. It does more in hardware than Intel's 144 UHCI specification. If your USB host controller follows the OHCI spec, 145 say Y. On most non-x86 systems, and on x86 hardware that's not using a 146 USB controller from Intel or VIA, this is appropriate. If your host 147 controller doesn't use PCI, this is probably appropriate. For a PCI 148 based system where you're not sure, the "lspci -v" entry will list the 149 right "prog-if" for your USB controller(s): EHCI, OHCI, or UHCI. 150 151 To compile this driver as a module, choose M here: the 152 module will be called ohci-hcd. 153 154config USB_OHCI_HCD_PPC_SOC 155 bool "OHCI support for on-chip PPC USB controller" 156 depends on USB_OHCI_HCD && (STB03xxx || PPC_MPC52xx) 157 default y 158 select USB_OHCI_BIG_ENDIAN_DESC 159 select USB_OHCI_BIG_ENDIAN_MMIO 160 ---help--- 161 Enables support for the USB controller on the MPC52xx or 162 STB03xxx processor chip. If unsure, say Y. 163 164config USB_OHCI_HCD_PPC_OF 165 bool "OHCI support for PPC USB controller on OF platform bus" 166 depends on USB_OHCI_HCD && PPC_OF 167 default y 168 ---help--- 169 Enables support for the USB controller PowerPC present on the 170 OpenFirmware platform bus. 171 172config USB_OHCI_HCD_PPC_OF_BE 173 bool "Support big endian HC" 174 depends on USB_OHCI_HCD_PPC_OF 175 default y 176 select USB_OHCI_BIG_ENDIAN_DESC 177 select USB_OHCI_BIG_ENDIAN_MMIO 178 179config USB_OHCI_HCD_PPC_OF_LE 180 bool "Support little endian HC" 181 depends on USB_OHCI_HCD_PPC_OF 182 default n 183 select USB_OHCI_LITTLE_ENDIAN 184 185config USB_OHCI_HCD_PCI 186 bool "OHCI support for PCI-bus USB controllers" 187 depends on USB_OHCI_HCD && PCI && (STB03xxx || PPC_MPC52xx || USB_OHCI_HCD_PPC_OF) 188 default y 189 select USB_OHCI_LITTLE_ENDIAN 190 ---help--- 191 Enables support for PCI-bus plug-in USB controller cards. 192 If unsure, say Y. 193 194config USB_OHCI_HCD_SSB 195 bool "OHCI support for Broadcom SSB OHCI core" 196 depends on USB_OHCI_HCD && (SSB = y || SSB = USB_OHCI_HCD) && EXPERIMENTAL 197 default n 198 ---help--- 199 Support for the Sonics Silicon Backplane (SSB) attached 200 Broadcom USB OHCI core. 201 202 This device is present in some embedded devices with 203 Broadcom based SSB bus. 204 205 If unsure, say N. 206 207config USB_OHCI_BIG_ENDIAN_DESC 208 bool 209 depends on USB_OHCI_HCD 210 default n 211 212config USB_OHCI_BIG_ENDIAN_MMIO 213 bool 214 depends on USB_OHCI_HCD 215 default n 216 217config USB_OHCI_LITTLE_ENDIAN 218 bool 219 depends on USB_OHCI_HCD 220 default n if STB03xxx || PPC_MPC52xx 221 default y 222 223config USB_UHCI_HCD 224 tristate "UHCI HCD (most Intel and VIA) support" 225 depends on USB && PCI 226 ---help--- 227 The Universal Host Controller Interface is a standard by Intel for 228 accessing the USB hardware in the PC (which is also called the USB 229 host controller). If your USB host controller conforms to this 230 standard, you may want to say Y, but see below. All recent boards 231 with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX, 232 i810, i820) conform to this standard. Also all VIA PCI chipsets 233 (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro 234 133). If unsure, say Y. 235 236 To compile this driver as a module, choose M here: the 237 module will be called uhci-hcd. 238 239config USB_FHCI_HCD 240 tristate "Freescale QE USB Host Controller support" 241 depends on USB && OF_GPIO && QE_GPIO && QUICC_ENGINE 242 select FSL_GTM 243 select QE_USB 244 help 245 This driver enables support for Freescale QE USB Host Controller 246 (as found on MPC8360 and MPC8323 processors), the driver supports 247 Full and Low Speed USB. 248 249config FHCI_DEBUG 250 bool "Freescale QE USB Host Controller debug support" 251 depends on USB_FHCI_HCD && DEBUG_FS 252 help 253 Say "y" to see some FHCI debug information and statistics 254 throught debugfs. 255 256config USB_U132_HCD 257 tristate "Elan U132 Adapter Host Controller" 258 depends on USB && USB_FTDI_ELAN 259 default M 260 help 261 The U132 adapter is a USB to CardBus adapter specifically designed 262 for PC cards that contain an OHCI host controller. Typical PC cards 263 are the Orange Mobile 3G Option GlobeTrotter Fusion card. The U132 264 adapter will *NOT* work with PC cards that do not contain an OHCI 265 controller. 266 267 For those PC cards that contain multiple OHCI controllers only the 268 first one is used. 269 270 The driver consists of two modules, the "ftdi-elan" module is a 271 USB client driver that interfaces to the FTDI chip within ELAN's 272 USB-to-PCMCIA adapter, and this "u132-hcd" module is a USB host 273 controller driver that talks to the OHCI controller within the 274 CardBus cards that are inserted in the U132 adapter. 275 276 This driver has been tested with a CardBus OHCI USB adapter, and 277 worked with a USB PEN Drive inserted into the first USB port of 278 the PCCARD. A rather pointless thing to do, but useful for testing. 279 280 It is safe to say M here. 281 282 See also <http://www.elandigitalsystems.com/support/ufaq/u132linux.php> 283 284config USB_SL811_HCD 285 tristate "SL811HS HCD support" 286 depends on USB 287 help 288 The SL811HS is a single-port USB controller that supports either 289 host side or peripheral side roles. Enable this option if your 290 board has this chip, and you want to use it as a host controller. 291 If unsure, say N. 292 293 To compile this driver as a module, choose M here: the 294 module will be called sl811-hcd. 295 296config USB_SL811_CS 297 tristate "CF/PCMCIA support for SL811HS HCD" 298 depends on USB_SL811_HCD && PCMCIA 299 help 300 Wraps a PCMCIA driver around the SL811HS HCD, supporting the RATOC 301 REX-CFU1U CF card (often used with PDAs). If unsure, say N. 302 303 To compile this driver as a module, choose M here: the 304 module will be called "sl811_cs". 305 306config USB_R8A66597_HCD 307 tristate "R8A66597 HCD support" 308 depends on USB 309 help 310 The R8A66597 is a USB 2.0 host and peripheral controller. 311 312 Enable this option if your board has this chip, and you want 313 to use it as a host controller. If unsure, say N. 314 315 To compile this driver as a module, choose M here: the 316 module will be called r8a66597-hcd. 317 318config SUPERH_ON_CHIP_R8A66597 319 boolean "Enable SuperH on-chip R8A66597 USB" 320 depends on USB_R8A66597_HCD && (CPU_SUBTYPE_SH7366 || CPU_SUBTYPE_SH7723) 321 help 322 This driver enables support for the on-chip R8A66597 in the 323 SH7366 and SH7723 processors. 324 325config USB_WHCI_HCD 326 tristate "Wireless USB Host Controller Interface (WHCI) driver (EXPERIMENTAL)" 327 depends on EXPERIMENTAL 328 depends on PCI && USB 329 select USB_WUSB 330 select UWB_WHCI 331 help 332 A driver for PCI-based Wireless USB Host Controllers that are 333 compliant with the WHCI specification. 334 335 To compile this driver a module, choose M here: the module 336 will be called "whci-hcd". 337 338config USB_HWA_HCD 339 tristate "Host Wire Adapter (HWA) driver (EXPERIMENTAL)" 340 depends on EXPERIMENTAL 341 depends on USB 342 select USB_WUSB 343 select UWB_HWA 344 help 345 This driver enables you to connect Wireless USB devices to 346 your system using a Host Wire Adaptor USB dongle. This is an 347 UWB Radio Controller and WUSB Host Controller connected to 348 your machine via USB (specified in WUSB1.0). 349 350 To compile this driver a module, choose M here: the module 351 will be called "hwa-hc". 352