xref: /linux/drivers/usb/host/Kconfig (revision ef189c8dde9a82962ddb2511ee00ab8d4719dfca)
11da177e4SLinus Torvalds#
21da177e4SLinus Torvalds# USB Host Controller Drivers
31da177e4SLinus Torvalds#
41da177e4SLinus Torvaldscomment "USB Host Controller Drivers"
51da177e4SLinus Torvalds
6e9b29ffcSPeter Korsgaardconfig USB_C67X00_HCD
7e9b29ffcSPeter Korsgaard	tristate "Cypress C67x00 HCD support"
8149737a7SVegard Nossum	depends on HAS_IOMEM
9e9b29ffcSPeter Korsgaard	help
10e9b29ffcSPeter Korsgaard	  The Cypress C67x00 (EZ-Host/EZ-OTG) chips are dual-role
11e9b29ffcSPeter Korsgaard	  host/peripheral/OTG USB controllers.
12e9b29ffcSPeter Korsgaard
13e9b29ffcSPeter Korsgaard	  Enable this option to support this chip in host controller mode.
14e9b29ffcSPeter Korsgaard	  If unsure, say N.
15e9b29ffcSPeter Korsgaard
16e9b29ffcSPeter Korsgaard	  To compile this driver as a module, choose M here: the
17e9b29ffcSPeter Korsgaard	  module will be called c67x00.
18e9b29ffcSPeter Korsgaard
19eb6bab13SSarah Sharpconfig USB_XHCI_HCD
20eb83be98SGreg Kroah-Hartman	tristate "xHCI HCD (USB 3.0) support"
21cf34be7aSGeert Uytterhoeven	depends on HAS_DMA && HAS_IOMEM
22eb6bab13SSarah Sharp	---help---
23eb6bab13SSarah Sharp	  The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0
24eb6bab13SSarah Sharp	  "SuperSpeed" host controller hardware.
25eb6bab13SSarah Sharp
26eb6bab13SSarah Sharp	  To compile this driver as a module, choose M here: the
27eb6bab13SSarah Sharp	  module will be called xhci-hcd.
28eb6bab13SSarah Sharp
290fcb9989SFlorian Fainelliif USB_XHCI_HCD
300fcb9989SFlorian Fainelli
3129e409f0SAndrew Brestickerconfig USB_XHCI_PCI
3229e409f0SAndrew Bresticker       tristate
332c93e790Syuan linyu       depends on USB_PCI
3429e409f0SAndrew Bresticker       default y
3529e409f0SAndrew Bresticker
363429e91aSSebastian Andrzej Siewiorconfig USB_XHCI_PLATFORM
376c05cb14SRafał Miłecki	tristate "Generic xHCI driver for a platform device"
38f879fc32SYoshihiro Shimoda	select USB_XHCI_RCAR if ARCH_RENESAS
396c05cb14SRafał Miłecki	---help---
406c05cb14SRafał Miłecki	  Adds an xHCI host driver for a generic platform device, which
416c05cb14SRafał Miłecki	  provides a memory space and an irq.
426c05cb14SRafał Miłecki	  It is also a prerequisite for platform specific drivers that
436c05cb14SRafał Miłecki	  implement some extra quirks.
446c05cb14SRafał Miłecki
456c05cb14SRafał Miłecki	  If unsure, say N.
463429e91aSSebastian Andrzej Siewior
470cbd4b34SChunfeng Yunconfig USB_XHCI_MTK
48808cf33dSJohn Crispin	tristate "xHCI support for Mediatek MT65xx/MT7621"
490cbd4b34SChunfeng Yun	select MFD_SYSCON
50808cf33dSJohn Crispin	depends on (MIPS && SOC_MT7621) || ARCH_MEDIATEK || COMPILE_TEST
510cbd4b34SChunfeng Yun	---help---
520cbd4b34SChunfeng Yun	  Say 'Y' to enable the support for the xHCI host controller
530cbd4b34SChunfeng Yun	  found in Mediatek MT65xx SoCs.
540cbd4b34SChunfeng Yun	  If unsure, say N.
550cbd4b34SChunfeng Yun
5697374792SGregory CLEMENTconfig USB_XHCI_MVEBU
5797374792SGregory CLEMENT	tristate "xHCI support for Marvell Armada 375/38x"
5897374792SGregory CLEMENT	select USB_XHCI_PLATFORM
59828638e9SVegard Nossum	depends on HAS_IOMEM
6097374792SGregory CLEMENT	depends on ARCH_MVEBU || COMPILE_TEST
6197374792SGregory CLEMENT	---help---
6297374792SGregory CLEMENT	  Say 'Y' to enable the support for the xHCI host controller
6397374792SGregory CLEMENT	  found in Marvell Armada 375/38x ARM SOCs.
6497374792SGregory CLEMENT
654ac8918fSYoshihiro Shimodaconfig USB_XHCI_RCAR
664ac8918fSYoshihiro Shimoda	tristate "xHCI support for Renesas R-Car SoCs"
67f879fc32SYoshihiro Shimoda	depends on USB_XHCI_PLATFORM
686edd87f5SSimon Horman	depends on ARCH_RENESAS || COMPILE_TEST
694ac8918fSYoshihiro Shimoda	---help---
704ac8918fSYoshihiro Shimoda	  Say 'Y' to enable the support for the xHCI host controller
714ac8918fSYoshihiro Shimoda	  found in Renesas R-Car ARM SoCs.
724ac8918fSYoshihiro Shimoda
73e84fce0fSThierry Redingconfig USB_XHCI_TEGRA
74e84fce0fSThierry Reding	tristate "xHCI support for NVIDIA Tegra SoCs"
75e84fce0fSThierry Reding	depends on PHY_TEGRA_XUSB
76e84fce0fSThierry Reding	depends on RESET_CONTROLLER
77e84fce0fSThierry Reding	select FW_LOADER
78e84fce0fSThierry Reding	---help---
79e84fce0fSThierry Reding	  Say 'Y' to enable the support for the xHCI host controller
80e84fce0fSThierry Reding	  found in NVIDIA Tegra124 and later SoCs.
81e84fce0fSThierry Reding
820fcb9989SFlorian Fainelliendif # USB_XHCI_HCD
830fcb9989SFlorian Fainelli
841da177e4SLinus Torvaldsconfig USB_EHCI_HCD
851da177e4SLinus Torvalds	tristate "EHCI HCD (USB 2.0) support"
86cf34be7aSGeert Uytterhoeven	depends on HAS_DMA && HAS_IOMEM
871da177e4SLinus Torvalds	---help---
881da177e4SLinus Torvalds	  The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0
891da177e4SLinus Torvalds	  "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware.
901da177e4SLinus Torvalds	  If your USB host controller supports USB 2.0, you will likely want to
91b967c88eSThierry Vignaud	  configure this Host Controller Driver.
921da177e4SLinus Torvalds
931da177e4SLinus Torvalds	  EHCI controllers are packaged with "companion" host controllers (OHCI
941da177e4SLinus Torvalds	  or UHCI) to handle USB 1.1 devices connected to root hub ports.  Ports
95b3c29d85SJesper Juhl	  will connect to EHCI if the device is high speed, otherwise they
961da177e4SLinus Torvalds	  connect to a companion controller.  If you configure EHCI, you should
971da177e4SLinus Torvalds	  probably configure the OHCI (for NEC and some other vendors) USB Host
981da177e4SLinus Torvalds	  Controller Driver or UHCI (for Via motherboards) Host Controller
991da177e4SLinus Torvalds	  Driver too.
1001da177e4SLinus Torvalds
1011da177e4SLinus Torvalds	  You may want to read <file:Documentation/usb/ehci.txt>.
1021da177e4SLinus Torvalds
1031da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1041da177e4SLinus Torvalds	  module will be called ehci-hcd.
1051da177e4SLinus Torvalds
1061da177e4SLinus Torvaldsconfig USB_EHCI_ROOT_HUB_TT
1079ec249a6SRobert P. J. Day	bool "Root Hub Transaction Translators"
108a746c286SPeter Chen	depends on USB_EHCI_HCD
1091da177e4SLinus Torvalds	---help---
1101da177e4SLinus Torvalds	  Some EHCI chips have vendor-specific extensions to integrate
1111da177e4SLinus Torvalds	  transaction translators, so that no OHCI or UHCI companion
1121da177e4SLinus Torvalds	  controller is needed.  It's safe to say "y" even if your
1131da177e4SLinus Torvalds	  controller doesn't support this feature.
1141da177e4SLinus Torvalds
115ba47f66bSDan Streetman	  This supports the EHCI implementation that's originally
116ba47f66bSDan Streetman	  from ARC, and has since changed hands a few times.
117ba47f66bSDan Streetman
118ba47f66bSDan Streetmanconfig USB_EHCI_TT_NEWSCHED
11937cd681cSAlan Stern	bool "Improved Transaction Translator scheduling"
120a746c286SPeter Chen	depends on USB_EHCI_HCD
12137cd681cSAlan Stern	default y
122ba47f66bSDan Streetman	---help---
123ba47f66bSDan Streetman	  This changes the periodic scheduling code to fill more of the low
124ba47f66bSDan Streetman	  and full speed bandwidth available from the Transaction Translator
125ba47f66bSDan Streetman	  (TT) in USB 2.0 hubs.  Without this, only one transfer will be
126ba47f66bSDan Streetman	  issued in each microframe, significantly reducing the number of
127ba47f66bSDan Streetman	  periodic low/fullspeed transfers possible.
128ba47f66bSDan Streetman
129ba47f66bSDan Streetman	  If you have multiple periodic low/fullspeed devices connected to a
130ba47f66bSDan Streetman	  highspeed USB hub which is connected to a highspeed USB Host
131ba47f66bSDan Streetman	  Controller, and some of those devices will not work correctly
13237cd681cSAlan Stern	  (possibly due to "ENOSPC" or "-28" errors), say Y.  Conversely, if
13337cd681cSAlan Stern	  you have only one such device and it doesn't work, you could try
13437cd681cSAlan Stern	  saying N.
135ba47f66bSDan Streetman
13637cd681cSAlan Stern	  If unsure, say Y.
1371da177e4SLinus Torvalds
13842443dc4SFlorian Fainelliif USB_EHCI_HCD
13942443dc4SFlorian Fainelli
140adfa79d1SAlan Sternconfig USB_EHCI_PCI
141adfa79d1SAlan Stern	tristate
1422c93e790Syuan linyu	depends on USB_PCI
143adfa79d1SAlan Stern	default y
144adfa79d1SAlan Stern
14522ced687SAnoopconfig USB_EHCI_HCD_PMC_MSP
14622ced687SAnoop	tristate "EHCI support for on-chip PMC MSP71xx USB controller"
14742443dc4SFlorian Fainelli	depends on MSP_HAS_USB
14822ced687SAnoop	default n
14922ced687SAnoop	select USB_EHCI_BIG_ENDIAN_DESC
15022ced687SAnoop	select USB_EHCI_BIG_ENDIAN_MMIO
15122ced687SAnoop	---help---
15222ced687SAnoop		Enables support for the onchip USB controller on the PMC_MSP7100 Family SoC's.
15322ced687SAnoop		If unsure, say N.
15422ced687SAnoop
15508d3c18eSJulie Zhuconfig XPS_USB_HCD_XILINX
15608d3c18eSJulie Zhu	bool "Use Xilinx usb host EHCI controller core"
15742443dc4SFlorian Fainelli	depends on (PPC32 || MICROBLAZE)
15808d3c18eSJulie Zhu	select USB_EHCI_BIG_ENDIAN_DESC
15908d3c18eSJulie Zhu	select USB_EHCI_BIG_ENDIAN_MMIO
16008d3c18eSJulie Zhu	---help---
161f54619f2SMasanari Iida		Xilinx xps USB host controller core is EHCI compliant and has
16208d3c18eSJulie Zhu		transaction translator built-in. It can be configured to either
16308d3c18eSJulie Zhu		support both high speed and full speed devices, or high speed
16408d3c18eSJulie Zhu		devices only.
16508d3c18eSJulie Zhu
166ba02978aSLi Yangconfig USB_EHCI_FSL
167ca07e1c1SRamneek Mehresh	tristate "Support for Freescale PPC on-chip EHCI USB controller"
16842443dc4SFlorian Fainelli	depends on FSL_SOC
169ba02978aSLi Yang	select USB_EHCI_ROOT_HUB_TT
170ba02978aSLi Yang	---help---
171ba02978aSLi Yang	  Variation of ARC USB block used in some Freescale chips.
172ba02978aSLi Yang
1737e8d5cd9SDaniel Mackconfig USB_EHCI_MXC
174dba63b2fSAlan Stern	tristate "Support for Freescale i.MX on-chip EHCI USB controller"
17542443dc4SFlorian Fainelli	depends on ARCH_MXC
1767e8d5cd9SDaniel Mack	select USB_EHCI_ROOT_HUB_TT
1777e8d5cd9SDaniel Mack	---help---
1787e8d5cd9SDaniel Mack	  Variation of ARC USB block used in some Freescale chips.
1797e8d5cd9SDaniel Mack
1807f124f4bSKeshava Munegowdaconfig USB_EHCI_HCD_OMAP
18154a41966SAlan Stern	tristate "EHCI support for OMAP3 and later chips"
18242443dc4SFlorian Fainelli	depends on ARCH_OMAP
1835a8d651aSFelipe Balbi	depends on NOP_USB_XCEIV
1847f124f4bSKeshava Munegowda	default y
1857f124f4bSKeshava Munegowda	---help---
1867f124f4bSKeshava Munegowda	  Enables support for the on-chip EHCI controller on
1877f124f4bSKeshava Munegowda	  OMAP3 and later chips.
1887f124f4bSKeshava Munegowda
189a76dd463SManjunath Goudarconfig USB_EHCI_HCD_ORION
190a76dd463SManjunath Goudar	tristate  "Support for Marvell EBU on-chip EHCI USB controller"
191ccc0d385SGregory CLEMENT	depends on USB_EHCI_HCD && (PLAT_ORION || ARCH_MVEBU)
192a76dd463SManjunath Goudar	default y
193a76dd463SManjunath Goudar	---help---
194a76dd463SManjunath Goudar	  Enables support for the on-chip EHCI controller on Marvell's
195a76dd463SManjunath Goudar	  embedded ARM SoCs, including Orion, Kirkwood, Dove, Armada XP,
196a76dd463SManjunath Goudar	  Armada 370.  This is different from the EHCI implementation
197a76dd463SManjunath Goudar	  on Marvell's mobile PXA and MMP SoC, see "EHCI support for
198a76dd463SManjunath Goudar	  Marvell PXA/MMP USB controller" for those.
199a76dd463SManjunath Goudar
2007675d6baSManjunath Goudarconfig USB_EHCI_HCD_SPEAR
2017675d6baSManjunath Goudar        tristate "Support for ST SPEAr on-chip EHCI USB controller"
2027675d6baSManjunath Goudar        depends on USB_EHCI_HCD && PLAT_SPEAR
2037675d6baSManjunath Goudar        default y
2047675d6baSManjunath Goudar        ---help---
2057675d6baSManjunath Goudar          Enables support for the on-chip EHCI controller on
2067675d6baSManjunath Goudar          ST SPEAr chips.
2077675d6baSManjunath Goudar
208905e300eSArnd Bergmannconfig USB_EHCI_HCD_STI
209905e300eSArnd Bergmann	tristate "Support for ST STiHxxx on-chip EHCI USB controller"
210905e300eSArnd Bergmann	depends on ARCH_STI && OF
211905e300eSArnd Bergmann	select GENERIC_PHY
212905e300eSArnd Bergmann	select USB_EHCI_HCD_PLATFORM
213905e300eSArnd Bergmann	help
214905e300eSArnd Bergmann	  Enable support for the on-chip EHCI controller found on
215905e300eSArnd Bergmann	  STMicroelectronics consumer electronics SoC's.
216905e300eSArnd Bergmann
21797736961SManjunath Goudarconfig USB_EHCI_HCD_AT91
21897736961SManjunath Goudar        tristate  "Support for Atmel on-chip EHCI USB controller"
21997736961SManjunath Goudar        depends on USB_EHCI_HCD && ARCH_AT91
22097736961SManjunath Goudar        default y
22197736961SManjunath Goudar        ---help---
22297736961SManjunath Goudar          Enables support for the on-chip EHCI controller on
22397736961SManjunath Goudar          Atmel chips.
22497736961SManjunath Goudar
225b0848aeaSPavankumar Kondeticonfig USB_EHCI_MSM
2268c68e84fSManjunath Goudar	tristate "Support for Qualcomm QSD/MSM on-chip EHCI USB controller"
227ebfd44ffSStephen Boyd	depends on ARCH_QCOM
228b0848aeaSPavankumar Kondeti	select USB_EHCI_ROOT_HUB_TT
229b0848aeaSPavankumar Kondeti	---help---
230b0848aeaSPavankumar Kondeti	  Enables support for the USB Host controller present on the
231b0848aeaSPavankumar Kondeti	  Qualcomm chipsets. Root Hub has inbuilt TT.
232b0848aeaSPavankumar Kondeti	  This driver depends on OTG driver for PHY initialization,
2338bb6a164SPavankumar Kondeti	  clock management, powering up VBUS, and power management.
2348cf28f1fSPavankumar Kondeti	  This driver is not supported on boards like trout which
2358cf28f1fSPavankumar Kondeti	  has an external PHY.
236b0848aeaSPavankumar Kondeti
23779ad3b5aSBenoit Gobyconfig USB_EHCI_TEGRA
2389fc5f24eSManjunath Goudar       tristate "NVIDIA Tegra HCD support"
23942443dc4SFlorian Fainelli       depends on ARCH_TEGRA
24079ad3b5aSBenoit Goby       select USB_EHCI_ROOT_HUB_TT
24175f32ec1SFelipe Balbi       select USB_PHY
242a262e87fSArnd Bergmann	select USB_ULPI
243a262e87fSArnd Bergmann	select USB_ULPI_VIEWPORT
24479ad3b5aSBenoit Goby       help
24579ad3b5aSBenoit Goby         This driver enables support for the internal USB Host Controllers
24679ad3b5aSBenoit Goby         found in NVIDIA Tegra SoCs. The controllers are EHCI compliant.
24779ad3b5aSBenoit Goby
248da0e8fb0SValentine Barshakconfig USB_EHCI_HCD_PPC_OF
249da0e8fb0SValentine Barshak	bool "EHCI support for PPC USB controller on OF platform bus"
250c31316cbSKevin Hao	depends on PPC
251da0e8fb0SValentine Barshak	default y
252da0e8fb0SValentine Barshak	---help---
253da0e8fb0SValentine Barshak	  Enables support for the USB controller present on the PowerPC
254da0e8fb0SValentine Barshak	  OpenFirmware platform bus.
255da0e8fb0SValentine Barshak
25660b0bf0fSYoshihiro Shimodaconfig USB_EHCI_SH
25760b0bf0fSYoshihiro Shimoda	bool "EHCI support for SuperH USB controller"
25842443dc4SFlorian Fainelli	depends on SUPERH
25960b0bf0fSYoshihiro Shimoda	---help---
26060b0bf0fSYoshihiro Shimoda	  Enables support for the on-chip EHCI controller on the SuperH.
26160b0bf0fSYoshihiro Shimoda	  If you use the PCI EHCI controller, this option is not necessary.
26260b0bf0fSYoshihiro Shimoda
26329824c16SJingoo Hanconfig USB_EHCI_EXYNOS
2647edb3dafSManjunath Goudar       tristate "EHCI support for Samsung S5P/EXYNOS SoC Series"
265cd6e245aSSylwester Nawrocki       depends on ARCH_S5PV210 || ARCH_EXYNOS
2661bcc5aa8SJoonyoung Shim       help
26729824c16SJingoo Han	Enable support for the Samsung Exynos SOC's on-chip EHCI controller.
2681bcc5aa8SJoonyoung Shim
2693a082ec9SNeil Zhangconfig USB_EHCI_MV
270a76dd463SManjunath Goudar	bool "EHCI support for Marvell PXA/MMP USB controller"
27142443dc4SFlorian Fainelli	depends on (ARCH_PXA || ARCH_MMP)
2723a082ec9SNeil Zhang	select USB_EHCI_ROOT_HUB_TT
2733a082ec9SNeil Zhang	---help---
2743a082ec9SNeil Zhang	  Enables support for Marvell (including PXA and MMP series) on-chip
2753a082ec9SNeil Zhang	  USB SPH and OTG controller. SPH is a single port host, and it can
2763a082ec9SNeil Zhang	  only be EHCI host. OTG is controller that can switch to host mode.
277a76dd463SManjunath Goudar	  Note that this driver will not work on Marvell's other EHCI
278a76dd463SManjunath Goudar	  controller used by the EBU-type SoCs including Orion, Kirkwood,
279a76dd463SManjunath Goudar	  Dova, Armada 370 and Armada XP. See "Support for Marvell EBU
280a76dd463SManjunath Goudar	  on-chip EHCI USB controller" for those.
2813a082ec9SNeil Zhang
282586dfc8cSWan ZongShunconfig USB_W90X900_EHCI
283a60f4f81SManjunath Goudar	tristate "W90X900(W90P910) EHCI support"
28442443dc4SFlorian Fainelli	depends on ARCH_W90X900
285586dfc8cSWan ZongShun	---help---
286586dfc8cSWan ZongShun		Enables support for the W90X900 USB controller
287586dfc8cSWan ZongShun
288760efe69SMac Linconfig USB_CNS3XXX_EHCI
289f3a958d3SFlorian Fainelli	bool "Cavium CNS3XXX EHCI Module (DEPRECATED)"
29042443dc4SFlorian Fainelli	depends on ARCH_CNS3XXX
291f3a958d3SFlorian Fainelli	select USB_EHCI_HCD_PLATFORM
292760efe69SMac Lin	---help---
293f3a958d3SFlorian Fainelli	  This option is deprecated now and the driver was removed, use
294f3a958d3SFlorian Fainelli	  USB_EHCI_HCD_PLATFORM instead.
295f3a958d3SFlorian Fainelli
296760efe69SMac Lin	  Enable support for the CNS3XXX SOC's on-chip EHCI controller.
297760efe69SMac Lin	  It is needed for high-speed (480Mbit/sec) USB 2.0 device
298760efe69SMac Lin	  support.
299760efe69SMac Lin
300502fa841SGabor Juhosconfig USB_EHCI_ATH79
3015d98cd4eSHauke Mehrtens	bool "EHCI support for AR7XXX/AR9XXX SoCs (DEPRECATED)"
30242443dc4SFlorian Fainelli	depends on (SOC_AR71XX || SOC_AR724X || SOC_AR913X || SOC_AR933X)
303502fa841SGabor Juhos	select USB_EHCI_ROOT_HUB_TT
3045d98cd4eSHauke Mehrtens	select USB_EHCI_HCD_PLATFORM
305502fa841SGabor Juhos	default y
306502fa841SGabor Juhos	---help---
3075d98cd4eSHauke Mehrtens	  This option is deprecated now and the driver was removed, use
3085d98cd4eSHauke Mehrtens	  USB_EHCI_HCD_PLATFORM instead.
3095d98cd4eSHauke Mehrtens
310502fa841SGabor Juhos	  Enables support for the built-in EHCI controller present
311502fa841SGabor Juhos	  on the Atheros AR7XXX/AR9XXX SoCs.
312502fa841SGabor Juhos
31342443dc4SFlorian Fainelliconfig USB_EHCI_HCD_PLATFORM
31442443dc4SFlorian Fainelli	tristate "Generic EHCI driver for a platform device"
31542443dc4SFlorian Fainelli	default n
31642443dc4SFlorian Fainelli	---help---
31742443dc4SFlorian Fainelli	  Adds an EHCI host driver for a generic platform device, which
31842443dc4SFlorian Fainelli	  provides a memory space and an irq.
31942443dc4SFlorian Fainelli
32042443dc4SFlorian Fainelli	  If unsure, say N.
32142443dc4SFlorian Fainelli
32242443dc4SFlorian Fainelliconfig USB_OCTEON_EHCI
3232193dda5SAlan Stern	bool "Octeon on-chip EHCI support (DEPRECATED)"
3249ddebc46SDavid Daney	depends on CAVIUM_OCTEON_SOC
32542443dc4SFlorian Fainelli	default n
326df115f3eSBen Hutchings	select USB_EHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
3272193dda5SAlan Stern	select USB_EHCI_HCD_PLATFORM
32842443dc4SFlorian Fainelli	help
3292193dda5SAlan Stern	  This option is deprecated now and the driver was removed, use
3302193dda5SAlan Stern	  USB_EHCI_HCD_PLATFORM instead.
3312193dda5SAlan Stern
33242443dc4SFlorian Fainelli	  Enable support for the Octeon II SOC's on-chip EHCI
33342443dc4SFlorian Fainelli	  controller.  It is needed for high-speed (480Mbit/sec)
33442443dc4SFlorian Fainelli	  USB 2.0 device support.  All CN6XXX based chips with USB are
33542443dc4SFlorian Fainelli	  supported.
33642443dc4SFlorian Fainelli
33742443dc4SFlorian Fainelliendif # USB_EHCI_HCD
33842443dc4SFlorian Fainelli
339b92a78e5SRodolfo Giometticonfig USB_OXU210HP_HCD
340b92a78e5SRodolfo Giometti	tristate "OXU210HP HCD support"
341f4a5d702SVegard Nossum	depends on HAS_IOMEM
342b92a78e5SRodolfo Giometti	---help---
343b92a78e5SRodolfo Giometti	  The OXU210HP is an USB host/OTG/device controller. Enable this
344b92a78e5SRodolfo Giometti	  option if your board has this chip. If unsure, say N.
345b92a78e5SRodolfo Giometti
346b92a78e5SRodolfo Giometti	  This driver does not support isochronous transfers and doesn't
347b92a78e5SRodolfo Giometti	  implement OTG nor USB device controllers.
348b92a78e5SRodolfo Giometti
349b92a78e5SRodolfo Giometti	  To compile this driver as a module, choose M here: the
350b92a78e5SRodolfo Giometti	  module will be called oxu210hp-hcd.
351b92a78e5SRodolfo Giometti
3524808a1c0SOlav Kongasconfig USB_ISP116X_HCD
3534808a1c0SOlav Kongas	tristate "ISP116X HCD support"
354ca23d3b7SVegard Nossum	depends on HAS_IOMEM
3554808a1c0SOlav Kongas	---help---
3564808a1c0SOlav Kongas	  The ISP1160 and ISP1161 chips are USB host controllers. Enable this
3574808a1c0SOlav Kongas	  option if your board has this chip. If unsure, say N.
3584808a1c0SOlav Kongas
3594808a1c0SOlav Kongas	  This driver does not support isochronous transfers.
3604808a1c0SOlav Kongas
3614808a1c0SOlav Kongas	  To compile this driver as a module, choose M here: the
3624808a1c0SOlav Kongas	  module will be called isp116x-hcd.
3634808a1c0SOlav Kongas
364a9d43091SLothar Wassmannconfig USB_ISP1362_HCD
365a9d43091SLothar Wassmann	tristate "ISP1362 HCD support"
3664a6d9f87SVegard Nossum	depends on HAS_IOMEM
367a9d43091SLothar Wassmann	---help---
368a9d43091SLothar Wassmann	  Supports the Philips ISP1362 chip as a host controller
369a9d43091SLothar Wassmann
370a9d43091SLothar Wassmann	  This driver does not support isochronous transfers.
371a9d43091SLothar Wassmann
372a9d43091SLothar Wassmann	  To compile this driver as a module, choose M here: the
373a9d43091SLothar Wassmann	  module will be called isp1362-hcd.
374a9d43091SLothar Wassmann
3757d50195fSFeng-Hsin Chiangconfig USB_FOTG210_HCD
3767d50195fSFeng-Hsin Chiang	tristate "FOTG210 HCD support"
377cf34be7aSGeert Uytterhoeven	depends on USB && HAS_DMA && HAS_IOMEM
3787d50195fSFeng-Hsin Chiang	---help---
3797d50195fSFeng-Hsin Chiang	  Faraday FOTG210 is an OTG controller which can be configured as
3807d50195fSFeng-Hsin Chiang	  an USB2.0 host. It is designed to meet USB2.0 EHCI specification
3817d50195fSFeng-Hsin Chiang	  with minor modification.
3827d50195fSFeng-Hsin Chiang
3837d50195fSFeng-Hsin Chiang	  To compile this driver as a module, choose M here: the
3847d50195fSFeng-Hsin Chiang	  module will be called fotg210-hcd.
3857d50195fSFeng-Hsin Chiang
3862d53139fSDavid Mosbergerconfig USB_MAX3421_HCD
3872d53139fSDavid Mosberger	tristate "MAX3421 HCD (USB-over-SPI) support"
3882d53139fSDavid Mosberger	depends on USB && SPI
3892d53139fSDavid Mosberger	---help---
3902d53139fSDavid Mosberger	  The Maxim MAX3421E chip supports standard USB 2.0-compliant
3912d53139fSDavid Mosberger	  full-speed devices either in host or peripheral mode.  This
3922d53139fSDavid Mosberger	  driver supports the host-mode of the MAX3421E only.
3932d53139fSDavid Mosberger
3942d53139fSDavid Mosberger	  To compile this driver as a module, choose M here: the module will
3952d53139fSDavid Mosberger	  be called max3421-hcd.
3962d53139fSDavid Mosberger
3971da177e4SLinus Torvaldsconfig USB_OHCI_HCD
398c1117afbSManjunath Goudar	tristate "OHCI HCD (USB 1.1) support"
399cf34be7aSGeert Uytterhoeven	depends on HAS_DMA && HAS_IOMEM
4001da177e4SLinus Torvalds	---help---
4011da177e4SLinus Torvalds	  The Open Host Controller Interface (OHCI) is a standard for accessing
4021da177e4SLinus Torvalds	  USB 1.1 host controller hardware.  It does more in hardware than Intel's
4031da177e4SLinus Torvalds	  UHCI specification.  If your USB host controller follows the OHCI spec,
4041da177e4SLinus Torvalds	  say Y.  On most non-x86 systems, and on x86 hardware that's not using a
4051da177e4SLinus Torvalds	  USB controller from Intel or VIA, this is appropriate.  If your host
4061da177e4SLinus Torvalds	  controller doesn't use PCI, this is probably appropriate.  For a PCI
4071da177e4SLinus Torvalds	  based system where you're not sure, the "lspci -v" entry will list the
4081da177e4SLinus Torvalds	  right "prog-if" for your USB controller(s):  EHCI, OHCI, or UHCI.
4091da177e4SLinus Torvalds
4101da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
4111da177e4SLinus Torvalds	  module will be called ohci-hcd.
4121da177e4SLinus Torvalds
4133ad3ca05SFlorian Fainelliif USB_OHCI_HCD
4143ad3ca05SFlorian Fainelli
415968b448bSAnand Gadiyarconfig USB_OHCI_HCD_OMAP1
416de57a154SManjunath Goudar	tristate "OHCI support for OMAP1/2 chips"
4173ad3ca05SFlorian Fainelli	depends on ARCH_OMAP1
41838e0c109SArnd Bergmann	depends on ISP1301_OMAP || !(MACH_OMAP_H2 || MACH_OMAP_H3)
419968b448bSAnand Gadiyar	default y
420968b448bSAnand Gadiyar	---help---
421968b448bSAnand Gadiyar	  Enables support for the OHCI controller on OMAP1/2 chips.
422968b448bSAnand Gadiyar
4231cc6ac59SManjunath Goudarconfig USB_OHCI_HCD_SPEAR
4241cc6ac59SManjunath Goudar        tristate "Support for ST SPEAr on-chip OHCI USB controller"
4251cc6ac59SManjunath Goudar        depends on USB_OHCI_HCD && PLAT_SPEAR
4261cc6ac59SManjunath Goudar        default y
4271cc6ac59SManjunath Goudar        ---help---
4281cc6ac59SManjunath Goudar          Enables support for the on-chip OHCI controller on
4291cc6ac59SManjunath Goudar          ST SPEAr chips.
4301cc6ac59SManjunath Goudar
431905e300eSArnd Bergmannconfig USB_OHCI_HCD_STI
432905e300eSArnd Bergmann	tristate "Support for ST STiHxxx on-chip OHCI USB controller"
433905e300eSArnd Bergmann	depends on ARCH_STI && OF
434905e300eSArnd Bergmann	select GENERIC_PHY
435905e300eSArnd Bergmann	select USB_OHCI_HCD_PLATFORM
436905e300eSArnd Bergmann	help
437905e300eSArnd Bergmann	  Enable support for the on-chip OHCI controller found on
438905e300eSArnd Bergmann	  STMicroelectronics consumer electronics SoC's.
439905e300eSArnd Bergmann
440f23b71f3SManjunath Goudarconfig USB_OHCI_HCD_S3C2410
441f23b71f3SManjunath Goudar        tristate "OHCI support for Samsung S3C24xx/S3C64xx SoC series"
442f23b71f3SManjunath Goudar        depends on USB_OHCI_HCD && (ARCH_S3C24XX || ARCH_S3C64XX)
443f23b71f3SManjunath Goudar        default y
444f23b71f3SManjunath Goudar        ---help---
445f23b71f3SManjunath Goudar          Enables support for the on-chip OHCI controller on
446f23b71f3SManjunath Goudar          S3C24xx/S3C64xx chips.
447f23b71f3SManjunath Goudar
44830330b8fSManjunath Goudarconfig USB_OHCI_HCD_LPC32XX
44930330b8fSManjunath Goudar	tristate "Support for LPC on-chip OHCI USB controller"
45030330b8fSManjunath Goudar	depends on USB_OHCI_HCD && ARCH_LPC32XX
45138e0c109SArnd Bergmann	depends on USB_ISP1301
45230330b8fSManjunath Goudar	default y
45330330b8fSManjunath Goudar	---help---
45430330b8fSManjunath Goudar          Enables support for the on-chip OHCI controller on
45530330b8fSManjunath Goudar          NXP chips.
45630330b8fSManjunath Goudar
457b8ad5c37SManjunath Goudarconfig USB_OHCI_HCD_PXA27X
458b8ad5c37SManjunath Goudar	tristate "Support for PXA27X/PXA3XX on-chip OHCI USB controller"
459b8ad5c37SManjunath Goudar	depends on USB_OHCI_HCD && (PXA27x || PXA3xx)
460b8ad5c37SManjunath Goudar	default y
461b8ad5c37SManjunath Goudar	---help---
462b8ad5c37SManjunath Goudar	  Enables support for the on-chip OHCI controller on
463b8ad5c37SManjunath Goudar	  PXA27x/PXA3xx chips.
464b8ad5c37SManjunath Goudar
465e3825b48SManjunath Goudarconfig USB_OHCI_HCD_AT91
466e3825b48SManjunath Goudar	tristate "Support for Atmel on-chip OHCI USB controller"
467be12be54SAlexandre Belloni	depends on USB_OHCI_HCD && ARCH_AT91 && OF
468e3825b48SManjunath Goudar	default y
469e3825b48SManjunath Goudar	---help---
470e3825b48SManjunath Goudar          Enables support for the on-chip OHCI controller on
471e3825b48SManjunath Goudar          Atmel chips.
472e3825b48SManjunath Goudar
473968b448bSAnand Gadiyarconfig USB_OHCI_HCD_OMAP3
4743a48fef1SManjunath Goudar	tristate "OHCI support for OMAP3 and later chips"
47554a2ec67STony Lindgren	depends on (ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5)
476*ef189c8dSTony Lindgren	select USB_OHCI_HCD_PLATFORM
477968b448bSAnand Gadiyar	default y
478*ef189c8dSTony Lindgren	help
479*ef189c8dSTony Lindgren	  This option is deprecated now and the driver was removed, use
480*ef189c8dSTony Lindgren	  USB_OHCI_HCD_PLATFORM instead.
481*ef189c8dSTony Lindgren
482968b448bSAnand Gadiyar	  Enables support for the on-chip OHCI controller on
483968b448bSAnand Gadiyar	  OMAP3 and later chips.
484968b448bSAnand Gadiyar
485068413e9SArnd Bergmannconfig USB_OHCI_HCD_DAVINCI
4866c21caa3SManjunath Goudar	tristate "OHCI support for TI DaVinci DA8xx"
487068413e9SArnd Bergmann	depends on ARCH_DAVINCI_DA8XX
4886c21caa3SManjunath Goudar	depends on USB_OHCI_HCD
4896110c425SDavid Lechner	select PHY_DA8XX_USB
490068413e9SArnd Bergmann	default y
491068413e9SArnd Bergmann	help
492068413e9SArnd Bergmann	  Enables support for the DaVinci DA8xx integrated OHCI
493068413e9SArnd Bergmann	  controller. This driver cannot currently be a loadable
494068413e9SArnd Bergmann	  module because it lacks a proper PHY abstraction.
495068413e9SArnd Bergmann
49690e6ca5cSGabor Juhosconfig USB_OHCI_ATH79
4975d98cd4eSHauke Mehrtens	bool "USB OHCI support for the Atheros AR71XX/AR7240 SoCs (DEPRECATED)"
4983ad3ca05SFlorian Fainelli	depends on (SOC_AR71XX || SOC_AR724X)
4995d98cd4eSHauke Mehrtens	select USB_OHCI_HCD_PLATFORM
50090e6ca5cSGabor Juhos	default y
50190e6ca5cSGabor Juhos	help
5025d98cd4eSHauke Mehrtens	  This option is deprecated now and the driver was removed, use
5035d98cd4eSHauke Mehrtens	  USB_OHCI_HCD_PLATFORM instead.
5045d98cd4eSHauke Mehrtens
50590e6ca5cSGabor Juhos	  Enables support for the built-in OHCI controller present on the
50690e6ca5cSGabor Juhos	  Atheros AR71XX/AR7240 SoCs.
50790e6ca5cSGabor Juhos
508495a678fSSylvain Munautconfig USB_OHCI_HCD_PPC_OF_BE
50945e83889SArnd Bergmann	bool "OHCI support for OF platform bus (big endian)"
510c31316cbSKevin Hao	depends on PPC
511495a678fSSylvain Munaut	select USB_OHCI_BIG_ENDIAN_DESC
512495a678fSSylvain Munaut	select USB_OHCI_BIG_ENDIAN_MMIO
51345e83889SArnd Bergmann	---help---
51445e83889SArnd Bergmann	  Enables support for big-endian USB controllers present on the
51545e83889SArnd Bergmann	  OpenFirmware platform bus.
516495a678fSSylvain Munaut
517495a678fSSylvain Munautconfig USB_OHCI_HCD_PPC_OF_LE
51845e83889SArnd Bergmann	bool "OHCI support for OF platform bus (little endian)"
519c31316cbSKevin Hao	depends on PPC
520495a678fSSylvain Munaut	select USB_OHCI_LITTLE_ENDIAN
52145e83889SArnd Bergmann	---help---
52245e83889SArnd Bergmann	  Enables support for little-endian USB controllers present on the
52345e83889SArnd Bergmann	  OpenFirmware platform bus.
52445e83889SArnd Bergmann
52545e83889SArnd Bergmannconfig USB_OHCI_HCD_PPC_OF
52645e83889SArnd Bergmann	bool
527c31316cbSKevin Hao	depends on PPC
52845e83889SArnd Bergmann	default USB_OHCI_HCD_PPC_OF_BE || USB_OHCI_HCD_PPC_OF_LE
529495a678fSSylvain Munaut
5301da177e4SLinus Torvaldsconfig USB_OHCI_HCD_PCI
531c1117afbSManjunath Goudar	tristate "OHCI support for PCI-bus USB controllers"
5322c93e790Syuan linyu	depends on USB_PCI
5331da177e4SLinus Torvalds	default y
5341da177e4SLinus Torvalds	select USB_OHCI_LITTLE_ENDIAN
5351da177e4SLinus Torvalds	---help---
5361da177e4SLinus Torvalds	  Enables support for PCI-bus plug-in USB controller cards.
5371da177e4SLinus Torvalds	  If unsure, say Y.
5381da177e4SLinus Torvalds
539c604e851SMichael Bueschconfig USB_OHCI_HCD_SSB
540259b83a3SHauke Mehrtens	bool "OHCI support for Broadcom SSB OHCI core (DEPRECATED)"
5413ad3ca05SFlorian Fainelli	depends on (SSB = y || SSB = USB_OHCI_HCD)
542259b83a3SHauke Mehrtens	select USB_HCD_SSB
543259b83a3SHauke Mehrtens	select USB_OHCI_HCD_PLATFORM
544c604e851SMichael Buesch	default n
545c604e851SMichael Buesch	---help---
546259b83a3SHauke Mehrtens	  This option is deprecated now and the driver was removed, use
547259b83a3SHauke Mehrtens	  USB_HCD_SSB and USB_OHCI_HCD_PLATFORM instead.
548259b83a3SHauke Mehrtens
549c604e851SMichael Buesch	  Support for the Sonics Silicon Backplane (SSB) attached
550c604e851SMichael Buesch	  Broadcom USB OHCI core.
551c604e851SMichael Buesch
552c604e851SMichael Buesch	  This device is present in some embedded devices with
553c604e851SMichael Buesch	  Broadcom based SSB bus.
554c604e851SMichael Buesch
555c604e851SMichael Buesch	  If unsure, say N.
556c604e851SMichael Buesch
55760b0bf0fSYoshihiro Shimodaconfig USB_OHCI_SH
558231a72e0SFlorian Fainelli	bool "OHCI support for SuperH USB controller (DEPRECATED)"
5593ad3ca05SFlorian Fainelli	depends on SUPERH
560231a72e0SFlorian Fainelli	select USB_OHCI_HCD_PLATFORM
56160b0bf0fSYoshihiro Shimoda	---help---
562231a72e0SFlorian Fainelli	  This option is deprecated now and the driver was removed, use
563231a72e0SFlorian Fainelli	  USB_OHCI_HCD_PLATFORM instead.
564231a72e0SFlorian Fainelli
56560b0bf0fSYoshihiro Shimoda	  Enables support for the on-chip OHCI controller on the SuperH.
56660b0bf0fSYoshihiro Shimoda	  If you use the PCI OHCI controller, this option is not necessary.
56760b0bf0fSYoshihiro Shimoda
56862194244SJingoo Hanconfig USB_OHCI_EXYNOS
56950a97e05SManjunath Goudar	tristate "OHCI support for Samsung S5P/EXYNOS SoC Series"
570cd6e245aSSylwester Nawrocki	depends on ARCH_S5PV210 || ARCH_EXYNOS
57162194244SJingoo Han	help
57262194244SJingoo Han	 Enable support for the Samsung Exynos SOC's on-chip OHCI controller.
57362194244SJingoo Han
574760efe69SMac Linconfig USB_CNS3XXX_OHCI
575c23920b0SFlorian Fainelli	bool "Cavium CNS3XXX OHCI Module (DEPRECATED)"
5763ad3ca05SFlorian Fainelli	depends on ARCH_CNS3XXX
577c23920b0SFlorian Fainelli	select USB_OHCI_HCD_PLATFORM
578760efe69SMac Lin	---help---
579c23920b0SFlorian Fainelli	  This option is deprecated now and the driver was removed, use
580c23920b0SFlorian Fainelli	  USB_OHCI_HCD_PLATFORM instead.
581c23920b0SFlorian Fainelli
582760efe69SMac Lin	  Enable support for the CNS3XXX SOC's on-chip OHCI controller.
583760efe69SMac Lin	  It is needed for low-speed USB 1.0 device support.
584760efe69SMac Lin
585fa3364b5SHauke Mehrtensconfig USB_OHCI_HCD_PLATFORM
586928fb68eSManjunath Goudar	tristate "Generic OHCI driver for a platform device"
587fa3364b5SHauke Mehrtens	default n
588fa3364b5SHauke Mehrtens	---help---
589fa3364b5SHauke Mehrtens	  Adds an OHCI host driver for a generic platform device, which
590898d828bSPeter Meerwald	  provides a memory space and an irq.
591fa3364b5SHauke Mehrtens
592fa3364b5SHauke Mehrtens	  If unsure, say N.
593fa3364b5SHauke Mehrtens
5943ad3ca05SFlorian Fainelliconfig USB_OCTEON_OHCI
5952193dda5SAlan Stern	bool "Octeon on-chip OHCI support (DEPRECATED)"
5969ddebc46SDavid Daney	depends on CAVIUM_OCTEON_SOC
5973ad3ca05SFlorian Fainelli	default USB_OCTEON_EHCI
598df115f3eSBen Hutchings	select USB_OHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
5993ad3ca05SFlorian Fainelli	select USB_OHCI_LITTLE_ENDIAN
6002193dda5SAlan Stern	select USB_OHCI_HCD_PLATFORM
6013ad3ca05SFlorian Fainelli	help
6022193dda5SAlan Stern	  This option is deprecated now and the driver was removed, use
6032193dda5SAlan Stern	  USB_OHCI_HCD_PLATFORM instead.
6042193dda5SAlan Stern
6053ad3ca05SFlorian Fainelli	  Enable support for the Octeon II SOC's on-chip OHCI
6063ad3ca05SFlorian Fainelli	  controller.  It is needed for low-speed USB 1.0 device
6073ad3ca05SFlorian Fainelli	  support.  All CN6XXX based chips with USB are supported.
6083ad3ca05SFlorian Fainelli
6093ad3ca05SFlorian Fainelliendif # USB_OHCI_HCD
6103ad3ca05SFlorian Fainelli
6111da177e4SLinus Torvaldsconfig USB_UHCI_HCD
6121da177e4SLinus Torvalds	tristate "UHCI HCD (most Intel and VIA) support"
6132c93e790Syuan linyu	depends on USB_PCI || USB_UHCI_SUPPORT_NON_PCI_HC
6141da177e4SLinus Torvalds	---help---
6151da177e4SLinus Torvalds	  The Universal Host Controller Interface is a standard by Intel for
6161da177e4SLinus Torvalds	  accessing the USB hardware in the PC (which is also called the USB
6171da177e4SLinus Torvalds	  host controller). If your USB host controller conforms to this
6181da177e4SLinus Torvalds	  standard, you may want to say Y, but see below. All recent boards
6191da177e4SLinus Torvalds	  with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX,
6201da177e4SLinus Torvalds	  i810, i820) conform to this standard. Also all VIA PCI chipsets
6211da177e4SLinus Torvalds	  (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro
6223db7739cSJan Andersson	  133) and LEON/GRLIB SoCs with the GRUSBHC controller.
6233db7739cSJan Andersson	  If unsure, say Y.
6241da177e4SLinus Torvalds
6251da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
6261da177e4SLinus Torvalds	  module will be called uhci-hcd.
6271da177e4SLinus Torvalds
628d3219d1cSJan Anderssonconfig USB_UHCI_SUPPORT_NON_PCI_HC
629d3219d1cSJan Andersson	bool
630ccd9509aSAlan Stern	default y if (SPARC_LEON || USB_UHCI_PLATFORM)
631100d4597STony Prisk
632100d4597STony Priskconfig USB_UHCI_PLATFORM
633ccd9509aSAlan Stern	bool
6344642d34aSBenjamin Herrenschmidt	default y if (ARCH_VT8500 || ARCH_ASPEED)
6354642d34aSBenjamin Herrenschmidt
6364642d34aSBenjamin Herrenschmidtconfig USB_UHCI_ASPEED
6374642d34aSBenjamin Herrenschmidt       bool
6384642d34aSBenjamin Herrenschmidt       default y if ARCH_ASPEED
639d3219d1cSJan Andersson
6408452c674SJan Anderssonconfig USB_UHCI_BIG_ENDIAN_MMIO
6418452c674SJan Andersson	bool
642ccd9509aSAlan Stern	default y if SPARC_LEON
6438452c674SJan Andersson
64451e2f62fSJan Anderssonconfig USB_UHCI_BIG_ENDIAN_DESC
64551e2f62fSJan Andersson	bool
646ccd9509aSAlan Stern	default y if SPARC_LEON
64751e2f62fSJan Andersson
648236dd4d1SAnton Vorontsovconfig USB_FHCI_HCD
649236dd4d1SAnton Vorontsov	tristate "Freescale QE USB Host Controller support"
65025e11ec4SFlorian Fainelli	depends on OF_GPIO && QE_GPIO && QUICC_ENGINE
651236dd4d1SAnton Vorontsov	select FSL_GTM
652236dd4d1SAnton Vorontsov	select QE_USB
653236dd4d1SAnton Vorontsov	help
654236dd4d1SAnton Vorontsov	  This driver enables support for Freescale QE USB Host Controller
655236dd4d1SAnton Vorontsov	  (as found on MPC8360 and MPC8323 processors), the driver supports
656236dd4d1SAnton Vorontsov	  Full and Low Speed USB.
657236dd4d1SAnton Vorontsov
658236dd4d1SAnton Vorontsovconfig FHCI_DEBUG
659236dd4d1SAnton Vorontsov	bool "Freescale QE USB Host Controller debug support"
660236dd4d1SAnton Vorontsov	depends on USB_FHCI_HCD && DEBUG_FS
661236dd4d1SAnton Vorontsov	help
662236dd4d1SAnton Vorontsov	  Say "y" to see some FHCI debug information and statistics
66325985edcSLucas De Marchi	  through debugfs.
664236dd4d1SAnton Vorontsov
665d774efeaSTony Olechconfig USB_U132_HCD
666d774efeaSTony Olech	tristate "Elan U132 Adapter Host Controller"
66725e11ec4SFlorian Fainelli	depends on USB_FTDI_ELAN
668d774efeaSTony Olech	help
669d774efeaSTony Olech	  The U132 adapter is a USB to CardBus adapter specifically designed
670d774efeaSTony Olech	  for PC cards that contain an OHCI host controller. Typical PC cards
671d774efeaSTony Olech	  are the Orange Mobile 3G Option GlobeTrotter Fusion card. The U132
672d774efeaSTony Olech	  adapter will *NOT* work with PC cards that do not contain an OHCI
673d774efeaSTony Olech	  controller.
674d774efeaSTony Olech
6753cb2fcccSMatt LaPlante	  For those PC cards that contain multiple OHCI controllers only the
676d774efeaSTony Olech	  first one is used.
677d774efeaSTony Olech
678d774efeaSTony Olech	  The driver consists of two modules, the "ftdi-elan" module is a
679d774efeaSTony Olech	  USB client driver that interfaces to the FTDI chip within ELAN's
680d774efeaSTony Olech	  USB-to-PCMCIA adapter, and this "u132-hcd" module is a USB host
681d774efeaSTony Olech	  controller driver that talks to the OHCI controller within the
682d774efeaSTony Olech	  CardBus cards that are inserted in the U132 adapter.
683d774efeaSTony Olech
684d774efeaSTony Olech	  This driver has been tested with a CardBus OHCI USB adapter, and
685d774efeaSTony Olech	  worked with a USB PEN Drive inserted into the first USB port of
686d774efeaSTony Olech	  the PCCARD. A rather pointless thing to do, but useful for testing.
687d774efeaSTony Olech
688d774efeaSTony Olech	  It is safe to say M here.
689d774efeaSTony Olech
690d774efeaSTony Olech	  See also <http://www.elandigitalsystems.com/support/ufaq/u132linux.php>
691d774efeaSTony Olech
6921da177e4SLinus Torvaldsconfig USB_SL811_HCD
6931da177e4SLinus Torvalds	tristate "SL811HS HCD support"
694cfa33eaeSVegard Nossum	depends on HAS_IOMEM
6951da177e4SLinus Torvalds	help
6961da177e4SLinus Torvalds	  The SL811HS is a single-port USB controller that supports either
6971da177e4SLinus Torvalds	  host side or peripheral side roles.  Enable this option if your
6981da177e4SLinus Torvalds	  board has this chip, and you want to use it as a host controller.
6991da177e4SLinus Torvalds	  If unsure, say N.
7001da177e4SLinus Torvalds
7011da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
7021da177e4SLinus Torvalds	  module will be called sl811-hcd.
7031da177e4SLinus Torvalds
704ad7c56f0SMike Frysingerconfig USB_SL811_HCD_ISO
705ad7c56f0SMike Frysinger	bool "partial ISO support"
706ad7c56f0SMike Frysinger	depends on USB_SL811_HCD
707ad7c56f0SMike Frysinger	help
708ad7c56f0SMike Frysinger	  The driver doesn't support iso_frame_desc (yet), but for some simple
709ad7c56f0SMike Frysinger	  devices that just queue one ISO frame per URB, then ISO transfers
710ad7c56f0SMike Frysinger	  "should" work using the normal urb status fields.
711ad7c56f0SMike Frysinger
712ad7c56f0SMike Frysinger	  If unsure, say N.
713ad7c56f0SMike Frysinger
714c6de2b64SDavid Brownellconfig USB_SL811_CS
715c6de2b64SDavid Brownell	tristate "CF/PCMCIA support for SL811HS HCD"
716c6de2b64SDavid Brownell	depends on USB_SL811_HCD && PCMCIA
717c6de2b64SDavid Brownell	help
718c6de2b64SDavid Brownell	  Wraps a PCMCIA driver around the SL811HS HCD, supporting the RATOC
719c6de2b64SDavid Brownell	  REX-CFU1U CF card (often used with PDAs).  If unsure, say N.
720c6de2b64SDavid Brownell
721c6de2b64SDavid Brownell	  To compile this driver as a module, choose M here: the
722c6de2b64SDavid Brownell	  module will be called "sl811_cs".
723c6de2b64SDavid Brownell
7245d304358SYoshihiro Shimodaconfig USB_R8A66597_HCD
725fa0de2b6SM4rkusXXL	tristate "R8A66597 HCD support"
726e37a6c92SVegard Nossum	depends on HAS_IOMEM
7275d304358SYoshihiro Shimoda	help
7285d304358SYoshihiro Shimoda	  The R8A66597 is a USB 2.0 host and peripheral controller.
7295d304358SYoshihiro Shimoda
7305d304358SYoshihiro Shimoda	  Enable this option if your board has this chip, and you want
7315d304358SYoshihiro Shimoda	  to use it as a host controller.  If unsure, say N.
7325d304358SYoshihiro Shimoda
7335d304358SYoshihiro Shimoda	  To compile this driver as a module, choose M here: the
7345d304358SYoshihiro Shimoda	  module will be called r8a66597-hcd.
7355d304358SYoshihiro Shimoda
736034d7c13SKuninori Morimotoconfig USB_RENESAS_USBHS_HCD
737034d7c13SKuninori Morimoto	tristate "Renesas USBHS HCD support"
738034d7c13SKuninori Morimoto	depends on USB_RENESAS_USBHS
739034d7c13SKuninori Morimoto	help
740034d7c13SKuninori Morimoto	  The Renesas USBHS is a USB 2.0 host and peripheral controller.
741034d7c13SKuninori Morimoto
742034d7c13SKuninori Morimoto	  Enable this option if your board has this chip, and you want
743034d7c13SKuninori Morimoto	  to use it as a host controller.  If unsure, say N.
744034d7c13SKuninori Morimoto
745034d7c13SKuninori Morimoto	  To compile this driver as a module, choose M here: the
746034d7c13SKuninori Morimoto	  module will be called renesas-usbhs.
747034d7c13SKuninori Morimoto
7487e6133aaSDavid Vrabelconfig USB_WHCI_HCD
749eb83be98SGreg Kroah-Hartman	tristate "Wireless USB Host Controller Interface (WHCI) driver"
7502c93e790Syuan linyu	depends on USB_PCI && USB && UWB
7517e6133aaSDavid Vrabel	select USB_WUSB
7527e6133aaSDavid Vrabel	select UWB_WHCI
7537e6133aaSDavid Vrabel	help
7547e6133aaSDavid Vrabel	  A driver for PCI-based Wireless USB Host Controllers that are
7557e6133aaSDavid Vrabel	  compliant with the WHCI specification.
7567e6133aaSDavid Vrabel
7577e6133aaSDavid Vrabel	  To compile this driver a module, choose M here: the module
7587e6133aaSDavid Vrabel	  will be called "whci-hcd".
759d09318b8SInaky Perez-Gonzalez
760d09318b8SInaky Perez-Gonzalezconfig USB_HWA_HCD
761eb83be98SGreg Kroah-Hartman	tristate "Host Wire Adapter (HWA) driver"
762cbb67199SThomas Pugliese	depends on USB && UWB
763d09318b8SInaky Perez-Gonzalez	select USB_WUSB
764d09318b8SInaky Perez-Gonzalez	select UWB_HWA
765d09318b8SInaky Perez-Gonzalez	help
766d09318b8SInaky Perez-Gonzalez	  This driver enables you to connect Wireless USB devices to
767d09318b8SInaky Perez-Gonzalez	  your system using a Host Wire Adaptor USB dongle. This is an
768d09318b8SInaky Perez-Gonzalez	  UWB Radio Controller and WUSB Host Controller connected to
769d09318b8SInaky Perez-Gonzalez	  your machine via USB (specified in WUSB1.0).
770d09318b8SInaky Perez-Gonzalez
771d09318b8SInaky Perez-Gonzalez	  To compile this driver a module, choose M here: the module
772d09318b8SInaky Perez-Gonzalez	  will be called "hwa-hc".
77323d3e7a6SMartin Fuzzey
77423d3e7a6SMartin Fuzzeyconfig USB_IMX21_HCD
7755de9ec4dSSascha Hauer       tristate "i.MX21 HCD support"
77625e11ec4SFlorian Fainelli       depends on ARM && ARCH_MXC
77723d3e7a6SMartin Fuzzey       help
77823d3e7a6SMartin Fuzzey         This driver enables support for the on-chip USB host in the
7795de9ec4dSSascha Hauer         i.MX21 processor.
78023d3e7a6SMartin Fuzzey
78123d3e7a6SMartin Fuzzey         To compile this driver as a module, choose M here: the
78223d3e7a6SMartin Fuzzey         module will be called "imx21-hcd".
78323d3e7a6SMartin Fuzzey
78462e11d1bSHauke Mehrtensconfig USB_HCD_BCMA
78562e11d1bSHauke Mehrtens	tristate "BCMA usb host driver"
786eb83be98SGreg Kroah-Hartman	depends on BCMA
78762e11d1bSHauke Mehrtens	select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
78862e11d1bSHauke Mehrtens	select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
78962e11d1bSHauke Mehrtens	help
79071c421dbSJesper Dangaard Brouer	  Enable support for the EHCI and OCHI host controller on an bcma bus.
79162e11d1bSHauke Mehrtens	  It converts the bcma driver into two platform device drivers
79262e11d1bSHauke Mehrtens	  for ehci and ohci.
79362e11d1bSHauke Mehrtens
79462e11d1bSHauke Mehrtens	  If unsure, say N.
7957043c2ccSHauke Mehrtens
7967043c2ccSHauke Mehrtensconfig USB_HCD_SSB
7977043c2ccSHauke Mehrtens	tristate "SSB usb host driver"
798eb83be98SGreg Kroah-Hartman	depends on SSB
7997043c2ccSHauke Mehrtens	select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
8007043c2ccSHauke Mehrtens	select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
8017043c2ccSHauke Mehrtens	help
80271c421dbSJesper Dangaard Brouer	  Enable support for the EHCI and OCHI host controller on an bcma bus.
8037043c2ccSHauke Mehrtens	  It converts the bcma driver into two platform device drivers
8047043c2ccSHauke Mehrtens	  for ehci and ohci.
8057043c2ccSHauke Mehrtens
8067043c2ccSHauke Mehrtens	  If unsure, say N.
807726a85caSJack Pham
808726a85caSJack Phamconfig USB_HCD_TEST_MODE
809726a85caSJack Pham	bool "HCD test mode support"
810726a85caSJack Pham	---help---
811726a85caSJack Pham	  Say 'Y' to enable additional software test modes that may be
812726a85caSJack Pham	  supported by the host controller drivers.
813726a85caSJack Pham
814726a85caSJack Pham	  One such test mode is the Embedded High-speed Host Electrical Test
815726a85caSJack Pham	  (EHSET) for EHCI host controller hardware, specifically the "Single
816726a85caSJack Pham	  Step Set Feature" test.  Typically this will be enabled for On-the-Go
817726a85caSJack Pham	  or embedded hosts that need to undergo USB-IF compliance testing with
818726a85caSJack Pham	  the aid of special testing hardware.  In the future, this may expand
819726a85caSJack Pham	  to include other tests that require support from a HCD driver.
820726a85caSJack Pham
821726a85caSJack Pham	  This option is of interest only to developers who need to validate
822726a85caSJack Pham	  their USB hardware designs.  It is not needed for normal use.  If
823726a85caSJack Pham	  unsure, say N.
824