Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / drivers / usb / host / Kconfig
diff --git a/kernel/drivers/usb/host/Kconfig b/kernel/drivers/usb/host/Kconfig
new file mode 100644 (file)
index 0000000..197a6a3
--- /dev/null
@@ -0,0 +1,790 @@
+#
+# USB Host Controller Drivers
+#
+comment "USB Host Controller Drivers"
+
+config USB_C67X00_HCD
+       tristate "Cypress C67x00 HCD support"
+       help
+         The Cypress C67x00 (EZ-Host/EZ-OTG) chips are dual-role
+         host/peripheral/OTG USB controllers.
+
+         Enable this option to support this chip in host controller mode.
+         If unsure, say N.
+
+         To compile this driver as a module, choose M here: the
+         module will be called c67x00.
+
+config USB_XHCI_HCD
+       tristate "xHCI HCD (USB 3.0) support"
+       ---help---
+         The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0
+         "SuperSpeed" host controller hardware.
+
+         To compile this driver as a module, choose M here: the
+         module will be called xhci-hcd.
+
+if USB_XHCI_HCD
+
+config USB_XHCI_PCI
+       tristate
+       depends on PCI
+       default y
+
+config USB_XHCI_PLATFORM
+       tristate
+
+config USB_XHCI_MVEBU
+       tristate "xHCI support for Marvell Armada 375/38x"
+       select USB_XHCI_PLATFORM
+       depends on ARCH_MVEBU || COMPILE_TEST
+       ---help---
+         Say 'Y' to enable the support for the xHCI host controller
+         found in Marvell Armada 375/38x ARM SOCs.
+
+config USB_XHCI_RCAR
+       tristate "xHCI support for Renesas R-Car SoCs"
+       select USB_XHCI_PLATFORM
+       depends on ARCH_SHMOBILE || COMPILE_TEST
+       ---help---
+         Say 'Y' to enable the support for the xHCI host controller
+         found in Renesas R-Car ARM SoCs.
+
+endif # USB_XHCI_HCD
+
+config USB_EHCI_HCD
+       tristate "EHCI HCD (USB 2.0) support"
+       ---help---
+         The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0
+         "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware.
+         If your USB host controller supports USB 2.0, you will likely want to
+         configure this Host Controller Driver.
+
+         EHCI controllers are packaged with "companion" host controllers (OHCI
+         or UHCI) to handle USB 1.1 devices connected to root hub ports.  Ports
+         will connect to EHCI if the device is high speed, otherwise they
+         connect to a companion controller.  If you configure EHCI, you should
+         probably configure the OHCI (for NEC and some other vendors) USB Host
+         Controller Driver or UHCI (for Via motherboards) Host Controller
+         Driver too.
+
+         You may want to read <file:Documentation/usb/ehci.txt>.
+
+         To compile this driver as a module, choose M here: the
+         module will be called ehci-hcd.
+
+config USB_EHCI_ROOT_HUB_TT
+       bool "Root Hub Transaction Translators"
+       depends on USB_EHCI_HCD
+       ---help---
+         Some EHCI chips have vendor-specific extensions to integrate
+         transaction translators, so that no OHCI or UHCI companion
+         controller is needed.  It's safe to say "y" even if your
+         controller doesn't support this feature.
+
+         This supports the EHCI implementation that's originally
+         from ARC, and has since changed hands a few times.
+
+config USB_EHCI_TT_NEWSCHED
+       bool "Improved Transaction Translator scheduling"
+       depends on USB_EHCI_HCD
+       default y
+       ---help---
+         This changes the periodic scheduling code to fill more of the low
+         and full speed bandwidth available from the Transaction Translator
+         (TT) in USB 2.0 hubs.  Without this, only one transfer will be
+         issued in each microframe, significantly reducing the number of
+         periodic low/fullspeed transfers possible.
+
+         If you have multiple periodic low/fullspeed devices connected to a
+         highspeed USB hub which is connected to a highspeed USB Host
+         Controller, and some of those devices will not work correctly
+         (possibly due to "ENOSPC" or "-28" errors), say Y.  Conversely, if
+         you have only one such device and it doesn't work, you could try
+         saying N.
+
+         If unsure, say Y.
+
+config USB_FSL_MPH_DR_OF
+       tristate
+
+if USB_EHCI_HCD
+
+config USB_EHCI_PCI
+       tristate
+       depends on PCI
+       default y
+
+config USB_EHCI_HCD_PMC_MSP
+       tristate "EHCI support for on-chip PMC MSP71xx USB controller"
+       depends on MSP_HAS_USB
+       default n
+       select USB_EHCI_BIG_ENDIAN_DESC
+       select USB_EHCI_BIG_ENDIAN_MMIO
+       ---help---
+               Enables support for the onchip USB controller on the PMC_MSP7100 Family SoC's.
+               If unsure, say N.
+
+config XPS_USB_HCD_XILINX
+       bool "Use Xilinx usb host EHCI controller core"
+       depends on (PPC32 || MICROBLAZE)
+       select USB_EHCI_BIG_ENDIAN_DESC
+       select USB_EHCI_BIG_ENDIAN_MMIO
+       ---help---
+               Xilinx xps USB host controller core is EHCI compliant and has
+               transaction translator built-in. It can be configured to either
+               support both high speed and full speed devices, or high speed
+               devices only.
+
+config USB_EHCI_FSL
+       bool "Support for Freescale PPC on-chip EHCI USB controller"
+       depends on FSL_SOC
+       select USB_EHCI_ROOT_HUB_TT
+       select USB_FSL_MPH_DR_OF if OF
+       ---help---
+         Variation of ARC USB block used in some Freescale chips.
+
+config USB_EHCI_MXC
+       tristate "Support for Freescale i.MX on-chip EHCI USB controller"
+       depends on ARCH_MXC
+       select USB_EHCI_ROOT_HUB_TT
+       ---help---
+         Variation of ARC USB block used in some Freescale chips.
+
+config USB_EHCI_HCD_OMAP
+       tristate "EHCI support for OMAP3 and later chips"
+       depends on ARCH_OMAP
+       select NOP_USB_XCEIV
+       default y
+       ---help---
+         Enables support for the on-chip EHCI controller on
+         OMAP3 and later chips.
+
+config USB_EHCI_HCD_ORION
+       tristate  "Support for Marvell EBU on-chip EHCI USB controller"
+       depends on USB_EHCI_HCD && PLAT_ORION
+       default y
+       ---help---
+         Enables support for the on-chip EHCI controller on Marvell's
+         embedded ARM SoCs, including Orion, Kirkwood, Dove, Armada XP,
+         Armada 370.  This is different from the EHCI implementation
+         on Marvell's mobile PXA and MMP SoC, see "EHCI support for
+         Marvell PXA/MMP USB controller" for those.
+
+config USB_EHCI_HCD_SPEAR
+        tristate "Support for ST SPEAr on-chip EHCI USB controller"
+        depends on USB_EHCI_HCD && PLAT_SPEAR
+        default y
+        ---help---
+          Enables support for the on-chip EHCI controller on
+          ST SPEAr chips.
+
+config USB_EHCI_HCD_STI
+       tristate "Support for ST STiHxxx on-chip EHCI USB controller"
+       depends on ARCH_STI && OF
+       select GENERIC_PHY
+       select USB_EHCI_HCD_PLATFORM
+       help
+         Enable support for the on-chip EHCI controller found on
+         STMicroelectronics consumer electronics SoC's.
+
+config USB_EHCI_HCD_AT91
+        tristate  "Support for Atmel on-chip EHCI USB controller"
+        depends on USB_EHCI_HCD && ARCH_AT91
+        default y
+        ---help---
+          Enables support for the on-chip EHCI controller on
+          Atmel chips.
+
+config USB_EHCI_MSM
+       tristate "Support for Qualcomm QSD/MSM on-chip EHCI USB controller"
+       depends on ARCH_QCOM
+       select USB_EHCI_ROOT_HUB_TT
+       ---help---
+         Enables support for the USB Host controller present on the
+         Qualcomm chipsets. Root Hub has inbuilt TT.
+         This driver depends on OTG driver for PHY initialization,
+         clock management, powering up VBUS, and power management.
+         This driver is not supported on boards like trout which
+         has an external PHY.
+
+config USB_EHCI_TEGRA
+       tristate "NVIDIA Tegra HCD support"
+       depends on ARCH_TEGRA
+       select USB_EHCI_ROOT_HUB_TT
+       select USB_PHY
+       help
+         This driver enables support for the internal USB Host Controllers
+         found in NVIDIA Tegra SoCs. The controllers are EHCI compliant.
+
+config USB_EHCI_HCD_PPC_OF
+       bool "EHCI support for PPC USB controller on OF platform bus"
+       depends on PPC
+       default y
+       ---help---
+         Enables support for the USB controller present on the PowerPC
+         OpenFirmware platform bus.
+
+config USB_EHCI_SH
+       bool "EHCI support for SuperH USB controller"
+       depends on SUPERH
+       ---help---
+         Enables support for the on-chip EHCI controller on the SuperH.
+         If you use the PCI EHCI controller, this option is not necessary.
+
+config USB_EHCI_EXYNOS
+       tristate "EHCI support for Samsung S5P/EXYNOS SoC Series"
+       depends on ARCH_S5PV210 || ARCH_EXYNOS
+       help
+       Enable support for the Samsung Exynos SOC's on-chip EHCI controller.
+
+config USB_EHCI_MV
+       bool "EHCI support for Marvell PXA/MMP USB controller"
+       depends on (ARCH_PXA || ARCH_MMP)
+       select USB_EHCI_ROOT_HUB_TT
+       ---help---
+         Enables support for Marvell (including PXA and MMP series) on-chip
+         USB SPH and OTG controller. SPH is a single port host, and it can
+         only be EHCI host. OTG is controller that can switch to host mode.
+         Note that this driver will not work on Marvell's other EHCI
+         controller used by the EBU-type SoCs including Orion, Kirkwood,
+         Dova, Armada 370 and Armada XP. See "Support for Marvell EBU
+         on-chip EHCI USB controller" for those.
+
+config USB_W90X900_EHCI
+       tristate "W90X900(W90P910) EHCI support"
+       depends on ARCH_W90X900
+       ---help---
+               Enables support for the W90X900 USB controller
+
+config USB_CNS3XXX_EHCI
+       bool "Cavium CNS3XXX EHCI Module (DEPRECATED)"
+       depends on ARCH_CNS3XXX
+       select USB_EHCI_HCD_PLATFORM
+       ---help---
+         This option is deprecated now and the driver was removed, use
+         USB_EHCI_HCD_PLATFORM instead.
+
+         Enable support for the CNS3XXX SOC's on-chip EHCI controller.
+         It is needed for high-speed (480Mbit/sec) USB 2.0 device
+         support.
+
+config USB_EHCI_ATH79
+       bool "EHCI support for AR7XXX/AR9XXX SoCs (DEPRECATED)"
+       depends on (SOC_AR71XX || SOC_AR724X || SOC_AR913X || SOC_AR933X)
+       select USB_EHCI_ROOT_HUB_TT
+       select USB_EHCI_HCD_PLATFORM
+       default y
+       ---help---
+         This option is deprecated now and the driver was removed, use
+         USB_EHCI_HCD_PLATFORM instead.
+
+         Enables support for the built-in EHCI controller present
+         on the Atheros AR7XXX/AR9XXX SoCs.
+
+config USB_EHCI_HCD_PLATFORM
+       tristate "Generic EHCI driver for a platform device"
+       default n
+       ---help---
+         Adds an EHCI host driver for a generic platform device, which
+         provides a memory space and an irq.
+
+         If unsure, say N.
+
+config USB_OCTEON_EHCI
+       bool "Octeon on-chip EHCI support (DEPRECATED)"
+       depends on CAVIUM_OCTEON_SOC
+       default n
+       select USB_EHCI_BIG_ENDIAN_MMIO
+       select USB_EHCI_HCD_PLATFORM
+       help
+         This option is deprecated now and the driver was removed, use
+         USB_EHCI_HCD_PLATFORM instead.
+
+         Enable support for the Octeon II SOC's on-chip EHCI
+         controller.  It is needed for high-speed (480Mbit/sec)
+         USB 2.0 device support.  All CN6XXX based chips with USB are
+         supported.
+
+endif # USB_EHCI_HCD
+
+config USB_OXU210HP_HCD
+       tristate "OXU210HP HCD support"
+       ---help---
+         The OXU210HP is an USB host/OTG/device controller. Enable this
+         option if your board has this chip. If unsure, say N.
+
+         This driver does not support isochronous transfers and doesn't
+         implement OTG nor USB device controllers.
+
+         To compile this driver as a module, choose M here: the
+         module will be called oxu210hp-hcd.
+
+config USB_ISP116X_HCD
+       tristate "ISP116X HCD support"
+       ---help---
+         The ISP1160 and ISP1161 chips are USB host controllers. Enable this
+         option if your board has this chip. If unsure, say N.
+
+         This driver does not support isochronous transfers.
+
+         To compile this driver as a module, choose M here: the
+         module will be called isp116x-hcd.
+
+config USB_ISP1362_HCD
+       tristate "ISP1362 HCD support"
+       ---help---
+         Supports the Philips ISP1362 chip as a host controller
+
+         This driver does not support isochronous transfers.
+
+         To compile this driver as a module, choose M here: the
+         module will be called isp1362-hcd.
+
+config USB_FUSBH200_HCD
+       tristate "FUSBH200 HCD support"
+       depends on USB
+       ---help---
+       Faraday FUSBH200 is designed to meet USB2.0 EHCI specification
+       with minor modification.
+
+       To compile this driver as a module, choose M here: the
+       module will be called fusbh200-hcd.
+
+config USB_FOTG210_HCD
+       tristate "FOTG210 HCD support"
+       depends on USB
+       ---help---
+         Faraday FOTG210 is an OTG controller which can be configured as
+         an USB2.0 host. It is designed to meet USB2.0 EHCI specification
+         with minor modification.
+
+         To compile this driver as a module, choose M here: the
+         module will be called fotg210-hcd.
+
+config USB_MAX3421_HCD
+       tristate "MAX3421 HCD (USB-over-SPI) support"
+       depends on USB && SPI
+       ---help---
+         The Maxim MAX3421E chip supports standard USB 2.0-compliant
+         full-speed devices either in host or peripheral mode.  This
+         driver supports the host-mode of the MAX3421E only.
+
+         To compile this driver as a module, choose M here: the module will
+         be called max3421-hcd.
+
+config USB_OHCI_HCD
+       tristate "OHCI HCD (USB 1.1) support"
+       ---help---
+         The Open Host Controller Interface (OHCI) is a standard for accessing
+         USB 1.1 host controller hardware.  It does more in hardware than Intel's
+         UHCI specification.  If your USB host controller follows the OHCI spec,
+         say Y.  On most non-x86 systems, and on x86 hardware that's not using a
+         USB controller from Intel or VIA, this is appropriate.  If your host
+         controller doesn't use PCI, this is probably appropriate.  For a PCI
+         based system where you're not sure, the "lspci -v" entry will list the
+         right "prog-if" for your USB controller(s):  EHCI, OHCI, or UHCI.
+
+         To compile this driver as a module, choose M here: the
+         module will be called ohci-hcd.
+
+if USB_OHCI_HCD
+
+config USB_OHCI_HCD_OMAP1
+       tristate "OHCI support for OMAP1/2 chips"
+       depends on ARCH_OMAP1
+       depends on ISP1301_OMAP || !(MACH_OMAP_H2 || MACH_OMAP_H3)
+       default y
+       ---help---
+         Enables support for the OHCI controller on OMAP1/2 chips.
+
+config USB_OHCI_HCD_SPEAR
+        tristate "Support for ST SPEAr on-chip OHCI USB controller"
+        depends on USB_OHCI_HCD && PLAT_SPEAR
+        default y
+        ---help---
+          Enables support for the on-chip OHCI controller on
+          ST SPEAr chips.
+
+config USB_OHCI_HCD_STI
+       tristate "Support for ST STiHxxx on-chip OHCI USB controller"
+       depends on ARCH_STI && OF
+       select GENERIC_PHY
+       select USB_OHCI_HCD_PLATFORM
+       help
+         Enable support for the on-chip OHCI controller found on
+         STMicroelectronics consumer electronics SoC's.
+
+config USB_OHCI_HCD_S3C2410
+        tristate "OHCI support for Samsung S3C24xx/S3C64xx SoC series"
+        depends on USB_OHCI_HCD && (ARCH_S3C24XX || ARCH_S3C64XX)
+        default y
+        ---help---
+          Enables support for the on-chip OHCI controller on
+          S3C24xx/S3C64xx chips.
+
+config USB_OHCI_HCD_LPC32XX
+       tristate "Support for LPC on-chip OHCI USB controller"
+       depends on USB_OHCI_HCD && ARCH_LPC32XX
+       depends on USB_ISP1301
+       default y
+       ---help---
+          Enables support for the on-chip OHCI controller on
+          NXP chips.
+
+config USB_OHCI_HCD_PXA27X
+       tristate "Support for PXA27X/PXA3XX on-chip OHCI USB controller"
+       depends on USB_OHCI_HCD && (PXA27x || PXA3xx)
+       default y
+       ---help---
+         Enables support for the on-chip OHCI controller on
+         PXA27x/PXA3xx chips.
+
+config USB_OHCI_HCD_AT91
+        tristate "Support for Atmel on-chip OHCI USB controller"
+        depends on USB_OHCI_HCD && ARCH_AT91
+        default y
+        ---help---
+          Enables support for the on-chip OHCI controller on
+          Atmel chips.
+
+config USB_OHCI_HCD_OMAP3
+       tristate "OHCI support for OMAP3 and later chips"
+       depends on (ARCH_OMAP3 || ARCH_OMAP4)
+       default y
+       ---help---
+         Enables support for the on-chip OHCI controller on
+         OMAP3 and later chips.
+
+config USB_OHCI_HCD_DAVINCI
+       bool "OHCI support for TI DaVinci DA8xx"
+       depends on ARCH_DAVINCI_DA8XX
+       depends on USB_OHCI_HCD=y
+       default y
+       help
+         Enables support for the DaVinci DA8xx integrated OHCI
+         controller. This driver cannot currently be a loadable
+         module because it lacks a proper PHY abstraction.
+
+config USB_OHCI_ATH79
+       bool "USB OHCI support for the Atheros AR71XX/AR7240 SoCs (DEPRECATED)"
+       depends on (SOC_AR71XX || SOC_AR724X)
+       select USB_OHCI_HCD_PLATFORM
+       default y
+       help
+         This option is deprecated now and the driver was removed, use
+         USB_OHCI_HCD_PLATFORM instead.
+
+         Enables support for the built-in OHCI controller present on the
+         Atheros AR71XX/AR7240 SoCs.
+
+config USB_OHCI_HCD_PPC_OF_BE
+       bool "OHCI support for OF platform bus (big endian)"
+       depends on PPC
+       select USB_OHCI_BIG_ENDIAN_DESC
+       select USB_OHCI_BIG_ENDIAN_MMIO
+       ---help---
+         Enables support for big-endian USB controllers present on the
+         OpenFirmware platform bus.
+
+config USB_OHCI_HCD_PPC_OF_LE
+       bool "OHCI support for OF platform bus (little endian)"
+       depends on PPC
+       select USB_OHCI_LITTLE_ENDIAN
+       ---help---
+         Enables support for little-endian USB controllers present on the
+         OpenFirmware platform bus.
+
+config USB_OHCI_HCD_PPC_OF
+       bool
+       depends on PPC
+       default USB_OHCI_HCD_PPC_OF_BE || USB_OHCI_HCD_PPC_OF_LE
+
+config USB_OHCI_HCD_PCI
+       tristate "OHCI support for PCI-bus USB controllers"
+       depends on PCI
+       default y
+       select USB_OHCI_LITTLE_ENDIAN
+       ---help---
+         Enables support for PCI-bus plug-in USB controller cards.
+         If unsure, say Y.
+
+config USB_OHCI_HCD_SSB
+       bool "OHCI support for Broadcom SSB OHCI core (DEPRECATED)"
+       depends on (SSB = y || SSB = USB_OHCI_HCD)
+       select USB_HCD_SSB
+       select USB_OHCI_HCD_PLATFORM
+       default n
+       ---help---
+         This option is deprecated now and the driver was removed, use
+         USB_HCD_SSB and USB_OHCI_HCD_PLATFORM instead.
+
+         Support for the Sonics Silicon Backplane (SSB) attached
+         Broadcom USB OHCI core.
+
+         This device is present in some embedded devices with
+         Broadcom based SSB bus.
+
+         If unsure, say N.
+
+config USB_OHCI_SH
+       bool "OHCI support for SuperH USB controller (DEPRECATED)"
+       depends on SUPERH
+       select USB_OHCI_HCD_PLATFORM
+       ---help---
+         This option is deprecated now and the driver was removed, use
+         USB_OHCI_HCD_PLATFORM instead.
+
+         Enables support for the on-chip OHCI controller on the SuperH.
+         If you use the PCI OHCI controller, this option is not necessary.
+
+config USB_OHCI_EXYNOS
+       tristate "OHCI support for Samsung S5P/EXYNOS SoC Series"
+       depends on ARCH_S5PV210 || ARCH_EXYNOS
+       help
+        Enable support for the Samsung Exynos SOC's on-chip OHCI controller.
+
+config USB_CNS3XXX_OHCI
+       bool "Cavium CNS3XXX OHCI Module (DEPRECATED)"
+       depends on ARCH_CNS3XXX
+       select USB_OHCI_HCD_PLATFORM
+       ---help---
+         This option is deprecated now and the driver was removed, use
+         USB_OHCI_HCD_PLATFORM instead.
+
+         Enable support for the CNS3XXX SOC's on-chip OHCI controller.
+         It is needed for low-speed USB 1.0 device support.
+
+config USB_OHCI_HCD_PLATFORM
+       tristate "Generic OHCI driver for a platform device"
+       default n
+       ---help---
+         Adds an OHCI host driver for a generic platform device, which
+         provides a memory space and an irq.
+
+         If unsure, say N.
+
+config USB_OCTEON_OHCI
+       bool "Octeon on-chip OHCI support (DEPRECATED)"
+       depends on CAVIUM_OCTEON_SOC
+       default USB_OCTEON_EHCI
+       select USB_OHCI_BIG_ENDIAN_MMIO
+       select USB_OHCI_LITTLE_ENDIAN
+       select USB_OHCI_HCD_PLATFORM
+       help
+         This option is deprecated now and the driver was removed, use
+         USB_OHCI_HCD_PLATFORM instead.
+
+         Enable support for the Octeon II SOC's on-chip OHCI
+         controller.  It is needed for low-speed USB 1.0 device
+         support.  All CN6XXX based chips with USB are supported.
+
+endif # USB_OHCI_HCD
+
+config USB_UHCI_HCD
+       tristate "UHCI HCD (most Intel and VIA) support"
+       depends on PCI || USB_UHCI_SUPPORT_NON_PCI_HC
+       ---help---
+         The Universal Host Controller Interface is a standard by Intel for
+         accessing the USB hardware in the PC (which is also called the USB
+         host controller). If your USB host controller conforms to this
+         standard, you may want to say Y, but see below. All recent boards
+         with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX,
+         i810, i820) conform to this standard. Also all VIA PCI chipsets
+         (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro
+         133) and LEON/GRLIB SoCs with the GRUSBHC controller.
+         If unsure, say Y.
+
+         To compile this driver as a module, choose M here: the
+         module will be called uhci-hcd.
+
+config USB_UHCI_SUPPORT_NON_PCI_HC
+       bool
+       default y if (SPARC_LEON || USB_UHCI_PLATFORM)
+
+config USB_UHCI_PLATFORM
+       bool
+       default y if ARCH_VT8500
+
+config USB_UHCI_BIG_ENDIAN_MMIO
+       bool
+       default y if SPARC_LEON
+
+config USB_UHCI_BIG_ENDIAN_DESC
+       bool
+       default y if SPARC_LEON
+
+config USB_FHCI_HCD
+       tristate "Freescale QE USB Host Controller support"
+       depends on OF_GPIO && QE_GPIO && QUICC_ENGINE
+       select FSL_GTM
+       select QE_USB
+       help
+         This driver enables support for Freescale QE USB Host Controller
+         (as found on MPC8360 and MPC8323 processors), the driver supports
+         Full and Low Speed USB.
+
+config FHCI_DEBUG
+       bool "Freescale QE USB Host Controller debug support"
+       depends on USB_FHCI_HCD && DEBUG_FS
+       help
+         Say "y" to see some FHCI debug information and statistics
+         through debugfs.
+
+config USB_U132_HCD
+       tristate "Elan U132 Adapter Host Controller"
+       depends on USB_FTDI_ELAN
+       help
+         The U132 adapter is a USB to CardBus adapter specifically designed
+         for PC cards that contain an OHCI host controller. Typical PC cards
+         are the Orange Mobile 3G Option GlobeTrotter Fusion card. The U132
+         adapter will *NOT* work with PC cards that do not contain an OHCI
+         controller.
+
+         For those PC cards that contain multiple OHCI controllers only the
+         first one is used.
+
+         The driver consists of two modules, the "ftdi-elan" module is a
+         USB client driver that interfaces to the FTDI chip within ELAN's
+         USB-to-PCMCIA adapter, and this "u132-hcd" module is a USB host
+         controller driver that talks to the OHCI controller within the
+         CardBus cards that are inserted in the U132 adapter.
+
+         This driver has been tested with a CardBus OHCI USB adapter, and
+         worked with a USB PEN Drive inserted into the first USB port of
+         the PCCARD. A rather pointless thing to do, but useful for testing.
+
+         It is safe to say M here.
+
+         See also <http://www.elandigitalsystems.com/support/ufaq/u132linux.php>
+
+config USB_SL811_HCD
+       tristate "SL811HS HCD support"
+       help
+         The SL811HS is a single-port USB controller that supports either
+         host side or peripheral side roles.  Enable this option if your
+         board has this chip, and you want to use it as a host controller. 
+         If unsure, say N.
+
+         To compile this driver as a module, choose M here: the
+         module will be called sl811-hcd.
+
+config USB_SL811_HCD_ISO
+       bool "partial ISO support"
+       depends on USB_SL811_HCD
+       help
+         The driver doesn't support iso_frame_desc (yet), but for some simple
+         devices that just queue one ISO frame per URB, then ISO transfers
+         "should" work using the normal urb status fields.
+
+         If unsure, say N.
+
+config USB_SL811_CS
+       tristate "CF/PCMCIA support for SL811HS HCD"
+       depends on USB_SL811_HCD && PCMCIA
+       help
+         Wraps a PCMCIA driver around the SL811HS HCD, supporting the RATOC
+         REX-CFU1U CF card (often used with PDAs).  If unsure, say N.
+
+         To compile this driver as a module, choose M here: the
+         module will be called "sl811_cs".
+
+config USB_R8A66597_HCD
+       tristate "R8A66597 HCD support"
+       help
+         The R8A66597 is a USB 2.0 host and peripheral controller.
+
+         Enable this option if your board has this chip, and you want
+         to use it as a host controller.  If unsure, say N.
+
+         To compile this driver as a module, choose M here: the
+         module will be called r8a66597-hcd.
+
+config USB_RENESAS_USBHS_HCD
+       tristate "Renesas USBHS HCD support"
+       depends on USB_RENESAS_USBHS
+       help
+         The Renesas USBHS is a USB 2.0 host and peripheral controller.
+
+         Enable this option if your board has this chip, and you want
+         to use it as a host controller.  If unsure, say N.
+
+         To compile this driver as a module, choose M here: the
+         module will be called renesas-usbhs.
+
+config USB_WHCI_HCD
+       tristate "Wireless USB Host Controller Interface (WHCI) driver"
+       depends on PCI && USB && UWB
+       select USB_WUSB
+       select UWB_WHCI
+       help
+         A driver for PCI-based Wireless USB Host Controllers that are
+         compliant with the WHCI specification.
+
+         To compile this driver a module, choose M here: the module
+         will be called "whci-hcd".
+
+config USB_HWA_HCD
+       tristate "Host Wire Adapter (HWA) driver"
+       depends on USB && UWB
+       select USB_WUSB
+       select UWB_HWA
+       help
+         This driver enables you to connect Wireless USB devices to
+         your system using a Host Wire Adaptor USB dongle. This is an
+         UWB Radio Controller and WUSB Host Controller connected to
+         your machine via USB (specified in WUSB1.0).
+
+         To compile this driver a module, choose M here: the module
+         will be called "hwa-hc".
+
+config USB_IMX21_HCD
+       tristate "i.MX21 HCD support"
+       depends on ARM && ARCH_MXC
+       help
+         This driver enables support for the on-chip USB host in the
+         i.MX21 processor.
+
+         To compile this driver as a module, choose M here: the
+         module will be called "imx21-hcd".
+
+config USB_HCD_BCMA
+       tristate "BCMA usb host driver"
+       depends on BCMA
+       select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
+       select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
+       help
+         Enable support for the EHCI and OCHI host controller on an bcma bus.
+         It converts the bcma driver into two platform device drivers
+         for ehci and ohci.
+
+         If unsure, say N.
+
+config USB_HCD_SSB
+       tristate "SSB usb host driver"
+       depends on SSB
+       select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
+       select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
+       help
+         Enable support for the EHCI and OCHI host controller on an bcma bus.
+         It converts the bcma driver into two platform device drivers
+         for ehci and ohci.
+
+         If unsure, say N.
+
+config USB_HCD_TEST_MODE
+       bool "HCD test mode support"
+       ---help---
+         Say 'Y' to enable additional software test modes that may be
+         supported by the host controller drivers.
+
+         One such test mode is the Embedded High-speed Host Electrical Test
+         (EHSET) for EHCI host controller hardware, specifically the "Single
+         Step Set Feature" test.  Typically this will be enabled for On-the-Go
+         or embedded hosts that need to undergo USB-IF compliance testing with
+         the aid of special testing hardware.  In the future, this may expand
+         to include other tests that require support from a HCD driver.
+
+         This option is of interest only to developers who need to validate
+         their USB hardware designs.  It is not needed for normal use.  If
+         unsure, say N.