xref: /linux/drivers/usb/host/Kconfig (revision da2827a298f8a2159f31466759cbba2dd4f1b65f)
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
30dfba2174SLu Baoluconfig USB_XHCI_DBGCAP
31dfba2174SLu Baolu	bool "xHCI support for debug capability"
32dfba2174SLu Baolu	depends on TTY
33dfba2174SLu Baolu	---help---
34dfba2174SLu Baolu	  Say 'Y' to enable the support for the xHCI debug capability. Make
35dfba2174SLu Baolu	  sure that your xHCI host supports the extended debug capability and
36dfba2174SLu Baolu	  you want a TTY serial device based on the xHCI debug capability
37dfba2174SLu Baolu	  before enabling this option. If unsure, say 'N'.
380fcb9989SFlorian Fainelli
3929e409f0SAndrew Brestickerconfig USB_XHCI_PCI
4029e409f0SAndrew Bresticker       tristate
412c93e790Syuan linyu       depends on USB_PCI
4229e409f0SAndrew Bresticker       default y
4329e409f0SAndrew Bresticker
443429e91aSSebastian Andrzej Siewiorconfig USB_XHCI_PLATFORM
456c05cb14SRafał Miłecki	tristate "Generic xHCI driver for a platform device"
46f879fc32SYoshihiro Shimoda	select USB_XHCI_RCAR if ARCH_RENESAS
476c05cb14SRafał Miłecki	---help---
486c05cb14SRafał Miłecki	  Adds an xHCI host driver for a generic platform device, which
496c05cb14SRafał Miłecki	  provides a memory space and an irq.
506c05cb14SRafał Miłecki	  It is also a prerequisite for platform specific drivers that
516c05cb14SRafał Miłecki	  implement some extra quirks.
526c05cb14SRafał Miłecki
536c05cb14SRafał Miłecki	  If unsure, say N.
543429e91aSSebastian Andrzej Siewior
550cbd4b34SChunfeng Yunconfig USB_XHCI_MTK
567b81a586SChunfeng Yun	tristate "xHCI support for MediaTek SoCs"
570cbd4b34SChunfeng Yun	select MFD_SYSCON
58808cf33dSJohn Crispin	depends on (MIPS && SOC_MT7621) || ARCH_MEDIATEK || COMPILE_TEST
590cbd4b34SChunfeng Yun	---help---
600cbd4b34SChunfeng Yun	  Say 'Y' to enable the support for the xHCI host controller
617b81a586SChunfeng Yun	  found in MediaTek SoCs.
620cbd4b34SChunfeng Yun	  If unsure, say N.
630cbd4b34SChunfeng Yun
6497374792SGregory CLEMENTconfig USB_XHCI_MVEBU
6597374792SGregory CLEMENT	tristate "xHCI support for Marvell Armada 375/38x"
6697374792SGregory CLEMENT	select USB_XHCI_PLATFORM
67828638e9SVegard Nossum	depends on HAS_IOMEM
6897374792SGregory CLEMENT	depends on ARCH_MVEBU || COMPILE_TEST
6997374792SGregory CLEMENT	---help---
7097374792SGregory CLEMENT	  Say 'Y' to enable the support for the xHCI host controller
7197374792SGregory CLEMENT	  found in Marvell Armada 375/38x ARM SOCs.
7297374792SGregory CLEMENT
734ac8918fSYoshihiro Shimodaconfig USB_XHCI_RCAR
744ac8918fSYoshihiro Shimoda	tristate "xHCI support for Renesas R-Car SoCs"
75f879fc32SYoshihiro Shimoda	depends on USB_XHCI_PLATFORM
766edd87f5SSimon Horman	depends on ARCH_RENESAS || COMPILE_TEST
774ac8918fSYoshihiro Shimoda	---help---
784ac8918fSYoshihiro Shimoda	  Say 'Y' to enable the support for the xHCI host controller
794ac8918fSYoshihiro Shimoda	  found in Renesas R-Car ARM SoCs.
804ac8918fSYoshihiro Shimoda
81e84fce0fSThierry Redingconfig USB_XHCI_TEGRA
82e84fce0fSThierry Reding	tristate "xHCI support for NVIDIA Tegra SoCs"
83e84fce0fSThierry Reding	depends on PHY_TEGRA_XUSB
84e84fce0fSThierry Reding	depends on RESET_CONTROLLER
85e84fce0fSThierry Reding	select FW_LOADER
86e84fce0fSThierry Reding	---help---
87e84fce0fSThierry Reding	  Say 'Y' to enable the support for the xHCI host controller
88e84fce0fSThierry Reding	  found in NVIDIA Tegra124 and later SoCs.
89e84fce0fSThierry Reding
900fcb9989SFlorian Fainelliendif # USB_XHCI_HCD
910fcb9989SFlorian Fainelli
921da177e4SLinus Torvaldsconfig USB_EHCI_HCD
931da177e4SLinus Torvalds	tristate "EHCI HCD (USB 2.0) support"
94cf34be7aSGeert Uytterhoeven	depends on HAS_DMA && HAS_IOMEM
951da177e4SLinus Torvalds	---help---
961da177e4SLinus Torvalds	  The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0
971da177e4SLinus Torvalds	  "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware.
981da177e4SLinus Torvalds	  If your USB host controller supports USB 2.0, you will likely want to
99b967c88eSThierry Vignaud	  configure this Host Controller Driver.
1001da177e4SLinus Torvalds
1011da177e4SLinus Torvalds	  EHCI controllers are packaged with "companion" host controllers (OHCI
1021da177e4SLinus Torvalds	  or UHCI) to handle USB 1.1 devices connected to root hub ports.  Ports
103b3c29d85SJesper Juhl	  will connect to EHCI if the device is high speed, otherwise they
1041da177e4SLinus Torvalds	  connect to a companion controller.  If you configure EHCI, you should
1051da177e4SLinus Torvalds	  probably configure the OHCI (for NEC and some other vendors) USB Host
1061da177e4SLinus Torvalds	  Controller Driver or UHCI (for Via motherboards) Host Controller
1071da177e4SLinus Torvalds	  Driver too.
1081da177e4SLinus Torvalds
1091da177e4SLinus Torvalds	  You may want to read <file:Documentation/usb/ehci.txt>.
1101da177e4SLinus Torvalds
1111da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1121da177e4SLinus Torvalds	  module will be called ehci-hcd.
1131da177e4SLinus Torvalds
1141da177e4SLinus Torvaldsconfig USB_EHCI_ROOT_HUB_TT
1159ec249a6SRobert P. J. Day	bool "Root Hub Transaction Translators"
116a746c286SPeter Chen	depends on USB_EHCI_HCD
1171da177e4SLinus Torvalds	---help---
1181da177e4SLinus Torvalds	  Some EHCI chips have vendor-specific extensions to integrate
1191da177e4SLinus Torvalds	  transaction translators, so that no OHCI or UHCI companion
1201da177e4SLinus Torvalds	  controller is needed.  It's safe to say "y" even if your
1211da177e4SLinus Torvalds	  controller doesn't support this feature.
1221da177e4SLinus Torvalds
123ba47f66bSDan Streetman	  This supports the EHCI implementation that's originally
124ba47f66bSDan Streetman	  from ARC, and has since changed hands a few times.
125ba47f66bSDan Streetman
126ba47f66bSDan Streetmanconfig USB_EHCI_TT_NEWSCHED
12737cd681cSAlan Stern	bool "Improved Transaction Translator scheduling"
128a746c286SPeter Chen	depends on USB_EHCI_HCD
12937cd681cSAlan Stern	default y
130ba47f66bSDan Streetman	---help---
131ba47f66bSDan Streetman	  This changes the periodic scheduling code to fill more of the low
132ba47f66bSDan Streetman	  and full speed bandwidth available from the Transaction Translator
133ba47f66bSDan Streetman	  (TT) in USB 2.0 hubs.  Without this, only one transfer will be
134ba47f66bSDan Streetman	  issued in each microframe, significantly reducing the number of
135ba47f66bSDan Streetman	  periodic low/fullspeed transfers possible.
136ba47f66bSDan Streetman
137ba47f66bSDan Streetman	  If you have multiple periodic low/fullspeed devices connected to a
138ba47f66bSDan Streetman	  highspeed USB hub which is connected to a highspeed USB Host
139ba47f66bSDan Streetman	  Controller, and some of those devices will not work correctly
14037cd681cSAlan Stern	  (possibly due to "ENOSPC" or "-28" errors), say Y.  Conversely, if
14137cd681cSAlan Stern	  you have only one such device and it doesn't work, you could try
14237cd681cSAlan Stern	  saying N.
143ba47f66bSDan Streetman
14437cd681cSAlan Stern	  If unsure, say Y.
1451da177e4SLinus Torvalds
14642443dc4SFlorian Fainelliif USB_EHCI_HCD
14742443dc4SFlorian Fainelli
148adfa79d1SAlan Sternconfig USB_EHCI_PCI
149adfa79d1SAlan Stern	tristate
1502c93e790Syuan linyu	depends on USB_PCI
151adfa79d1SAlan Stern	default y
152adfa79d1SAlan Stern
15322ced687SAnoopconfig USB_EHCI_HCD_PMC_MSP
15422ced687SAnoop	tristate "EHCI support for on-chip PMC MSP71xx USB controller"
15542443dc4SFlorian Fainelli	depends on MSP_HAS_USB
15622ced687SAnoop	default n
15722ced687SAnoop	select USB_EHCI_BIG_ENDIAN_DESC
15822ced687SAnoop	select USB_EHCI_BIG_ENDIAN_MMIO
15922ced687SAnoop	---help---
16022ced687SAnoop		Enables support for the onchip USB controller on the PMC_MSP7100 Family SoC's.
16122ced687SAnoop		If unsure, say N.
16222ced687SAnoop
16308d3c18eSJulie Zhuconfig XPS_USB_HCD_XILINX
16408d3c18eSJulie Zhu	bool "Use Xilinx usb host EHCI controller core"
16542443dc4SFlorian Fainelli	depends on (PPC32 || MICROBLAZE)
16608d3c18eSJulie Zhu	select USB_EHCI_BIG_ENDIAN_DESC
16708d3c18eSJulie Zhu	select USB_EHCI_BIG_ENDIAN_MMIO
16808d3c18eSJulie Zhu	---help---
169f54619f2SMasanari Iida		Xilinx xps USB host controller core is EHCI compliant and has
17008d3c18eSJulie Zhu		transaction translator built-in. It can be configured to either
17108d3c18eSJulie Zhu		support both high speed and full speed devices, or high speed
17208d3c18eSJulie Zhu		devices only.
17308d3c18eSJulie Zhu
174ba02978aSLi Yangconfig USB_EHCI_FSL
175ca07e1c1SRamneek Mehresh	tristate "Support for Freescale PPC on-chip EHCI USB controller"
17642443dc4SFlorian Fainelli	depends on FSL_SOC
177ba02978aSLi Yang	select USB_EHCI_ROOT_HUB_TT
178ba02978aSLi Yang	---help---
179ba02978aSLi Yang	  Variation of ARC USB block used in some Freescale chips.
180ba02978aSLi Yang
1817e8d5cd9SDaniel Mackconfig USB_EHCI_MXC
182dba63b2fSAlan Stern	tristate "Support for Freescale i.MX on-chip EHCI USB controller"
18342443dc4SFlorian Fainelli	depends on ARCH_MXC
1847e8d5cd9SDaniel Mack	select USB_EHCI_ROOT_HUB_TT
1857e8d5cd9SDaniel Mack	---help---
1867e8d5cd9SDaniel Mack	  Variation of ARC USB block used in some Freescale chips.
1877e8d5cd9SDaniel Mack
1887f124f4bSKeshava Munegowdaconfig USB_EHCI_HCD_OMAP
18954a41966SAlan Stern	tristate "EHCI support for OMAP3 and later chips"
19042443dc4SFlorian Fainelli	depends on ARCH_OMAP
1915a8d651aSFelipe Balbi	depends on NOP_USB_XCEIV
1927f124f4bSKeshava Munegowda	default y
1937f124f4bSKeshava Munegowda	---help---
1947f124f4bSKeshava Munegowda	  Enables support for the on-chip EHCI controller on
1957f124f4bSKeshava Munegowda	  OMAP3 and later chips.
1967f124f4bSKeshava Munegowda
197a76dd463SManjunath Goudarconfig USB_EHCI_HCD_ORION
198a76dd463SManjunath Goudar	tristate  "Support for Marvell EBU on-chip EHCI USB controller"
199ccc0d385SGregory CLEMENT	depends on USB_EHCI_HCD && (PLAT_ORION || ARCH_MVEBU)
200a76dd463SManjunath Goudar	default y
201a76dd463SManjunath Goudar	---help---
202a76dd463SManjunath Goudar	  Enables support for the on-chip EHCI controller on Marvell's
203a76dd463SManjunath Goudar	  embedded ARM SoCs, including Orion, Kirkwood, Dove, Armada XP,
204a76dd463SManjunath Goudar	  Armada 370.  This is different from the EHCI implementation
205a76dd463SManjunath Goudar	  on Marvell's mobile PXA and MMP SoC, see "EHCI support for
206a76dd463SManjunath Goudar	  Marvell PXA/MMP USB controller" for those.
207a76dd463SManjunath Goudar
2087675d6baSManjunath Goudarconfig USB_EHCI_HCD_SPEAR
2097675d6baSManjunath Goudar        tristate "Support for ST SPEAr on-chip EHCI USB controller"
2107675d6baSManjunath Goudar        depends on USB_EHCI_HCD && PLAT_SPEAR
2117675d6baSManjunath Goudar        default y
2127675d6baSManjunath Goudar        ---help---
2137675d6baSManjunath Goudar          Enables support for the on-chip EHCI controller on
2147675d6baSManjunath Goudar          ST SPEAr chips.
2157675d6baSManjunath Goudar
216905e300eSArnd Bergmannconfig USB_EHCI_HCD_STI
217905e300eSArnd Bergmann	tristate "Support for ST STiHxxx on-chip EHCI USB controller"
218905e300eSArnd Bergmann	depends on ARCH_STI && OF
219905e300eSArnd Bergmann	select GENERIC_PHY
220905e300eSArnd Bergmann	select USB_EHCI_HCD_PLATFORM
221905e300eSArnd Bergmann	help
222905e300eSArnd Bergmann	  Enable support for the on-chip EHCI controller found on
223905e300eSArnd Bergmann	  STMicroelectronics consumer electronics SoC's.
224905e300eSArnd Bergmann
22597736961SManjunath Goudarconfig USB_EHCI_HCD_AT91
22697736961SManjunath Goudar        tristate  "Support for Atmel on-chip EHCI USB controller"
22797736961SManjunath Goudar        depends on USB_EHCI_HCD && ARCH_AT91
22897736961SManjunath Goudar        default y
22997736961SManjunath Goudar        ---help---
23097736961SManjunath Goudar          Enables support for the on-chip EHCI controller on
23197736961SManjunath Goudar          Atmel chips.
23297736961SManjunath Goudar
23379ad3b5aSBenoit Gobyconfig USB_EHCI_TEGRA
2349fc5f24eSManjunath Goudar       tristate "NVIDIA Tegra HCD support"
23542443dc4SFlorian Fainelli       depends on ARCH_TEGRA
23679ad3b5aSBenoit Goby       select USB_EHCI_ROOT_HUB_TT
23775f32ec1SFelipe Balbi       select USB_PHY
238a262e87fSArnd Bergmann	select USB_ULPI
239a262e87fSArnd Bergmann	select USB_ULPI_VIEWPORT
24079ad3b5aSBenoit Goby       help
24179ad3b5aSBenoit Goby         This driver enables support for the internal USB Host Controllers
24279ad3b5aSBenoit Goby         found in NVIDIA Tegra SoCs. The controllers are EHCI compliant.
24379ad3b5aSBenoit Goby
244da0e8fb0SValentine Barshakconfig USB_EHCI_HCD_PPC_OF
245da0e8fb0SValentine Barshak	bool "EHCI support for PPC USB controller on OF platform bus"
246c31316cbSKevin Hao	depends on PPC
247da0e8fb0SValentine Barshak	default y
248da0e8fb0SValentine Barshak	---help---
249da0e8fb0SValentine Barshak	  Enables support for the USB controller present on the PowerPC
250da0e8fb0SValentine Barshak	  OpenFirmware platform bus.
251da0e8fb0SValentine Barshak
25260b0bf0fSYoshihiro Shimodaconfig USB_EHCI_SH
25360b0bf0fSYoshihiro Shimoda	bool "EHCI support for SuperH USB controller"
25442443dc4SFlorian Fainelli	depends on SUPERH
25560b0bf0fSYoshihiro Shimoda	---help---
25660b0bf0fSYoshihiro Shimoda	  Enables support for the on-chip EHCI controller on the SuperH.
25760b0bf0fSYoshihiro Shimoda	  If you use the PCI EHCI controller, this option is not necessary.
25860b0bf0fSYoshihiro Shimoda
25929824c16SJingoo Hanconfig USB_EHCI_EXYNOS
2607edb3dafSManjunath Goudar       tristate "EHCI support for Samsung S5P/EXYNOS SoC Series"
261cd6e245aSSylwester Nawrocki       depends on ARCH_S5PV210 || ARCH_EXYNOS
2621bcc5aa8SJoonyoung Shim       help
26329824c16SJingoo Han	Enable support for the Samsung Exynos SOC's on-chip EHCI controller.
2641bcc5aa8SJoonyoung Shim
2653a082ec9SNeil Zhangconfig USB_EHCI_MV
266a76dd463SManjunath Goudar	bool "EHCI support for Marvell PXA/MMP USB controller"
26742443dc4SFlorian Fainelli	depends on (ARCH_PXA || ARCH_MMP)
2683a082ec9SNeil Zhang	select USB_EHCI_ROOT_HUB_TT
2693a082ec9SNeil Zhang	---help---
2703a082ec9SNeil Zhang	  Enables support for Marvell (including PXA and MMP series) on-chip
2713a082ec9SNeil Zhang	  USB SPH and OTG controller. SPH is a single port host, and it can
2723a082ec9SNeil Zhang	  only be EHCI host. OTG is controller that can switch to host mode.
273a76dd463SManjunath Goudar	  Note that this driver will not work on Marvell's other EHCI
274a76dd463SManjunath Goudar	  controller used by the EBU-type SoCs including Orion, Kirkwood,
275a76dd463SManjunath Goudar	  Dova, Armada 370 and Armada XP. See "Support for Marvell EBU
276a76dd463SManjunath Goudar	  on-chip EHCI USB controller" for those.
2773a082ec9SNeil Zhang
278586dfc8cSWan ZongShunconfig USB_W90X900_EHCI
279a60f4f81SManjunath Goudar	tristate "W90X900(W90P910) EHCI support"
28042443dc4SFlorian Fainelli	depends on ARCH_W90X900
281586dfc8cSWan ZongShun	---help---
282586dfc8cSWan ZongShun		Enables support for the W90X900 USB controller
283586dfc8cSWan ZongShun
284760efe69SMac Linconfig USB_CNS3XXX_EHCI
285f3a958d3SFlorian Fainelli	bool "Cavium CNS3XXX EHCI Module (DEPRECATED)"
28642443dc4SFlorian Fainelli	depends on ARCH_CNS3XXX
287f3a958d3SFlorian Fainelli	select USB_EHCI_HCD_PLATFORM
288760efe69SMac Lin	---help---
289f3a958d3SFlorian Fainelli	  This option is deprecated now and the driver was removed, use
290f3a958d3SFlorian Fainelli	  USB_EHCI_HCD_PLATFORM instead.
291f3a958d3SFlorian Fainelli
292760efe69SMac Lin	  Enable support for the CNS3XXX SOC's on-chip EHCI controller.
293760efe69SMac Lin	  It is needed for high-speed (480Mbit/sec) USB 2.0 device
294760efe69SMac Lin	  support.
295760efe69SMac Lin
296502fa841SGabor Juhosconfig USB_EHCI_ATH79
2975d98cd4eSHauke Mehrtens	bool "EHCI support for AR7XXX/AR9XXX SoCs (DEPRECATED)"
29842443dc4SFlorian Fainelli	depends on (SOC_AR71XX || SOC_AR724X || SOC_AR913X || SOC_AR933X)
299502fa841SGabor Juhos	select USB_EHCI_ROOT_HUB_TT
3005d98cd4eSHauke Mehrtens	select USB_EHCI_HCD_PLATFORM
301502fa841SGabor Juhos	default y
302502fa841SGabor Juhos	---help---
3035d98cd4eSHauke Mehrtens	  This option is deprecated now and the driver was removed, use
3045d98cd4eSHauke Mehrtens	  USB_EHCI_HCD_PLATFORM instead.
3055d98cd4eSHauke Mehrtens
306502fa841SGabor Juhos	  Enables support for the built-in EHCI controller present
307502fa841SGabor Juhos	  on the Atheros AR7XXX/AR9XXX SoCs.
308502fa841SGabor Juhos
30942443dc4SFlorian Fainelliconfig USB_EHCI_HCD_PLATFORM
31042443dc4SFlorian Fainelli	tristate "Generic EHCI driver for a platform device"
31142443dc4SFlorian Fainelli	default n
31242443dc4SFlorian Fainelli	---help---
31342443dc4SFlorian Fainelli	  Adds an EHCI host driver for a generic platform device, which
31442443dc4SFlorian Fainelli	  provides a memory space and an irq.
31542443dc4SFlorian Fainelli
31642443dc4SFlorian Fainelli	  If unsure, say N.
31742443dc4SFlorian Fainelli
31842443dc4SFlorian Fainelliconfig USB_OCTEON_EHCI
3192193dda5SAlan Stern	bool "Octeon on-chip EHCI support (DEPRECATED)"
3209ddebc46SDavid Daney	depends on CAVIUM_OCTEON_SOC
32142443dc4SFlorian Fainelli	default n
322df115f3eSBen Hutchings	select USB_EHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
3232193dda5SAlan Stern	select USB_EHCI_HCD_PLATFORM
32442443dc4SFlorian Fainelli	help
3252193dda5SAlan Stern	  This option is deprecated now and the driver was removed, use
3262193dda5SAlan Stern	  USB_EHCI_HCD_PLATFORM instead.
3272193dda5SAlan Stern
32842443dc4SFlorian Fainelli	  Enable support for the Octeon II SOC's on-chip EHCI
32942443dc4SFlorian Fainelli	  controller.  It is needed for high-speed (480Mbit/sec)
33042443dc4SFlorian Fainelli	  USB 2.0 device support.  All CN6XXX based chips with USB are
33142443dc4SFlorian Fainelli	  supported.
33242443dc4SFlorian Fainelli
33342443dc4SFlorian Fainelliendif # USB_EHCI_HCD
33442443dc4SFlorian Fainelli
335b92a78e5SRodolfo Giometticonfig USB_OXU210HP_HCD
336b92a78e5SRodolfo Giometti	tristate "OXU210HP HCD support"
337f4a5d702SVegard Nossum	depends on HAS_IOMEM
338b92a78e5SRodolfo Giometti	---help---
339b92a78e5SRodolfo Giometti	  The OXU210HP is an USB host/OTG/device controller. Enable this
340b92a78e5SRodolfo Giometti	  option if your board has this chip. If unsure, say N.
341b92a78e5SRodolfo Giometti
342b92a78e5SRodolfo Giometti	  This driver does not support isochronous transfers and doesn't
343b92a78e5SRodolfo Giometti	  implement OTG nor USB device controllers.
344b92a78e5SRodolfo Giometti
345b92a78e5SRodolfo Giometti	  To compile this driver as a module, choose M here: the
346b92a78e5SRodolfo Giometti	  module will be called oxu210hp-hcd.
347b92a78e5SRodolfo Giometti
3484808a1c0SOlav Kongasconfig USB_ISP116X_HCD
3494808a1c0SOlav Kongas	tristate "ISP116X HCD support"
350ca23d3b7SVegard Nossum	depends on HAS_IOMEM
3514808a1c0SOlav Kongas	---help---
3524808a1c0SOlav Kongas	  The ISP1160 and ISP1161 chips are USB host controllers. Enable this
3534808a1c0SOlav Kongas	  option if your board has this chip. If unsure, say N.
3544808a1c0SOlav Kongas
3554808a1c0SOlav Kongas	  This driver does not support isochronous transfers.
3564808a1c0SOlav Kongas
3574808a1c0SOlav Kongas	  To compile this driver as a module, choose M here: the
3584808a1c0SOlav Kongas	  module will be called isp116x-hcd.
3594808a1c0SOlav Kongas
360a9d43091SLothar Wassmannconfig USB_ISP1362_HCD
361a9d43091SLothar Wassmann	tristate "ISP1362 HCD support"
3624a6d9f87SVegard Nossum	depends on HAS_IOMEM
363*da2827a2SArnd Bergmann	depends on COMPILE_TEST # nothing uses this
364a9d43091SLothar Wassmann	---help---
365a9d43091SLothar Wassmann	  Supports the Philips ISP1362 chip as a host controller
366a9d43091SLothar Wassmann
367a9d43091SLothar Wassmann	  This driver does not support isochronous transfers.
368a9d43091SLothar Wassmann
369a9d43091SLothar Wassmann	  To compile this driver as a module, choose M here: the
370a9d43091SLothar Wassmann	  module will be called isp1362-hcd.
371a9d43091SLothar Wassmann
3727d50195fSFeng-Hsin Chiangconfig USB_FOTG210_HCD
3737d50195fSFeng-Hsin Chiang	tristate "FOTG210 HCD support"
374cf34be7aSGeert Uytterhoeven	depends on USB && HAS_DMA && HAS_IOMEM
3757d50195fSFeng-Hsin Chiang	---help---
3767d50195fSFeng-Hsin Chiang	  Faraday FOTG210 is an OTG controller which can be configured as
3777d50195fSFeng-Hsin Chiang	  an USB2.0 host. It is designed to meet USB2.0 EHCI specification
3787d50195fSFeng-Hsin Chiang	  with minor modification.
3797d50195fSFeng-Hsin Chiang
3807d50195fSFeng-Hsin Chiang	  To compile this driver as a module, choose M here: the
3817d50195fSFeng-Hsin Chiang	  module will be called fotg210-hcd.
3827d50195fSFeng-Hsin Chiang
3832d53139fSDavid Mosbergerconfig USB_MAX3421_HCD
3842d53139fSDavid Mosberger	tristate "MAX3421 HCD (USB-over-SPI) support"
3852d53139fSDavid Mosberger	depends on USB && SPI
3862d53139fSDavid Mosberger	---help---
3872d53139fSDavid Mosberger	  The Maxim MAX3421E chip supports standard USB 2.0-compliant
3882d53139fSDavid Mosberger	  full-speed devices either in host or peripheral mode.  This
3892d53139fSDavid Mosberger	  driver supports the host-mode of the MAX3421E only.
3902d53139fSDavid Mosberger
3912d53139fSDavid Mosberger	  To compile this driver as a module, choose M here: the module will
3922d53139fSDavid Mosberger	  be called max3421-hcd.
3932d53139fSDavid Mosberger
3941da177e4SLinus Torvaldsconfig USB_OHCI_HCD
395c1117afbSManjunath Goudar	tristate "OHCI HCD (USB 1.1) support"
396cf34be7aSGeert Uytterhoeven	depends on HAS_DMA && HAS_IOMEM
3971da177e4SLinus Torvalds	---help---
3981da177e4SLinus Torvalds	  The Open Host Controller Interface (OHCI) is a standard for accessing
3991da177e4SLinus Torvalds	  USB 1.1 host controller hardware.  It does more in hardware than Intel's
4001da177e4SLinus Torvalds	  UHCI specification.  If your USB host controller follows the OHCI spec,
4011da177e4SLinus Torvalds	  say Y.  On most non-x86 systems, and on x86 hardware that's not using a
4021da177e4SLinus Torvalds	  USB controller from Intel or VIA, this is appropriate.  If your host
4031da177e4SLinus Torvalds	  controller doesn't use PCI, this is probably appropriate.  For a PCI
4041da177e4SLinus Torvalds	  based system where you're not sure, the "lspci -v" entry will list the
4051da177e4SLinus Torvalds	  right "prog-if" for your USB controller(s):  EHCI, OHCI, or UHCI.
4061da177e4SLinus Torvalds
4071da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
4081da177e4SLinus Torvalds	  module will be called ohci-hcd.
4091da177e4SLinus Torvalds
4103ad3ca05SFlorian Fainelliif USB_OHCI_HCD
4113ad3ca05SFlorian Fainelli
412968b448bSAnand Gadiyarconfig USB_OHCI_HCD_OMAP1
413de57a154SManjunath Goudar	tristate "OHCI support for OMAP1/2 chips"
4143ad3ca05SFlorian Fainelli	depends on ARCH_OMAP1
41538e0c109SArnd Bergmann	depends on ISP1301_OMAP || !(MACH_OMAP_H2 || MACH_OMAP_H3)
416968b448bSAnand Gadiyar	default y
417968b448bSAnand Gadiyar	---help---
418968b448bSAnand Gadiyar	  Enables support for the OHCI controller on OMAP1/2 chips.
419968b448bSAnand Gadiyar
4201cc6ac59SManjunath Goudarconfig USB_OHCI_HCD_SPEAR
4211cc6ac59SManjunath Goudar        tristate "Support for ST SPEAr on-chip OHCI USB controller"
4221cc6ac59SManjunath Goudar        depends on USB_OHCI_HCD && PLAT_SPEAR
4231cc6ac59SManjunath Goudar        default y
4241cc6ac59SManjunath Goudar        ---help---
4251cc6ac59SManjunath Goudar          Enables support for the on-chip OHCI controller on
4261cc6ac59SManjunath Goudar          ST SPEAr chips.
4271cc6ac59SManjunath Goudar
428905e300eSArnd Bergmannconfig USB_OHCI_HCD_STI
429905e300eSArnd Bergmann	tristate "Support for ST STiHxxx on-chip OHCI USB controller"
430905e300eSArnd Bergmann	depends on ARCH_STI && OF
431905e300eSArnd Bergmann	select GENERIC_PHY
432905e300eSArnd Bergmann	select USB_OHCI_HCD_PLATFORM
433905e300eSArnd Bergmann	help
434905e300eSArnd Bergmann	  Enable support for the on-chip OHCI controller found on
435905e300eSArnd Bergmann	  STMicroelectronics consumer electronics SoC's.
436905e300eSArnd Bergmann
437f23b71f3SManjunath Goudarconfig USB_OHCI_HCD_S3C2410
438f23b71f3SManjunath Goudar        tristate "OHCI support for Samsung S3C24xx/S3C64xx SoC series"
439f23b71f3SManjunath Goudar        depends on USB_OHCI_HCD && (ARCH_S3C24XX || ARCH_S3C64XX)
440f23b71f3SManjunath Goudar        default y
441f23b71f3SManjunath Goudar        ---help---
442f23b71f3SManjunath Goudar          Enables support for the on-chip OHCI controller on
443f23b71f3SManjunath Goudar          S3C24xx/S3C64xx chips.
444f23b71f3SManjunath Goudar
44530330b8fSManjunath Goudarconfig USB_OHCI_HCD_LPC32XX
44630330b8fSManjunath Goudar	tristate "Support for LPC on-chip OHCI USB controller"
44730330b8fSManjunath Goudar	depends on USB_OHCI_HCD && ARCH_LPC32XX
44838e0c109SArnd Bergmann	depends on USB_ISP1301
44930330b8fSManjunath Goudar	default y
45030330b8fSManjunath Goudar	---help---
45130330b8fSManjunath Goudar          Enables support for the on-chip OHCI controller on
45230330b8fSManjunath Goudar          NXP chips.
45330330b8fSManjunath Goudar
454b8ad5c37SManjunath Goudarconfig USB_OHCI_HCD_PXA27X
455b8ad5c37SManjunath Goudar	tristate "Support for PXA27X/PXA3XX on-chip OHCI USB controller"
456b8ad5c37SManjunath Goudar	depends on USB_OHCI_HCD && (PXA27x || PXA3xx)
457b8ad5c37SManjunath Goudar	default y
458b8ad5c37SManjunath Goudar	---help---
459b8ad5c37SManjunath Goudar	  Enables support for the on-chip OHCI controller on
460b8ad5c37SManjunath Goudar	  PXA27x/PXA3xx chips.
461b8ad5c37SManjunath Goudar
462e3825b48SManjunath Goudarconfig USB_OHCI_HCD_AT91
463e3825b48SManjunath Goudar	tristate "Support for Atmel on-chip OHCI USB controller"
464be12be54SAlexandre Belloni	depends on USB_OHCI_HCD && ARCH_AT91 && OF
465e3825b48SManjunath Goudar	default y
466e3825b48SManjunath Goudar	---help---
467e3825b48SManjunath Goudar          Enables support for the on-chip OHCI controller on
468e3825b48SManjunath Goudar          Atmel chips.
469e3825b48SManjunath Goudar
470968b448bSAnand Gadiyarconfig USB_OHCI_HCD_OMAP3
4713a48fef1SManjunath Goudar	tristate "OHCI support for OMAP3 and later chips"
47254a2ec67STony Lindgren	depends on (ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5)
473ef189c8dSTony Lindgren	select USB_OHCI_HCD_PLATFORM
474968b448bSAnand Gadiyar	default y
475ef189c8dSTony Lindgren	help
476ef189c8dSTony Lindgren	  This option is deprecated now and the driver was removed, use
477ef189c8dSTony Lindgren	  USB_OHCI_HCD_PLATFORM instead.
478ef189c8dSTony Lindgren
479968b448bSAnand Gadiyar	  Enables support for the on-chip OHCI controller on
480968b448bSAnand Gadiyar	  OMAP3 and later chips.
481968b448bSAnand Gadiyar
482068413e9SArnd Bergmannconfig USB_OHCI_HCD_DAVINCI
4836c21caa3SManjunath Goudar	tristate "OHCI support for TI DaVinci DA8xx"
484068413e9SArnd Bergmann	depends on ARCH_DAVINCI_DA8XX
4856c21caa3SManjunath Goudar	depends on USB_OHCI_HCD
4866110c425SDavid Lechner	select PHY_DA8XX_USB
487068413e9SArnd Bergmann	default y
488068413e9SArnd Bergmann	help
489068413e9SArnd Bergmann	  Enables support for the DaVinci DA8xx integrated OHCI
490068413e9SArnd Bergmann	  controller. This driver cannot currently be a loadable
491068413e9SArnd Bergmann	  module because it lacks a proper PHY abstraction.
492068413e9SArnd Bergmann
49390e6ca5cSGabor Juhosconfig USB_OHCI_ATH79
4945d98cd4eSHauke Mehrtens	bool "USB OHCI support for the Atheros AR71XX/AR7240 SoCs (DEPRECATED)"
4953ad3ca05SFlorian Fainelli	depends on (SOC_AR71XX || SOC_AR724X)
4965d98cd4eSHauke Mehrtens	select USB_OHCI_HCD_PLATFORM
49790e6ca5cSGabor Juhos	default y
49890e6ca5cSGabor Juhos	help
4995d98cd4eSHauke Mehrtens	  This option is deprecated now and the driver was removed, use
5005d98cd4eSHauke Mehrtens	  USB_OHCI_HCD_PLATFORM instead.
5015d98cd4eSHauke Mehrtens
50290e6ca5cSGabor Juhos	  Enables support for the built-in OHCI controller present on the
50390e6ca5cSGabor Juhos	  Atheros AR71XX/AR7240 SoCs.
50490e6ca5cSGabor Juhos
505495a678fSSylvain Munautconfig USB_OHCI_HCD_PPC_OF_BE
50645e83889SArnd Bergmann	bool "OHCI support for OF platform bus (big endian)"
507c31316cbSKevin Hao	depends on PPC
508495a678fSSylvain Munaut	select USB_OHCI_BIG_ENDIAN_DESC
509495a678fSSylvain Munaut	select USB_OHCI_BIG_ENDIAN_MMIO
51045e83889SArnd Bergmann	---help---
51145e83889SArnd Bergmann	  Enables support for big-endian USB controllers present on the
51245e83889SArnd Bergmann	  OpenFirmware platform bus.
513495a678fSSylvain Munaut
514495a678fSSylvain Munautconfig USB_OHCI_HCD_PPC_OF_LE
51545e83889SArnd Bergmann	bool "OHCI support for OF platform bus (little endian)"
516c31316cbSKevin Hao	depends on PPC
517495a678fSSylvain Munaut	select USB_OHCI_LITTLE_ENDIAN
51845e83889SArnd Bergmann	---help---
51945e83889SArnd Bergmann	  Enables support for little-endian USB controllers present on the
52045e83889SArnd Bergmann	  OpenFirmware platform bus.
52145e83889SArnd Bergmann
52245e83889SArnd Bergmannconfig USB_OHCI_HCD_PPC_OF
52345e83889SArnd Bergmann	bool
524c31316cbSKevin Hao	depends on PPC
52545e83889SArnd Bergmann	default USB_OHCI_HCD_PPC_OF_BE || USB_OHCI_HCD_PPC_OF_LE
526495a678fSSylvain Munaut
5271da177e4SLinus Torvaldsconfig USB_OHCI_HCD_PCI
528c1117afbSManjunath Goudar	tristate "OHCI support for PCI-bus USB controllers"
5292c93e790Syuan linyu	depends on USB_PCI
5301da177e4SLinus Torvalds	default y
5311da177e4SLinus Torvalds	select USB_OHCI_LITTLE_ENDIAN
5321da177e4SLinus Torvalds	---help---
5331da177e4SLinus Torvalds	  Enables support for PCI-bus plug-in USB controller cards.
5341da177e4SLinus Torvalds	  If unsure, say Y.
5351da177e4SLinus Torvalds
536c604e851SMichael Bueschconfig USB_OHCI_HCD_SSB
537259b83a3SHauke Mehrtens	bool "OHCI support for Broadcom SSB OHCI core (DEPRECATED)"
5383ad3ca05SFlorian Fainelli	depends on (SSB = y || SSB = USB_OHCI_HCD)
539259b83a3SHauke Mehrtens	select USB_HCD_SSB
540259b83a3SHauke Mehrtens	select USB_OHCI_HCD_PLATFORM
541c604e851SMichael Buesch	default n
542c604e851SMichael Buesch	---help---
543259b83a3SHauke Mehrtens	  This option is deprecated now and the driver was removed, use
544259b83a3SHauke Mehrtens	  USB_HCD_SSB and USB_OHCI_HCD_PLATFORM instead.
545259b83a3SHauke Mehrtens
546c604e851SMichael Buesch	  Support for the Sonics Silicon Backplane (SSB) attached
547c604e851SMichael Buesch	  Broadcom USB OHCI core.
548c604e851SMichael Buesch
549c604e851SMichael Buesch	  This device is present in some embedded devices with
550c604e851SMichael Buesch	  Broadcom based SSB bus.
551c604e851SMichael Buesch
552c604e851SMichael Buesch	  If unsure, say N.
553c604e851SMichael Buesch
55460b0bf0fSYoshihiro Shimodaconfig USB_OHCI_SH
555231a72e0SFlorian Fainelli	bool "OHCI support for SuperH USB controller (DEPRECATED)"
5563ad3ca05SFlorian Fainelli	depends on SUPERH
557231a72e0SFlorian Fainelli	select USB_OHCI_HCD_PLATFORM
55860b0bf0fSYoshihiro Shimoda	---help---
559231a72e0SFlorian Fainelli	  This option is deprecated now and the driver was removed, use
560231a72e0SFlorian Fainelli	  USB_OHCI_HCD_PLATFORM instead.
561231a72e0SFlorian Fainelli
56260b0bf0fSYoshihiro Shimoda	  Enables support for the on-chip OHCI controller on the SuperH.
56360b0bf0fSYoshihiro Shimoda	  If you use the PCI OHCI controller, this option is not necessary.
56460b0bf0fSYoshihiro Shimoda
56562194244SJingoo Hanconfig USB_OHCI_EXYNOS
56650a97e05SManjunath Goudar	tristate "OHCI support for Samsung S5P/EXYNOS SoC Series"
567cd6e245aSSylwester Nawrocki	depends on ARCH_S5PV210 || ARCH_EXYNOS
56862194244SJingoo Han	help
56962194244SJingoo Han	 Enable support for the Samsung Exynos SOC's on-chip OHCI controller.
57062194244SJingoo Han
571760efe69SMac Linconfig USB_CNS3XXX_OHCI
572c23920b0SFlorian Fainelli	bool "Cavium CNS3XXX OHCI Module (DEPRECATED)"
5733ad3ca05SFlorian Fainelli	depends on ARCH_CNS3XXX
574c23920b0SFlorian Fainelli	select USB_OHCI_HCD_PLATFORM
575760efe69SMac Lin	---help---
576c23920b0SFlorian Fainelli	  This option is deprecated now and the driver was removed, use
577c23920b0SFlorian Fainelli	  USB_OHCI_HCD_PLATFORM instead.
578c23920b0SFlorian Fainelli
579760efe69SMac Lin	  Enable support for the CNS3XXX SOC's on-chip OHCI controller.
580760efe69SMac Lin	  It is needed for low-speed USB 1.0 device support.
581760efe69SMac Lin
582fa3364b5SHauke Mehrtensconfig USB_OHCI_HCD_PLATFORM
583928fb68eSManjunath Goudar	tristate "Generic OHCI driver for a platform device"
584fa3364b5SHauke Mehrtens	default n
585fa3364b5SHauke Mehrtens	---help---
586fa3364b5SHauke Mehrtens	  Adds an OHCI host driver for a generic platform device, which
587898d828bSPeter Meerwald	  provides a memory space and an irq.
588fa3364b5SHauke Mehrtens
589fa3364b5SHauke Mehrtens	  If unsure, say N.
590fa3364b5SHauke Mehrtens
5913ad3ca05SFlorian Fainelliconfig USB_OCTEON_OHCI
5922193dda5SAlan Stern	bool "Octeon on-chip OHCI support (DEPRECATED)"
5939ddebc46SDavid Daney	depends on CAVIUM_OCTEON_SOC
5943ad3ca05SFlorian Fainelli	default USB_OCTEON_EHCI
595df115f3eSBen Hutchings	select USB_OHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
5963ad3ca05SFlorian Fainelli	select USB_OHCI_LITTLE_ENDIAN
5972193dda5SAlan Stern	select USB_OHCI_HCD_PLATFORM
5983ad3ca05SFlorian Fainelli	help
5992193dda5SAlan Stern	  This option is deprecated now and the driver was removed, use
6002193dda5SAlan Stern	  USB_OHCI_HCD_PLATFORM instead.
6012193dda5SAlan Stern
6023ad3ca05SFlorian Fainelli	  Enable support for the Octeon II SOC's on-chip OHCI
6033ad3ca05SFlorian Fainelli	  controller.  It is needed for low-speed USB 1.0 device
6043ad3ca05SFlorian Fainelli	  support.  All CN6XXX based chips with USB are supported.
6053ad3ca05SFlorian Fainelli
6063ad3ca05SFlorian Fainelliendif # USB_OHCI_HCD
6073ad3ca05SFlorian Fainelli
6081da177e4SLinus Torvaldsconfig USB_UHCI_HCD
6091da177e4SLinus Torvalds	tristate "UHCI HCD (most Intel and VIA) support"
6102c93e790Syuan linyu	depends on USB_PCI || USB_UHCI_SUPPORT_NON_PCI_HC
6111da177e4SLinus Torvalds	---help---
6121da177e4SLinus Torvalds	  The Universal Host Controller Interface is a standard by Intel for
6131da177e4SLinus Torvalds	  accessing the USB hardware in the PC (which is also called the USB
6141da177e4SLinus Torvalds	  host controller). If your USB host controller conforms to this
6151da177e4SLinus Torvalds	  standard, you may want to say Y, but see below. All recent boards
6161da177e4SLinus Torvalds	  with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX,
6171da177e4SLinus Torvalds	  i810, i820) conform to this standard. Also all VIA PCI chipsets
6181da177e4SLinus Torvalds	  (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro
6193db7739cSJan Andersson	  133) and LEON/GRLIB SoCs with the GRUSBHC controller.
6203db7739cSJan Andersson	  If unsure, say Y.
6211da177e4SLinus Torvalds
6221da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
6231da177e4SLinus Torvalds	  module will be called uhci-hcd.
6241da177e4SLinus Torvalds
625d3219d1cSJan Anderssonconfig USB_UHCI_SUPPORT_NON_PCI_HC
626d3219d1cSJan Andersson	bool
627ccd9509aSAlan Stern	default y if (SPARC_LEON || USB_UHCI_PLATFORM)
628100d4597STony Prisk
629100d4597STony Priskconfig USB_UHCI_PLATFORM
630ccd9509aSAlan Stern	bool
6314642d34aSBenjamin Herrenschmidt	default y if (ARCH_VT8500 || ARCH_ASPEED)
6324642d34aSBenjamin Herrenschmidt
6334642d34aSBenjamin Herrenschmidtconfig USB_UHCI_ASPEED
6344642d34aSBenjamin Herrenschmidt       bool
6354642d34aSBenjamin Herrenschmidt       default y if ARCH_ASPEED
636d3219d1cSJan Andersson
637236dd4d1SAnton Vorontsovconfig USB_FHCI_HCD
638236dd4d1SAnton Vorontsov	tristate "Freescale QE USB Host Controller support"
63925e11ec4SFlorian Fainelli	depends on OF_GPIO && QE_GPIO && QUICC_ENGINE
640236dd4d1SAnton Vorontsov	select FSL_GTM
641236dd4d1SAnton Vorontsov	select QE_USB
642236dd4d1SAnton Vorontsov	help
643236dd4d1SAnton Vorontsov	  This driver enables support for Freescale QE USB Host Controller
644236dd4d1SAnton Vorontsov	  (as found on MPC8360 and MPC8323 processors), the driver supports
645236dd4d1SAnton Vorontsov	  Full and Low Speed USB.
646236dd4d1SAnton Vorontsov
647236dd4d1SAnton Vorontsovconfig FHCI_DEBUG
648236dd4d1SAnton Vorontsov	bool "Freescale QE USB Host Controller debug support"
649236dd4d1SAnton Vorontsov	depends on USB_FHCI_HCD && DEBUG_FS
650236dd4d1SAnton Vorontsov	help
651236dd4d1SAnton Vorontsov	  Say "y" to see some FHCI debug information and statistics
65225985edcSLucas De Marchi	  through debugfs.
653236dd4d1SAnton Vorontsov
654d774efeaSTony Olechconfig USB_U132_HCD
655d774efeaSTony Olech	tristate "Elan U132 Adapter Host Controller"
65625e11ec4SFlorian Fainelli	depends on USB_FTDI_ELAN
657d774efeaSTony Olech	help
658d774efeaSTony Olech	  The U132 adapter is a USB to CardBus adapter specifically designed
659d774efeaSTony Olech	  for PC cards that contain an OHCI host controller. Typical PC cards
660d774efeaSTony Olech	  are the Orange Mobile 3G Option GlobeTrotter Fusion card. The U132
661d774efeaSTony Olech	  adapter will *NOT* work with PC cards that do not contain an OHCI
662d774efeaSTony Olech	  controller.
663d774efeaSTony Olech
6643cb2fcccSMatt LaPlante	  For those PC cards that contain multiple OHCI controllers only the
665d774efeaSTony Olech	  first one is used.
666d774efeaSTony Olech
667d774efeaSTony Olech	  The driver consists of two modules, the "ftdi-elan" module is a
668d774efeaSTony Olech	  USB client driver that interfaces to the FTDI chip within ELAN's
669d774efeaSTony Olech	  USB-to-PCMCIA adapter, and this "u132-hcd" module is a USB host
670d774efeaSTony Olech	  controller driver that talks to the OHCI controller within the
671d774efeaSTony Olech	  CardBus cards that are inserted in the U132 adapter.
672d774efeaSTony Olech
673d774efeaSTony Olech	  This driver has been tested with a CardBus OHCI USB adapter, and
674d774efeaSTony Olech	  worked with a USB PEN Drive inserted into the first USB port of
675d774efeaSTony Olech	  the PCCARD. A rather pointless thing to do, but useful for testing.
676d774efeaSTony Olech
677d774efeaSTony Olech	  It is safe to say M here.
678d774efeaSTony Olech
679d774efeaSTony Olech	  See also <http://www.elandigitalsystems.com/support/ufaq/u132linux.php>
680d774efeaSTony Olech
6811da177e4SLinus Torvaldsconfig USB_SL811_HCD
6821da177e4SLinus Torvalds	tristate "SL811HS HCD support"
683cfa33eaeSVegard Nossum	depends on HAS_IOMEM
6841da177e4SLinus Torvalds	help
6851da177e4SLinus Torvalds	  The SL811HS is a single-port USB controller that supports either
6861da177e4SLinus Torvalds	  host side or peripheral side roles.  Enable this option if your
6871da177e4SLinus Torvalds	  board has this chip, and you want to use it as a host controller.
6881da177e4SLinus Torvalds	  If unsure, say N.
6891da177e4SLinus Torvalds
6901da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
6911da177e4SLinus Torvalds	  module will be called sl811-hcd.
6921da177e4SLinus Torvalds
693ad7c56f0SMike Frysingerconfig USB_SL811_HCD_ISO
694ad7c56f0SMike Frysinger	bool "partial ISO support"
695ad7c56f0SMike Frysinger	depends on USB_SL811_HCD
696ad7c56f0SMike Frysinger	help
697ad7c56f0SMike Frysinger	  The driver doesn't support iso_frame_desc (yet), but for some simple
698ad7c56f0SMike Frysinger	  devices that just queue one ISO frame per URB, then ISO transfers
699ad7c56f0SMike Frysinger	  "should" work using the normal urb status fields.
700ad7c56f0SMike Frysinger
701ad7c56f0SMike Frysinger	  If unsure, say N.
702ad7c56f0SMike Frysinger
703c6de2b64SDavid Brownellconfig USB_SL811_CS
704c6de2b64SDavid Brownell	tristate "CF/PCMCIA support for SL811HS HCD"
705c6de2b64SDavid Brownell	depends on USB_SL811_HCD && PCMCIA
706c6de2b64SDavid Brownell	help
707c6de2b64SDavid Brownell	  Wraps a PCMCIA driver around the SL811HS HCD, supporting the RATOC
708c6de2b64SDavid Brownell	  REX-CFU1U CF card (often used with PDAs).  If unsure, say N.
709c6de2b64SDavid Brownell
710c6de2b64SDavid Brownell	  To compile this driver as a module, choose M here: the
711c6de2b64SDavid Brownell	  module will be called "sl811_cs".
712c6de2b64SDavid Brownell
7135d304358SYoshihiro Shimodaconfig USB_R8A66597_HCD
714fa0de2b6SM4rkusXXL	tristate "R8A66597 HCD support"
715e37a6c92SVegard Nossum	depends on HAS_IOMEM
7165d304358SYoshihiro Shimoda	help
7175d304358SYoshihiro Shimoda	  The R8A66597 is a USB 2.0 host and peripheral controller.
7185d304358SYoshihiro Shimoda
7195d304358SYoshihiro Shimoda	  Enable this option if your board has this chip, and you want
7205d304358SYoshihiro Shimoda	  to use it as a host controller.  If unsure, say N.
7215d304358SYoshihiro Shimoda
7225d304358SYoshihiro Shimoda	  To compile this driver as a module, choose M here: the
7235d304358SYoshihiro Shimoda	  module will be called r8a66597-hcd.
7245d304358SYoshihiro Shimoda
725034d7c13SKuninori Morimotoconfig USB_RENESAS_USBHS_HCD
726034d7c13SKuninori Morimoto	tristate "Renesas USBHS HCD support"
727034d7c13SKuninori Morimoto	depends on USB_RENESAS_USBHS
728034d7c13SKuninori Morimoto	help
729034d7c13SKuninori Morimoto	  The Renesas USBHS is a USB 2.0 host and peripheral controller.
730034d7c13SKuninori Morimoto
731034d7c13SKuninori Morimoto	  Enable this option if your board has this chip, and you want
732034d7c13SKuninori Morimoto	  to use it as a host controller.  If unsure, say N.
733034d7c13SKuninori Morimoto
734034d7c13SKuninori Morimoto	  To compile this driver as a module, choose M here: the
735034d7c13SKuninori Morimoto	  module will be called renesas-usbhs.
736034d7c13SKuninori Morimoto
7377e6133aaSDavid Vrabelconfig USB_WHCI_HCD
738eb83be98SGreg Kroah-Hartman	tristate "Wireless USB Host Controller Interface (WHCI) driver"
7392c93e790Syuan linyu	depends on USB_PCI && USB && UWB
7407e6133aaSDavid Vrabel	select USB_WUSB
7417e6133aaSDavid Vrabel	select UWB_WHCI
7427e6133aaSDavid Vrabel	help
7437e6133aaSDavid Vrabel	  A driver for PCI-based Wireless USB Host Controllers that are
7447e6133aaSDavid Vrabel	  compliant with the WHCI specification.
7457e6133aaSDavid Vrabel
7467e6133aaSDavid Vrabel	  To compile this driver a module, choose M here: the module
7477e6133aaSDavid Vrabel	  will be called "whci-hcd".
748d09318b8SInaky Perez-Gonzalez
749d09318b8SInaky Perez-Gonzalezconfig USB_HWA_HCD
750eb83be98SGreg Kroah-Hartman	tristate "Host Wire Adapter (HWA) driver"
751cbb67199SThomas Pugliese	depends on USB && UWB
752d09318b8SInaky Perez-Gonzalez	select USB_WUSB
753d09318b8SInaky Perez-Gonzalez	select UWB_HWA
754d09318b8SInaky Perez-Gonzalez	help
755d09318b8SInaky Perez-Gonzalez	  This driver enables you to connect Wireless USB devices to
756d09318b8SInaky Perez-Gonzalez	  your system using a Host Wire Adaptor USB dongle. This is an
757d09318b8SInaky Perez-Gonzalez	  UWB Radio Controller and WUSB Host Controller connected to
758d09318b8SInaky Perez-Gonzalez	  your machine via USB (specified in WUSB1.0).
759d09318b8SInaky Perez-Gonzalez
760d09318b8SInaky Perez-Gonzalez	  To compile this driver a module, choose M here: the module
761d09318b8SInaky Perez-Gonzalez	  will be called "hwa-hc".
76223d3e7a6SMartin Fuzzey
76323d3e7a6SMartin Fuzzeyconfig USB_IMX21_HCD
7645de9ec4dSSascha Hauer       tristate "i.MX21 HCD support"
76525e11ec4SFlorian Fainelli       depends on ARM && ARCH_MXC
76623d3e7a6SMartin Fuzzey       help
76723d3e7a6SMartin Fuzzey         This driver enables support for the on-chip USB host in the
7685de9ec4dSSascha Hauer         i.MX21 processor.
76923d3e7a6SMartin Fuzzey
77023d3e7a6SMartin Fuzzey         To compile this driver as a module, choose M here: the
77123d3e7a6SMartin Fuzzey         module will be called "imx21-hcd".
77223d3e7a6SMartin Fuzzey
77362e11d1bSHauke Mehrtensconfig USB_HCD_BCMA
77462e11d1bSHauke Mehrtens	tristate "BCMA usb host driver"
775eb83be98SGreg Kroah-Hartman	depends on BCMA
77662e11d1bSHauke Mehrtens	select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
77762e11d1bSHauke Mehrtens	select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
77862e11d1bSHauke Mehrtens	help
77971c421dbSJesper Dangaard Brouer	  Enable support for the EHCI and OCHI host controller on an bcma bus.
78062e11d1bSHauke Mehrtens	  It converts the bcma driver into two platform device drivers
78162e11d1bSHauke Mehrtens	  for ehci and ohci.
78262e11d1bSHauke Mehrtens
78362e11d1bSHauke Mehrtens	  If unsure, say N.
7847043c2ccSHauke Mehrtens
7857043c2ccSHauke Mehrtensconfig USB_HCD_SSB
7867043c2ccSHauke Mehrtens	tristate "SSB usb host driver"
787eb83be98SGreg Kroah-Hartman	depends on SSB
7887043c2ccSHauke Mehrtens	select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
7897043c2ccSHauke Mehrtens	select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
7907043c2ccSHauke Mehrtens	help
79171c421dbSJesper Dangaard Brouer	  Enable support for the EHCI and OCHI host controller on an bcma bus.
7927043c2ccSHauke Mehrtens	  It converts the bcma driver into two platform device drivers
7937043c2ccSHauke Mehrtens	  for ehci and ohci.
7947043c2ccSHauke Mehrtens
7957043c2ccSHauke Mehrtens	  If unsure, say N.
796726a85caSJack Pham
797726a85caSJack Phamconfig USB_HCD_TEST_MODE
798726a85caSJack Pham	bool "HCD test mode support"
799726a85caSJack Pham	---help---
800726a85caSJack Pham	  Say 'Y' to enable additional software test modes that may be
801726a85caSJack Pham	  supported by the host controller drivers.
802726a85caSJack Pham
803726a85caSJack Pham	  One such test mode is the Embedded High-speed Host Electrical Test
804726a85caSJack Pham	  (EHSET) for EHCI host controller hardware, specifically the "Single
805726a85caSJack Pham	  Step Set Feature" test.  Typically this will be enabled for On-the-Go
806726a85caSJack Pham	  or embedded hosts that need to undergo USB-IF compliance testing with
807726a85caSJack Pham	  the aid of special testing hardware.  In the future, this may expand
808726a85caSJack Pham	  to include other tests that require support from a HCD driver.
809726a85caSJack Pham
810726a85caSJack Pham	  This option is of interest only to developers who need to validate
811726a85caSJack Pham	  their USB hardware designs.  It is not needed for normal use.  If
812726a85caSJack Pham	  unsure, say N.
813