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