xref: /linux/drivers/usb/host/Kconfig (revision dea7b202bd9c03a2523c4c908f117d271a2b2d10)
1cae8dc3bSGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0
21da177e4SLinus Torvalds#
31da177e4SLinus Torvalds# USB Host Controller Drivers
41da177e4SLinus Torvalds#
51da177e4SLinus Torvaldscomment "USB Host Controller Drivers"
61da177e4SLinus Torvalds
7e9b29ffcSPeter Korsgaardconfig USB_C67X00_HCD
8e9b29ffcSPeter Korsgaard	tristate "Cypress C67x00 HCD support"
9149737a7SVegard Nossum	depends on HAS_IOMEM
10e9b29ffcSPeter Korsgaard	help
11e9b29ffcSPeter Korsgaard	  The Cypress C67x00 (EZ-Host/EZ-OTG) chips are dual-role
12e9b29ffcSPeter Korsgaard	  host/peripheral/OTG USB controllers.
13e9b29ffcSPeter Korsgaard
14e9b29ffcSPeter Korsgaard	  Enable this option to support this chip in host controller mode.
15e9b29ffcSPeter Korsgaard	  If unsure, say N.
16e9b29ffcSPeter Korsgaard
17e9b29ffcSPeter Korsgaard	  To compile this driver as a module, choose M here: the
18e9b29ffcSPeter Korsgaard	  module will be called c67x00.
19e9b29ffcSPeter Korsgaard
20eb6bab13SSarah Sharpconfig USB_XHCI_HCD
21eb83be98SGreg Kroah-Hartman	tristate "xHCI HCD (USB 3.0) support"
22cf34be7aSGeert Uytterhoeven	depends on HAS_DMA && HAS_IOMEM
23eb6bab13SSarah Sharp	---help---
24eb6bab13SSarah Sharp	  The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0
25eb6bab13SSarah Sharp	  "SuperSpeed" host controller hardware.
26eb6bab13SSarah Sharp
27eb6bab13SSarah Sharp	  To compile this driver as a module, choose M here: the
28eb6bab13SSarah Sharp	  module will be called xhci-hcd.
29eb6bab13SSarah Sharp
300fcb9989SFlorian Fainelliif USB_XHCI_HCD
31dfba2174SLu Baoluconfig USB_XHCI_DBGCAP
32dfba2174SLu Baolu	bool "xHCI support for debug capability"
33dfba2174SLu Baolu	depends on TTY
34dfba2174SLu Baolu	---help---
35dfba2174SLu Baolu	  Say 'Y' to enable the support for the xHCI debug capability. Make
36dfba2174SLu Baolu	  sure that your xHCI host supports the extended debug capability and
37dfba2174SLu Baolu	  you want a TTY serial device based on the xHCI debug capability
38dfba2174SLu Baolu	  before enabling this option. If unsure, say 'N'.
390fcb9989SFlorian Fainelli
4029e409f0SAndrew Brestickerconfig USB_XHCI_PCI
4129e409f0SAndrew Bresticker	tristate
422c93e790Syuan linyu	depends on USB_PCI
4329e409f0SAndrew Bresticker	default y
4429e409f0SAndrew Bresticker
453429e91aSSebastian Andrzej Siewiorconfig USB_XHCI_PLATFORM
466c05cb14SRafał Miłecki	tristate "Generic xHCI driver for a platform device"
47f879fc32SYoshihiro Shimoda	select USB_XHCI_RCAR if ARCH_RENESAS
486c05cb14SRafał Miłecki	---help---
496c05cb14SRafał Miłecki	  Adds an xHCI host driver for a generic platform device, which
506c05cb14SRafał Miłecki	  provides a memory space and an irq.
516c05cb14SRafał Miłecki	  It is also a prerequisite for platform specific drivers that
526c05cb14SRafał Miłecki	  implement some extra quirks.
536c05cb14SRafał Miłecki
546c05cb14SRafał Miłecki	  If unsure, say N.
553429e91aSSebastian Andrzej Siewior
56c508f41dSJianguo Sunconfig USB_XHCI_HISTB
57c508f41dSJianguo Sun	tristate "xHCI support for HiSilicon STB SoCs"
58c508f41dSJianguo Sun	depends on USB_XHCI_PLATFORM && (ARCH_HISI || COMPILE_TEST)
59c508f41dSJianguo Sun	help
60c508f41dSJianguo Sun	  Say 'Y' to enable the support for the xHCI host controller
61c508f41dSJianguo Sun	  found in HiSilicon STB SoCs.
62c508f41dSJianguo Sun
630cbd4b34SChunfeng Yunconfig USB_XHCI_MTK
647b81a586SChunfeng Yun	tristate "xHCI support for MediaTek SoCs"
650cbd4b34SChunfeng Yun	select MFD_SYSCON
66808cf33dSJohn Crispin	depends on (MIPS && SOC_MT7621) || ARCH_MEDIATEK || COMPILE_TEST
670cbd4b34SChunfeng Yun	---help---
680cbd4b34SChunfeng Yun	  Say 'Y' to enable the support for the xHCI host controller
697b81a586SChunfeng Yun	  found in MediaTek SoCs.
700cbd4b34SChunfeng Yun	  If unsure, say N.
710cbd4b34SChunfeng Yun
7297374792SGregory CLEMENTconfig USB_XHCI_MVEBU
7312453a89SOfer Heifetz	tristate "xHCI support for Marvell Armada 375/38x/37xx"
7497374792SGregory CLEMENT	select USB_XHCI_PLATFORM
75828638e9SVegard Nossum	depends on HAS_IOMEM
7697374792SGregory CLEMENT	depends on ARCH_MVEBU || COMPILE_TEST
7797374792SGregory CLEMENT	---help---
7897374792SGregory CLEMENT	  Say 'Y' to enable the support for the xHCI host controller
7912453a89SOfer Heifetz	  found in Marvell Armada 375/38x/37xx ARM SOCs.
8097374792SGregory CLEMENT
814ac8918fSYoshihiro Shimodaconfig USB_XHCI_RCAR
824ac8918fSYoshihiro Shimoda	tristate "xHCI support for Renesas R-Car SoCs"
83f879fc32SYoshihiro Shimoda	depends on USB_XHCI_PLATFORM
846edd87f5SSimon Horman	depends on ARCH_RENESAS || COMPILE_TEST
854ac8918fSYoshihiro Shimoda	---help---
864ac8918fSYoshihiro Shimoda	  Say 'Y' to enable the support for the xHCI host controller
874ac8918fSYoshihiro Shimoda	  found in Renesas R-Car ARM SoCs.
884ac8918fSYoshihiro Shimoda
89e84fce0fSThierry Redingconfig USB_XHCI_TEGRA
90e84fce0fSThierry Reding	tristate "xHCI support for NVIDIA Tegra SoCs"
91e84fce0fSThierry Reding	depends on PHY_TEGRA_XUSB
92e84fce0fSThierry Reding	depends on RESET_CONTROLLER
93e84fce0fSThierry Reding	select FW_LOADER
94e84fce0fSThierry Reding	---help---
95e84fce0fSThierry Reding	  Say 'Y' to enable the support for the xHCI host controller
96e84fce0fSThierry Reding	  found in NVIDIA Tegra124 and later SoCs.
97e84fce0fSThierry Reding
980fcb9989SFlorian Fainelliendif # USB_XHCI_HCD
990fcb9989SFlorian Fainelli
1001da177e4SLinus Torvaldsconfig USB_EHCI_HCD
1011da177e4SLinus Torvalds	tristate "EHCI HCD (USB 2.0) support"
102cf34be7aSGeert Uytterhoeven	depends on HAS_DMA && HAS_IOMEM
1031da177e4SLinus Torvalds	---help---
1041da177e4SLinus Torvalds	  The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0
1051da177e4SLinus Torvalds	  "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware.
1061da177e4SLinus Torvalds	  If your USB host controller supports USB 2.0, you will likely want to
107b967c88eSThierry Vignaud	  configure this Host Controller Driver.
1081da177e4SLinus Torvalds
1091da177e4SLinus Torvalds	  EHCI controllers are packaged with "companion" host controllers (OHCI
1101da177e4SLinus Torvalds	  or UHCI) to handle USB 1.1 devices connected to root hub ports.  Ports
111b3c29d85SJesper Juhl	  will connect to EHCI if the device is high speed, otherwise they
1121da177e4SLinus Torvalds	  connect to a companion controller.  If you configure EHCI, you should
1131da177e4SLinus Torvalds	  probably configure the OHCI (for NEC and some other vendors) USB Host
1141da177e4SLinus Torvalds	  Controller Driver or UHCI (for Via motherboards) Host Controller
1151da177e4SLinus Torvalds	  Driver too.
1161da177e4SLinus Torvalds
117ecefae6dSMauro Carvalho Chehab	  You may want to read <file:Documentation/usb/ehci.rst>.
1181da177e4SLinus Torvalds
1191da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1201da177e4SLinus Torvalds	  module will be called ehci-hcd.
1211da177e4SLinus Torvalds
1221da177e4SLinus Torvaldsconfig USB_EHCI_ROOT_HUB_TT
1239ec249a6SRobert P. J. Day	bool "Root Hub Transaction Translators"
124a746c286SPeter Chen	depends on USB_EHCI_HCD
1251da177e4SLinus Torvalds	---help---
1261da177e4SLinus Torvalds	  Some EHCI chips have vendor-specific extensions to integrate
1271da177e4SLinus Torvalds	  transaction translators, so that no OHCI or UHCI companion
1281da177e4SLinus Torvalds	  controller is needed.  It's safe to say "y" even if your
1291da177e4SLinus Torvalds	  controller doesn't support this feature.
1301da177e4SLinus Torvalds
131ba47f66bSDan Streetman	  This supports the EHCI implementation that's originally
132ba47f66bSDan Streetman	  from ARC, and has since changed hands a few times.
133ba47f66bSDan Streetman
134ba47f66bSDan Streetmanconfig USB_EHCI_TT_NEWSCHED
13537cd681cSAlan Stern	bool "Improved Transaction Translator scheduling"
136a746c286SPeter Chen	depends on USB_EHCI_HCD
13737cd681cSAlan Stern	default y
138ba47f66bSDan Streetman	---help---
139ba47f66bSDan Streetman	  This changes the periodic scheduling code to fill more of the low
140ba47f66bSDan Streetman	  and full speed bandwidth available from the Transaction Translator
141ba47f66bSDan Streetman	  (TT) in USB 2.0 hubs.  Without this, only one transfer will be
142ba47f66bSDan Streetman	  issued in each microframe, significantly reducing the number of
143ba47f66bSDan Streetman	  periodic low/fullspeed transfers possible.
144ba47f66bSDan Streetman
145ba47f66bSDan Streetman	  If you have multiple periodic low/fullspeed devices connected to a
146ba47f66bSDan Streetman	  highspeed USB hub which is connected to a highspeed USB Host
147ba47f66bSDan Streetman	  Controller, and some of those devices will not work correctly
14837cd681cSAlan Stern	  (possibly due to "ENOSPC" or "-28" errors), say Y.  Conversely, if
14937cd681cSAlan Stern	  you have only one such device and it doesn't work, you could try
15037cd681cSAlan Stern	  saying N.
151ba47f66bSDan Streetman
15237cd681cSAlan Stern	  If unsure, say Y.
1531da177e4SLinus Torvalds
15442443dc4SFlorian Fainelliif USB_EHCI_HCD
15542443dc4SFlorian Fainelli
156adfa79d1SAlan Sternconfig USB_EHCI_PCI
157adfa79d1SAlan Stern	tristate
1582c93e790Syuan linyu	depends on USB_PCI
159adfa79d1SAlan Stern	default y
160adfa79d1SAlan Stern
16122ced687SAnoopconfig USB_EHCI_HCD_PMC_MSP
16222ced687SAnoop	tristate "EHCI support for on-chip PMC MSP71xx USB controller"
16342443dc4SFlorian Fainelli	depends on MSP_HAS_USB
16422ced687SAnoop	select USB_EHCI_BIG_ENDIAN_DESC
16522ced687SAnoop	select USB_EHCI_BIG_ENDIAN_MMIO
16622ced687SAnoop	---help---
16722ced687SAnoop		Enables support for the onchip USB controller on the PMC_MSP7100 Family SoC's.
16822ced687SAnoop		If unsure, say N.
16922ced687SAnoop
17008d3c18eSJulie Zhuconfig XPS_USB_HCD_XILINX
17108d3c18eSJulie Zhu	bool "Use Xilinx usb host EHCI controller core"
17242443dc4SFlorian Fainelli	depends on (PPC32 || MICROBLAZE)
17308d3c18eSJulie Zhu	select USB_EHCI_BIG_ENDIAN_DESC
17408d3c18eSJulie Zhu	select USB_EHCI_BIG_ENDIAN_MMIO
17508d3c18eSJulie Zhu	---help---
176f54619f2SMasanari Iida		Xilinx xps USB host controller core is EHCI compliant and has
17708d3c18eSJulie Zhu		transaction translator built-in. It can be configured to either
17808d3c18eSJulie Zhu		support both high speed and full speed devices, or high speed
17908d3c18eSJulie Zhu		devices only.
18008d3c18eSJulie Zhu
181ba02978aSLi Yangconfig USB_EHCI_FSL
18273855109SRan Wang	tristate "Support for Freescale on-chip EHCI USB controller"
183ba02978aSLi Yang	select USB_EHCI_ROOT_HUB_TT
184ba02978aSLi Yang	---help---
185ba02978aSLi Yang	  Variation of ARC USB block used in some Freescale chips.
186ba02978aSLi Yang
1877e8d5cd9SDaniel Mackconfig USB_EHCI_MXC
188dba63b2fSAlan Stern	tristate "Support for Freescale i.MX on-chip EHCI USB controller"
18988eaaeccSKrzysztof Kozlowski	depends on ARCH_MXC || COMPILE_TEST
1907e8d5cd9SDaniel Mack	select USB_EHCI_ROOT_HUB_TT
1917e8d5cd9SDaniel Mack	---help---
1927e8d5cd9SDaniel Mack	  Variation of ARC USB block used in some Freescale chips.
1937e8d5cd9SDaniel Mack
194df44831eSAvi Fishmanconfig USB_EHCI_HCD_NPCM7XX
195df44831eSAvi Fishman	tristate "Support for Nuvoton NPCM7XX on-chip EHCI USB controller"
196df44831eSAvi Fishman	depends on (USB_EHCI_HCD && ARCH_NPCM7XX) || COMPILE_TEST
197df44831eSAvi Fishman	default y if (USB_EHCI_HCD && ARCH_NPCM7XX)
198df44831eSAvi Fishman	help
199df44831eSAvi Fishman	  Enables support for the on-chip EHCI controller on
200df44831eSAvi Fishman	  Nuvoton NPCM7XX chips.
201df44831eSAvi Fishman
2027f124f4bSKeshava Munegowdaconfig USB_EHCI_HCD_OMAP
20354a41966SAlan Stern	tristate "EHCI support for OMAP3 and later chips"
20442443dc4SFlorian Fainelli	depends on ARCH_OMAP
2055a8d651aSFelipe Balbi	depends on NOP_USB_XCEIV
2067f124f4bSKeshava Munegowda	default y
2077f124f4bSKeshava Munegowda	---help---
2087f124f4bSKeshava Munegowda	  Enables support for the on-chip EHCI controller on
2097f124f4bSKeshava Munegowda	  OMAP3 and later chips.
2107f124f4bSKeshava Munegowda
211a76dd463SManjunath Goudarconfig USB_EHCI_HCD_ORION
212a76dd463SManjunath Goudar	tristate  "Support for Marvell EBU on-chip EHCI USB controller"
21388eaaeccSKrzysztof Kozlowski	depends on USB_EHCI_HCD && (PLAT_ORION || ARCH_MVEBU || COMPILE_TEST)
21488eaaeccSKrzysztof Kozlowski	default y if (PLAT_ORION || ARCH_MVEBU)
215a76dd463SManjunath Goudar	---help---
216a76dd463SManjunath Goudar	  Enables support for the on-chip EHCI controller on Marvell's
217a76dd463SManjunath Goudar	  embedded ARM SoCs, including Orion, Kirkwood, Dove, Armada XP,
218a76dd463SManjunath Goudar	  Armada 370.  This is different from the EHCI implementation
219a76dd463SManjunath Goudar	  on Marvell's mobile PXA and MMP SoC, see "EHCI support for
220a76dd463SManjunath Goudar	  Marvell PXA/MMP USB controller" for those.
221a76dd463SManjunath Goudar
2227675d6baSManjunath Goudarconfig USB_EHCI_HCD_SPEAR
2237675d6baSManjunath Goudar	tristate "Support for ST SPEAr on-chip EHCI USB controller"
22488eaaeccSKrzysztof Kozlowski	depends on USB_EHCI_HCD && (PLAT_SPEAR || COMPILE_TEST)
22588eaaeccSKrzysztof Kozlowski	default y if PLAT_SPEAR
2267675d6baSManjunath Goudar	---help---
2277675d6baSManjunath Goudar	  Enables support for the on-chip EHCI controller on
2287675d6baSManjunath Goudar	  ST SPEAr chips.
2297675d6baSManjunath Goudar
230905e300eSArnd Bergmannconfig USB_EHCI_HCD_STI
231905e300eSArnd Bergmann	tristate "Support for ST STiHxxx on-chip EHCI USB controller"
23288eaaeccSKrzysztof Kozlowski	depends on (ARCH_STI || COMPILE_TEST) && OF
233905e300eSArnd Bergmann	select GENERIC_PHY
234905e300eSArnd Bergmann	select USB_EHCI_HCD_PLATFORM
235905e300eSArnd Bergmann	help
236905e300eSArnd Bergmann	  Enable support for the on-chip EHCI controller found on
237905e300eSArnd Bergmann	  STMicroelectronics consumer electronics SoC's.
238905e300eSArnd Bergmann
23997736961SManjunath Goudarconfig USB_EHCI_HCD_AT91
24097736961SManjunath Goudar	tristate  "Support for Atmel on-chip EHCI USB controller"
24188eaaeccSKrzysztof Kozlowski	depends on USB_EHCI_HCD && (ARCH_AT91 || COMPILE_TEST)
24288eaaeccSKrzysztof Kozlowski	default y if ARCH_AT91
24397736961SManjunath Goudar	---help---
24497736961SManjunath Goudar	  Enables support for the on-chip EHCI controller on
24597736961SManjunath Goudar	  Atmel chips.
24697736961SManjunath Goudar
24779ad3b5aSBenoit Gobyconfig USB_EHCI_TEGRA
2489fc5f24eSManjunath Goudar	tristate "NVIDIA Tegra HCD support"
24942443dc4SFlorian Fainelli	depends on ARCH_TEGRA
25079ad3b5aSBenoit Goby	select USB_EHCI_ROOT_HUB_TT
251ee30ec0cSDmitry Osipenko	select USB_TEGRA_PHY
25279ad3b5aSBenoit Goby	help
25379ad3b5aSBenoit Goby	  This driver enables support for the internal USB Host Controllers
25479ad3b5aSBenoit Goby	  found in NVIDIA Tegra SoCs. The controllers are EHCI compliant.
25579ad3b5aSBenoit Goby
256da0e8fb0SValentine Barshakconfig USB_EHCI_HCD_PPC_OF
257da0e8fb0SValentine Barshak	bool "EHCI support for PPC USB controller on OF platform bus"
258c31316cbSKevin Hao	depends on PPC
259da0e8fb0SValentine Barshak	default y
260da0e8fb0SValentine Barshak	---help---
261da0e8fb0SValentine Barshak	  Enables support for the USB controller present on the PowerPC
262da0e8fb0SValentine Barshak	  OpenFirmware platform bus.
263da0e8fb0SValentine Barshak
26460b0bf0fSYoshihiro Shimodaconfig USB_EHCI_SH
26560b0bf0fSYoshihiro Shimoda	bool "EHCI support for SuperH USB controller"
26688eaaeccSKrzysztof Kozlowski	depends on SUPERH || COMPILE_TEST
26760b0bf0fSYoshihiro Shimoda	---help---
26860b0bf0fSYoshihiro Shimoda	  Enables support for the on-chip EHCI controller on the SuperH.
26960b0bf0fSYoshihiro Shimoda	  If you use the PCI EHCI controller, this option is not necessary.
27060b0bf0fSYoshihiro Shimoda
27129824c16SJingoo Hanconfig USB_EHCI_EXYNOS
272*dea7b202SKrzysztof Kozlowski	tristate "EHCI support for Samsung S5P/Exynos SoC Series"
27388eaaeccSKrzysztof Kozlowski	depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
2741bcc5aa8SJoonyoung Shim	help
27529824c16SJingoo Han	  Enable support for the Samsung Exynos SOC's on-chip EHCI controller.
2761bcc5aa8SJoonyoung Shim
2773a082ec9SNeil Zhangconfig USB_EHCI_MV
2780440fa3dSLubomir Rintel	tristate "EHCI support for Marvell PXA/MMP USB controller"
27988eaaeccSKrzysztof Kozlowski	depends on ARCH_PXA || ARCH_MMP || COMPILE_TEST
2803a082ec9SNeil Zhang	select USB_EHCI_ROOT_HUB_TT
2813a082ec9SNeil Zhang	---help---
2823a082ec9SNeil Zhang	  Enables support for Marvell (including PXA and MMP series) on-chip
2833a082ec9SNeil Zhang	  USB SPH and OTG controller. SPH is a single port host, and it can
2843a082ec9SNeil Zhang	  only be EHCI host. OTG is controller that can switch to host mode.
285a76dd463SManjunath Goudar	  Note that this driver will not work on Marvell's other EHCI
286a76dd463SManjunath Goudar	  controller used by the EBU-type SoCs including Orion, Kirkwood,
287a76dd463SManjunath Goudar	  Dova, Armada 370 and Armada XP. See "Support for Marvell EBU
288a76dd463SManjunath Goudar	  on-chip EHCI USB controller" for those.
2893a082ec9SNeil Zhang
290760efe69SMac Linconfig USB_CNS3XXX_EHCI
291f3a958d3SFlorian Fainelli	bool "Cavium CNS3XXX EHCI Module (DEPRECATED)"
29288eaaeccSKrzysztof Kozlowski	depends on ARCH_CNS3XXX || COMPILE_TEST
293f3a958d3SFlorian Fainelli	select USB_EHCI_HCD_PLATFORM
294760efe69SMac Lin	---help---
295f3a958d3SFlorian Fainelli	  This option is deprecated now and the driver was removed, use
296f3a958d3SFlorian Fainelli	  USB_EHCI_HCD_PLATFORM instead.
297f3a958d3SFlorian Fainelli
298760efe69SMac Lin	  Enable support for the CNS3XXX SOC's on-chip EHCI controller.
299760efe69SMac Lin	  It is needed for high-speed (480Mbit/sec) USB 2.0 device
300760efe69SMac Lin	  support.
301760efe69SMac Lin
30242443dc4SFlorian Fainelliconfig USB_EHCI_HCD_PLATFORM
30342443dc4SFlorian Fainelli	tristate "Generic EHCI driver for a platform device"
30442443dc4SFlorian Fainelli	---help---
30542443dc4SFlorian Fainelli	  Adds an EHCI host driver for a generic platform device, which
30642443dc4SFlorian Fainelli	  provides a memory space and an irq.
30742443dc4SFlorian Fainelli
30842443dc4SFlorian Fainelli	  If unsure, say N.
30942443dc4SFlorian Fainelli
31042443dc4SFlorian Fainelliconfig USB_OCTEON_EHCI
3112193dda5SAlan Stern	bool "Octeon on-chip EHCI support (DEPRECATED)"
3124e52af1cSKrzysztof Kozlowski	depends on CAVIUM_OCTEON_SOC
313df115f3eSBen Hutchings	select USB_EHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
3142193dda5SAlan Stern	select USB_EHCI_HCD_PLATFORM
31542443dc4SFlorian Fainelli	help
3162193dda5SAlan Stern	  This option is deprecated now and the driver was removed, use
3172193dda5SAlan Stern	  USB_EHCI_HCD_PLATFORM instead.
3182193dda5SAlan Stern
31942443dc4SFlorian Fainelli	  Enable support for the Octeon II SOC's on-chip EHCI
32042443dc4SFlorian Fainelli	  controller.  It is needed for high-speed (480Mbit/sec)
32142443dc4SFlorian Fainelli	  USB 2.0 device support.  All CN6XXX based chips with USB are
32242443dc4SFlorian Fainelli	  supported.
32342443dc4SFlorian Fainelli
32442443dc4SFlorian Fainelliendif # USB_EHCI_HCD
32542443dc4SFlorian Fainelli
326b92a78e5SRodolfo Giometticonfig USB_OXU210HP_HCD
327b92a78e5SRodolfo Giometti	tristate "OXU210HP HCD support"
328f4a5d702SVegard Nossum	depends on HAS_IOMEM
329b92a78e5SRodolfo Giometti	---help---
330b92a78e5SRodolfo Giometti	  The OXU210HP is an USB host/OTG/device controller. Enable this
331b92a78e5SRodolfo Giometti	  option if your board has this chip. If unsure, say N.
332b92a78e5SRodolfo Giometti
333b92a78e5SRodolfo Giometti	  This driver does not support isochronous transfers and doesn't
334b92a78e5SRodolfo Giometti	  implement OTG nor USB device controllers.
335b92a78e5SRodolfo Giometti
336b92a78e5SRodolfo Giometti	  To compile this driver as a module, choose M here: the
337b92a78e5SRodolfo Giometti	  module will be called oxu210hp-hcd.
338b92a78e5SRodolfo Giometti
3394808a1c0SOlav Kongasconfig USB_ISP116X_HCD
3404808a1c0SOlav Kongas	tristate "ISP116X HCD support"
341ca23d3b7SVegard Nossum	depends on HAS_IOMEM
3424808a1c0SOlav Kongas	---help---
3434808a1c0SOlav Kongas	  The ISP1160 and ISP1161 chips are USB host controllers. Enable this
3444808a1c0SOlav Kongas	  option if your board has this chip. If unsure, say N.
3454808a1c0SOlav Kongas
3464808a1c0SOlav Kongas	  This driver does not support isochronous transfers.
3474808a1c0SOlav Kongas
3484808a1c0SOlav Kongas	  To compile this driver as a module, choose M here: the
3494808a1c0SOlav Kongas	  module will be called isp116x-hcd.
3504808a1c0SOlav Kongas
351a9d43091SLothar Wassmannconfig USB_ISP1362_HCD
352a9d43091SLothar Wassmann	tristate "ISP1362 HCD support"
3534a6d9f87SVegard Nossum	depends on HAS_IOMEM
354da2827a2SArnd Bergmann	depends on COMPILE_TEST # nothing uses this
355a9d43091SLothar Wassmann	---help---
356a9d43091SLothar Wassmann	  Supports the Philips ISP1362 chip as a host controller
357a9d43091SLothar Wassmann
358a9d43091SLothar Wassmann	  This driver does not support isochronous transfers.
359a9d43091SLothar Wassmann
360a9d43091SLothar Wassmann	  To compile this driver as a module, choose M here: the
361a9d43091SLothar Wassmann	  module will be called isp1362-hcd.
362a9d43091SLothar Wassmann
3637d50195fSFeng-Hsin Chiangconfig USB_FOTG210_HCD
3647d50195fSFeng-Hsin Chiang	tristate "FOTG210 HCD support"
365cf34be7aSGeert Uytterhoeven	depends on USB && HAS_DMA && HAS_IOMEM
3667d50195fSFeng-Hsin Chiang	---help---
3677d50195fSFeng-Hsin Chiang	  Faraday FOTG210 is an OTG controller which can be configured as
3687d50195fSFeng-Hsin Chiang	  an USB2.0 host. It is designed to meet USB2.0 EHCI specification
3697d50195fSFeng-Hsin Chiang	  with minor modification.
3707d50195fSFeng-Hsin Chiang
3717d50195fSFeng-Hsin Chiang	  To compile this driver as a module, choose M here: the
3727d50195fSFeng-Hsin Chiang	  module will be called fotg210-hcd.
3737d50195fSFeng-Hsin Chiang
3742d53139fSDavid Mosbergerconfig USB_MAX3421_HCD
3752d53139fSDavid Mosberger	tristate "MAX3421 HCD (USB-over-SPI) support"
3762d53139fSDavid Mosberger	depends on USB && SPI
3772d53139fSDavid Mosberger	---help---
3782d53139fSDavid Mosberger	  The Maxim MAX3421E chip supports standard USB 2.0-compliant
3792d53139fSDavid Mosberger	  full-speed devices either in host or peripheral mode.  This
3802d53139fSDavid Mosberger	  driver supports the host-mode of the MAX3421E only.
3812d53139fSDavid Mosberger
3822d53139fSDavid Mosberger	  To compile this driver as a module, choose M here: the module will
3832d53139fSDavid Mosberger	  be called max3421-hcd.
3842d53139fSDavid Mosberger
3851da177e4SLinus Torvaldsconfig USB_OHCI_HCD
386c1117afbSManjunath Goudar	tristate "OHCI HCD (USB 1.1) support"
387cf34be7aSGeert Uytterhoeven	depends on HAS_DMA && HAS_IOMEM
3881da177e4SLinus Torvalds	---help---
3891da177e4SLinus Torvalds	  The Open Host Controller Interface (OHCI) is a standard for accessing
3901da177e4SLinus Torvalds	  USB 1.1 host controller hardware.  It does more in hardware than Intel's
3911da177e4SLinus Torvalds	  UHCI specification.  If your USB host controller follows the OHCI spec,
3921da177e4SLinus Torvalds	  say Y.  On most non-x86 systems, and on x86 hardware that's not using a
3931da177e4SLinus Torvalds	  USB controller from Intel or VIA, this is appropriate.  If your host
3941da177e4SLinus Torvalds	  controller doesn't use PCI, this is probably appropriate.  For a PCI
3951da177e4SLinus Torvalds	  based system where you're not sure, the "lspci -v" entry will list the
3961da177e4SLinus Torvalds	  right "prog-if" for your USB controller(s):  EHCI, OHCI, or UHCI.
3971da177e4SLinus Torvalds
3981da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
3991da177e4SLinus Torvalds	  module will be called ohci-hcd.
4001da177e4SLinus Torvalds
4013ad3ca05SFlorian Fainelliif USB_OHCI_HCD
4023ad3ca05SFlorian Fainelli
403968b448bSAnand Gadiyarconfig USB_OHCI_HCD_OMAP1
404de57a154SManjunath Goudar	tristate "OHCI support for OMAP1/2 chips"
4053ad3ca05SFlorian Fainelli	depends on ARCH_OMAP1
40638e0c109SArnd Bergmann	depends on ISP1301_OMAP || !(MACH_OMAP_H2 || MACH_OMAP_H3)
407968b448bSAnand Gadiyar	default y
408968b448bSAnand Gadiyar	---help---
409968b448bSAnand Gadiyar	  Enables support for the OHCI controller on OMAP1/2 chips.
410968b448bSAnand Gadiyar
4111cc6ac59SManjunath Goudarconfig USB_OHCI_HCD_SPEAR
4121cc6ac59SManjunath Goudar	tristate "Support for ST SPEAr on-chip OHCI USB controller"
41388eaaeccSKrzysztof Kozlowski	depends on USB_OHCI_HCD && (PLAT_SPEAR || COMPILE_TEST)
41488eaaeccSKrzysztof Kozlowski	default y if PLAT_SPEAR
4151cc6ac59SManjunath Goudar	---help---
4161cc6ac59SManjunath Goudar	  Enables support for the on-chip OHCI controller on
4171cc6ac59SManjunath Goudar	  ST SPEAr chips.
4181cc6ac59SManjunath Goudar
419905e300eSArnd Bergmannconfig USB_OHCI_HCD_STI
420905e300eSArnd Bergmann	tristate "Support for ST STiHxxx on-chip OHCI USB controller"
42188eaaeccSKrzysztof Kozlowski	depends on (ARCH_STI || COMPILE_TEST) && OF
422905e300eSArnd Bergmann	select GENERIC_PHY
423905e300eSArnd Bergmann	select USB_OHCI_HCD_PLATFORM
424905e300eSArnd Bergmann	help
425905e300eSArnd Bergmann	  Enable support for the on-chip OHCI controller found on
426905e300eSArnd Bergmann	  STMicroelectronics consumer electronics SoC's.
427905e300eSArnd Bergmann
428f23b71f3SManjunath Goudarconfig USB_OHCI_HCD_S3C2410
429f23b71f3SManjunath Goudar	tristate "OHCI support for Samsung S3C24xx/S3C64xx SoC series"
43088eaaeccSKrzysztof Kozlowski	depends on USB_OHCI_HCD && (ARCH_S3C24XX || ARCH_S3C64XX || COMPILE_TEST)
43188eaaeccSKrzysztof Kozlowski	default y if (ARCH_S3C24XX || ARCH_S3C64XX)
432f23b71f3SManjunath Goudar	---help---
433f23b71f3SManjunath Goudar	  Enables support for the on-chip OHCI controller on
434f23b71f3SManjunath Goudar	  S3C24xx/S3C64xx chips.
435f23b71f3SManjunath Goudar
43630330b8fSManjunath Goudarconfig USB_OHCI_HCD_LPC32XX
43730330b8fSManjunath Goudar	tristate "Support for LPC on-chip OHCI USB controller"
43823565baeSArnd Bergmann	depends on USB_OHCI_HCD
43923565baeSArnd Bergmann	depends on ARCH_LPC32XX || COMPILE_TEST
44038e0c109SArnd Bergmann	depends on USB_ISP1301
44130330b8fSManjunath Goudar	default y
44230330b8fSManjunath Goudar	---help---
44330330b8fSManjunath Goudar	  Enables support for the on-chip OHCI controller on
44430330b8fSManjunath Goudar	  NXP chips.
44530330b8fSManjunath Goudar
446b8ad5c37SManjunath Goudarconfig USB_OHCI_HCD_PXA27X
447b8ad5c37SManjunath Goudar	tristate "Support for PXA27X/PXA3XX on-chip OHCI USB controller"
448b8ad5c37SManjunath Goudar	depends on USB_OHCI_HCD && (PXA27x || PXA3xx)
449b8ad5c37SManjunath Goudar	default y
450b8ad5c37SManjunath Goudar	---help---
451b8ad5c37SManjunath Goudar	  Enables support for the on-chip OHCI controller on
452b8ad5c37SManjunath Goudar	  PXA27x/PXA3xx chips.
453b8ad5c37SManjunath Goudar
454e3825b48SManjunath Goudarconfig USB_OHCI_HCD_AT91
455e3825b48SManjunath Goudar	tristate "Support for Atmel on-chip OHCI USB controller"
45688eaaeccSKrzysztof Kozlowski	depends on USB_OHCI_HCD && (ARCH_AT91 || COMPILE_TEST) && OF
45788eaaeccSKrzysztof Kozlowski	default y if ARCH_AT91
458e3825b48SManjunath Goudar	---help---
459e3825b48SManjunath Goudar	  Enables support for the on-chip OHCI controller on
460e3825b48SManjunath Goudar	  Atmel chips.
461e3825b48SManjunath Goudar
462968b448bSAnand Gadiyarconfig USB_OHCI_HCD_OMAP3
4633a48fef1SManjunath Goudar	tristate "OHCI support for OMAP3 and later chips"
46488eaaeccSKrzysztof Kozlowski	depends on ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5 || COMPILE_TEST
465ef189c8dSTony Lindgren	select USB_OHCI_HCD_PLATFORM
46688eaaeccSKrzysztof Kozlowski	default y if ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5
467ef189c8dSTony Lindgren	help
468ef189c8dSTony Lindgren	  This option is deprecated now and the driver was removed, use
469ef189c8dSTony Lindgren	  USB_OHCI_HCD_PLATFORM instead.
470ef189c8dSTony Lindgren
471968b448bSAnand Gadiyar	  Enables support for the on-chip OHCI controller on
472968b448bSAnand Gadiyar	  OMAP3 and later chips.
473968b448bSAnand Gadiyar
474068413e9SArnd Bergmannconfig USB_OHCI_HCD_DAVINCI
4756c21caa3SManjunath Goudar	tristate "OHCI support for TI DaVinci DA8xx"
47688eaaeccSKrzysztof Kozlowski	depends on ARCH_DAVINCI_DA8XX || COMPILE_TEST
4776c21caa3SManjunath Goudar	depends on USB_OHCI_HCD
4786110c425SDavid Lechner	select PHY_DA8XX_USB
47988eaaeccSKrzysztof Kozlowski	default y if ARCH_DAVINCI_DA8XX
480068413e9SArnd Bergmann	help
481068413e9SArnd Bergmann	  Enables support for the DaVinci DA8xx integrated OHCI
482068413e9SArnd Bergmann	  controller. This driver cannot currently be a loadable
483068413e9SArnd Bergmann	  module because it lacks a proper PHY abstraction.
484068413e9SArnd Bergmann
485495a678fSSylvain Munautconfig USB_OHCI_HCD_PPC_OF_BE
48645e83889SArnd Bergmann	bool "OHCI support for OF platform bus (big endian)"
487c31316cbSKevin Hao	depends on PPC
488495a678fSSylvain Munaut	select USB_OHCI_BIG_ENDIAN_DESC
489495a678fSSylvain Munaut	select USB_OHCI_BIG_ENDIAN_MMIO
49045e83889SArnd Bergmann	---help---
49145e83889SArnd Bergmann	  Enables support for big-endian USB controllers present on the
49245e83889SArnd Bergmann	  OpenFirmware platform bus.
493495a678fSSylvain Munaut
494495a678fSSylvain Munautconfig USB_OHCI_HCD_PPC_OF_LE
49545e83889SArnd Bergmann	bool "OHCI support for OF platform bus (little endian)"
496c31316cbSKevin Hao	depends on PPC
497495a678fSSylvain Munaut	select USB_OHCI_LITTLE_ENDIAN
49845e83889SArnd Bergmann	---help---
49945e83889SArnd Bergmann	  Enables support for little-endian USB controllers present on the
50045e83889SArnd Bergmann	  OpenFirmware platform bus.
50145e83889SArnd Bergmann
50245e83889SArnd Bergmannconfig USB_OHCI_HCD_PPC_OF
50345e83889SArnd Bergmann	bool
504c31316cbSKevin Hao	depends on PPC
50545e83889SArnd Bergmann	default USB_OHCI_HCD_PPC_OF_BE || USB_OHCI_HCD_PPC_OF_LE
506495a678fSSylvain Munaut
5071da177e4SLinus Torvaldsconfig USB_OHCI_HCD_PCI
508c1117afbSManjunath Goudar	tristate "OHCI support for PCI-bus USB controllers"
5092c93e790Syuan linyu	depends on USB_PCI
5101da177e4SLinus Torvalds	default y
5111da177e4SLinus Torvalds	select USB_OHCI_LITTLE_ENDIAN
5121da177e4SLinus Torvalds	---help---
5131da177e4SLinus Torvalds	  Enables support for PCI-bus plug-in USB controller cards.
5141da177e4SLinus Torvalds	  If unsure, say Y.
5151da177e4SLinus Torvalds
516c604e851SMichael Bueschconfig USB_OHCI_HCD_SSB
517259b83a3SHauke Mehrtens	bool "OHCI support for Broadcom SSB OHCI core (DEPRECATED)"
5183ad3ca05SFlorian Fainelli	depends on (SSB = y || SSB = USB_OHCI_HCD)
519259b83a3SHauke Mehrtens	select USB_HCD_SSB
520259b83a3SHauke Mehrtens	select USB_OHCI_HCD_PLATFORM
521c604e851SMichael Buesch	---help---
522259b83a3SHauke Mehrtens	  This option is deprecated now and the driver was removed, use
523259b83a3SHauke Mehrtens	  USB_HCD_SSB and USB_OHCI_HCD_PLATFORM instead.
524259b83a3SHauke Mehrtens
525c604e851SMichael Buesch	  Support for the Sonics Silicon Backplane (SSB) attached
526c604e851SMichael Buesch	  Broadcom USB OHCI core.
527c604e851SMichael Buesch
528c604e851SMichael Buesch	  This device is present in some embedded devices with
529c604e851SMichael Buesch	  Broadcom based SSB bus.
530c604e851SMichael Buesch
531c604e851SMichael Buesch	  If unsure, say N.
532c604e851SMichael Buesch
53360b0bf0fSYoshihiro Shimodaconfig USB_OHCI_SH
534231a72e0SFlorian Fainelli	bool "OHCI support for SuperH USB controller (DEPRECATED)"
53588eaaeccSKrzysztof Kozlowski	depends on SUPERH || COMPILE_TEST
536231a72e0SFlorian Fainelli	select USB_OHCI_HCD_PLATFORM
53760b0bf0fSYoshihiro Shimoda	---help---
538231a72e0SFlorian Fainelli	  This option is deprecated now and the driver was removed, use
539231a72e0SFlorian Fainelli	  USB_OHCI_HCD_PLATFORM instead.
540231a72e0SFlorian Fainelli
54160b0bf0fSYoshihiro Shimoda	  Enables support for the on-chip OHCI controller on the SuperH.
54260b0bf0fSYoshihiro Shimoda	  If you use the PCI OHCI controller, this option is not necessary.
54360b0bf0fSYoshihiro Shimoda
54462194244SJingoo Hanconfig USB_OHCI_EXYNOS
545*dea7b202SKrzysztof Kozlowski	tristate "OHCI support for Samsung S5P/Exynos SoC Series"
54688eaaeccSKrzysztof Kozlowski	depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
54762194244SJingoo Han	help
54862194244SJingoo Han	  Enable support for the Samsung Exynos SOC's on-chip OHCI controller.
54962194244SJingoo Han
550760efe69SMac Linconfig USB_CNS3XXX_OHCI
551c23920b0SFlorian Fainelli	bool "Cavium CNS3XXX OHCI Module (DEPRECATED)"
55288eaaeccSKrzysztof Kozlowski	depends on ARCH_CNS3XXX || COMPILE_TEST
553c23920b0SFlorian Fainelli	select USB_OHCI_HCD_PLATFORM
554760efe69SMac Lin	---help---
555c23920b0SFlorian Fainelli	  This option is deprecated now and the driver was removed, use
556c23920b0SFlorian Fainelli	  USB_OHCI_HCD_PLATFORM instead.
557c23920b0SFlorian Fainelli
558760efe69SMac Lin	  Enable support for the CNS3XXX SOC's on-chip OHCI controller.
559760efe69SMac Lin	  It is needed for low-speed USB 1.0 device support.
560760efe69SMac Lin
561fa3364b5SHauke Mehrtensconfig USB_OHCI_HCD_PLATFORM
562928fb68eSManjunath Goudar	tristate "Generic OHCI driver for a platform device"
563fa3364b5SHauke Mehrtens	---help---
564fa3364b5SHauke Mehrtens	  Adds an OHCI host driver for a generic platform device, which
565898d828bSPeter Meerwald	  provides a memory space and an irq.
566fa3364b5SHauke Mehrtens
567fa3364b5SHauke Mehrtens	  If unsure, say N.
568fa3364b5SHauke Mehrtens
5693ad3ca05SFlorian Fainelliconfig USB_OCTEON_OHCI
5702193dda5SAlan Stern	bool "Octeon on-chip OHCI support (DEPRECATED)"
5719ddebc46SDavid Daney	depends on CAVIUM_OCTEON_SOC
5723ad3ca05SFlorian Fainelli	default USB_OCTEON_EHCI
573df115f3eSBen Hutchings	select USB_OHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
5743ad3ca05SFlorian Fainelli	select USB_OHCI_LITTLE_ENDIAN
5752193dda5SAlan Stern	select USB_OHCI_HCD_PLATFORM
5763ad3ca05SFlorian Fainelli	help
5772193dda5SAlan Stern	  This option is deprecated now and the driver was removed, use
5782193dda5SAlan Stern	  USB_OHCI_HCD_PLATFORM instead.
5792193dda5SAlan Stern
5803ad3ca05SFlorian Fainelli	  Enable support for the Octeon II SOC's on-chip OHCI
5813ad3ca05SFlorian Fainelli	  controller.  It is needed for low-speed USB 1.0 device
5823ad3ca05SFlorian Fainelli	  support.  All CN6XXX based chips with USB are supported.
5833ad3ca05SFlorian Fainelli
5843ad3ca05SFlorian Fainelliendif # USB_OHCI_HCD
5853ad3ca05SFlorian Fainelli
5861da177e4SLinus Torvaldsconfig USB_UHCI_HCD
5871da177e4SLinus Torvalds	tristate "UHCI HCD (most Intel and VIA) support"
5882c93e790Syuan linyu	depends on USB_PCI || USB_UHCI_SUPPORT_NON_PCI_HC
5891da177e4SLinus Torvalds	---help---
5901da177e4SLinus Torvalds	  The Universal Host Controller Interface is a standard by Intel for
5911da177e4SLinus Torvalds	  accessing the USB hardware in the PC (which is also called the USB
5921da177e4SLinus Torvalds	  host controller). If your USB host controller conforms to this
5931da177e4SLinus Torvalds	  standard, you may want to say Y, but see below. All recent boards
5941da177e4SLinus Torvalds	  with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX,
5951da177e4SLinus Torvalds	  i810, i820) conform to this standard. Also all VIA PCI chipsets
5961da177e4SLinus Torvalds	  (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro
5973db7739cSJan Andersson	  133) and LEON/GRLIB SoCs with the GRUSBHC controller.
5983db7739cSJan Andersson	  If unsure, say Y.
5991da177e4SLinus Torvalds
6001da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
6011da177e4SLinus Torvalds	  module will be called uhci-hcd.
6021da177e4SLinus Torvalds
603d3219d1cSJan Anderssonconfig USB_UHCI_SUPPORT_NON_PCI_HC
604d3219d1cSJan Andersson	bool
605ccd9509aSAlan Stern	default y if (SPARC_LEON || USB_UHCI_PLATFORM)
606100d4597STony Prisk
607100d4597STony Priskconfig USB_UHCI_PLATFORM
608ccd9509aSAlan Stern	bool
6094642d34aSBenjamin Herrenschmidt	default y if (ARCH_VT8500 || ARCH_ASPEED)
6104642d34aSBenjamin Herrenschmidt
6114642d34aSBenjamin Herrenschmidtconfig USB_UHCI_ASPEED
6124642d34aSBenjamin Herrenschmidt	bool
6134642d34aSBenjamin Herrenschmidt	default y if ARCH_ASPEED
614d3219d1cSJan Andersson
615236dd4d1SAnton Vorontsovconfig USB_FHCI_HCD
616236dd4d1SAnton Vorontsov	tristate "Freescale QE USB Host Controller support"
61725e11ec4SFlorian Fainelli	depends on OF_GPIO && QE_GPIO && QUICC_ENGINE
618236dd4d1SAnton Vorontsov	select FSL_GTM
619236dd4d1SAnton Vorontsov	select QE_USB
620236dd4d1SAnton Vorontsov	help
621236dd4d1SAnton Vorontsov	  This driver enables support for Freescale QE USB Host Controller
622236dd4d1SAnton Vorontsov	  (as found on MPC8360 and MPC8323 processors), the driver supports
623236dd4d1SAnton Vorontsov	  Full and Low Speed USB.
624236dd4d1SAnton Vorontsov
625236dd4d1SAnton Vorontsovconfig FHCI_DEBUG
626236dd4d1SAnton Vorontsov	bool "Freescale QE USB Host Controller debug support"
627236dd4d1SAnton Vorontsov	depends on USB_FHCI_HCD && DEBUG_FS
628236dd4d1SAnton Vorontsov	help
629236dd4d1SAnton Vorontsov	  Say "y" to see some FHCI debug information and statistics
63025985edcSLucas De Marchi	  through debugfs.
631236dd4d1SAnton Vorontsov
632d774efeaSTony Olechconfig USB_U132_HCD
633d774efeaSTony Olech	tristate "Elan U132 Adapter Host Controller"
63425e11ec4SFlorian Fainelli	depends on USB_FTDI_ELAN
635d774efeaSTony Olech	help
636d774efeaSTony Olech	  The U132 adapter is a USB to CardBus adapter specifically designed
637d774efeaSTony Olech	  for PC cards that contain an OHCI host controller. Typical PC cards
638d774efeaSTony Olech	  are the Orange Mobile 3G Option GlobeTrotter Fusion card. The U132
639d774efeaSTony Olech	  adapter will *NOT* work with PC cards that do not contain an OHCI
640d774efeaSTony Olech	  controller.
641d774efeaSTony Olech
6423cb2fcccSMatt LaPlante	  For those PC cards that contain multiple OHCI controllers only the
643d774efeaSTony Olech	  first one is used.
644d774efeaSTony Olech
645d774efeaSTony Olech	  The driver consists of two modules, the "ftdi-elan" module is a
646d774efeaSTony Olech	  USB client driver that interfaces to the FTDI chip within ELAN's
647d774efeaSTony Olech	  USB-to-PCMCIA adapter, and this "u132-hcd" module is a USB host
648d774efeaSTony Olech	  controller driver that talks to the OHCI controller within the
649d774efeaSTony Olech	  CardBus cards that are inserted in the U132 adapter.
650d774efeaSTony Olech
651d774efeaSTony Olech	  This driver has been tested with a CardBus OHCI USB adapter, and
652d774efeaSTony Olech	  worked with a USB PEN Drive inserted into the first USB port of
653d774efeaSTony Olech	  the PCCARD. A rather pointless thing to do, but useful for testing.
654d774efeaSTony Olech
655d774efeaSTony Olech	  It is safe to say M here.
656d774efeaSTony Olech
657d774efeaSTony Olech	  See also <http://www.elandigitalsystems.com/support/ufaq/u132linux.php>
658d774efeaSTony Olech
6591da177e4SLinus Torvaldsconfig USB_SL811_HCD
6601da177e4SLinus Torvalds	tristate "SL811HS HCD support"
661cfa33eaeSVegard Nossum	depends on HAS_IOMEM
6621da177e4SLinus Torvalds	help
6631da177e4SLinus Torvalds	  The SL811HS is a single-port USB controller that supports either
6641da177e4SLinus Torvalds	  host side or peripheral side roles.  Enable this option if your
6651da177e4SLinus Torvalds	  board has this chip, and you want to use it as a host controller.
6661da177e4SLinus Torvalds	  If unsure, say N.
6671da177e4SLinus Torvalds
6681da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
6691da177e4SLinus Torvalds	  module will be called sl811-hcd.
6701da177e4SLinus Torvalds
671ad7c56f0SMike Frysingerconfig USB_SL811_HCD_ISO
672ad7c56f0SMike Frysinger	bool "partial ISO support"
673ad7c56f0SMike Frysinger	depends on USB_SL811_HCD
674ad7c56f0SMike Frysinger	help
675ad7c56f0SMike Frysinger	  The driver doesn't support iso_frame_desc (yet), but for some simple
676ad7c56f0SMike Frysinger	  devices that just queue one ISO frame per URB, then ISO transfers
677ad7c56f0SMike Frysinger	  "should" work using the normal urb status fields.
678ad7c56f0SMike Frysinger
679ad7c56f0SMike Frysinger	  If unsure, say N.
680ad7c56f0SMike Frysinger
681c6de2b64SDavid Brownellconfig USB_SL811_CS
682c6de2b64SDavid Brownell	tristate "CF/PCMCIA support for SL811HS HCD"
683c6de2b64SDavid Brownell	depends on USB_SL811_HCD && PCMCIA
684c6de2b64SDavid Brownell	help
685c6de2b64SDavid Brownell	  Wraps a PCMCIA driver around the SL811HS HCD, supporting the RATOC
686c6de2b64SDavid Brownell	  REX-CFU1U CF card (often used with PDAs).  If unsure, say N.
687c6de2b64SDavid Brownell
688c6de2b64SDavid Brownell	  To compile this driver as a module, choose M here: the
689c6de2b64SDavid Brownell	  module will be called "sl811_cs".
690c6de2b64SDavid Brownell
6915d304358SYoshihiro Shimodaconfig USB_R8A66597_HCD
692fa0de2b6SM4rkusXXL	tristate "R8A66597 HCD support"
693e37a6c92SVegard Nossum	depends on HAS_IOMEM
6945d304358SYoshihiro Shimoda	help
6955d304358SYoshihiro Shimoda	  The R8A66597 is a USB 2.0 host and peripheral controller.
6965d304358SYoshihiro Shimoda
6975d304358SYoshihiro Shimoda	  Enable this option if your board has this chip, and you want
6985d304358SYoshihiro Shimoda	  to use it as a host controller.  If unsure, say N.
6995d304358SYoshihiro Shimoda
7005d304358SYoshihiro Shimoda	  To compile this driver as a module, choose M here: the
7015d304358SYoshihiro Shimoda	  module will be called r8a66597-hcd.
7025d304358SYoshihiro Shimoda
703034d7c13SKuninori Morimotoconfig USB_RENESAS_USBHS_HCD
704034d7c13SKuninori Morimoto	tristate "Renesas USBHS HCD support"
705034d7c13SKuninori Morimoto	depends on USB_RENESAS_USBHS
706034d7c13SKuninori Morimoto	help
707034d7c13SKuninori Morimoto	  The Renesas USBHS is a USB 2.0 host and peripheral controller.
708034d7c13SKuninori Morimoto
709034d7c13SKuninori Morimoto	  Enable this option if your board has this chip, and you want
710034d7c13SKuninori Morimoto	  to use it as a host controller.  If unsure, say N.
711034d7c13SKuninori Morimoto
712034d7c13SKuninori Morimoto	  To compile this driver as a module, choose M here: the
713034d7c13SKuninori Morimoto	  module will be called renesas-usbhs.
714034d7c13SKuninori Morimoto
71523d3e7a6SMartin Fuzzeyconfig USB_IMX21_HCD
7165de9ec4dSSascha Hauer	tristate "i.MX21 HCD support"
71725e11ec4SFlorian Fainelli	depends on ARM && ARCH_MXC
71823d3e7a6SMartin Fuzzey	help
71923d3e7a6SMartin Fuzzey	  This driver enables support for the on-chip USB host in the
7205de9ec4dSSascha Hauer	  i.MX21 processor.
72123d3e7a6SMartin Fuzzey
72223d3e7a6SMartin Fuzzey	  To compile this driver as a module, choose M here: the
72323d3e7a6SMartin Fuzzey	  module will be called "imx21-hcd".
72423d3e7a6SMartin Fuzzey
72562e11d1bSHauke Mehrtensconfig USB_HCD_BCMA
72662e11d1bSHauke Mehrtens	tristate "BCMA usb host driver"
727eb83be98SGreg Kroah-Hartman	depends on BCMA
72862e11d1bSHauke Mehrtens	select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
72962e11d1bSHauke Mehrtens	select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
73062e11d1bSHauke Mehrtens	help
73171c421dbSJesper Dangaard Brouer	  Enable support for the EHCI and OCHI host controller on an bcma bus.
73262e11d1bSHauke Mehrtens	  It converts the bcma driver into two platform device drivers
73362e11d1bSHauke Mehrtens	  for ehci and ohci.
73462e11d1bSHauke Mehrtens
73562e11d1bSHauke Mehrtens	  If unsure, say N.
7367043c2ccSHauke Mehrtens
7377043c2ccSHauke Mehrtensconfig USB_HCD_SSB
7387043c2ccSHauke Mehrtens	tristate "SSB usb host driver"
739eb83be98SGreg Kroah-Hartman	depends on SSB
7407043c2ccSHauke Mehrtens	select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
7417043c2ccSHauke Mehrtens	select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
7427043c2ccSHauke Mehrtens	help
74371c421dbSJesper Dangaard Brouer	  Enable support for the EHCI and OCHI host controller on an bcma bus.
7447043c2ccSHauke Mehrtens	  It converts the bcma driver into two platform device drivers
7457043c2ccSHauke Mehrtens	  for ehci and ohci.
7467043c2ccSHauke Mehrtens
7477043c2ccSHauke Mehrtens	  If unsure, say N.
748726a85caSJack Pham
749726a85caSJack Phamconfig USB_HCD_TEST_MODE
750726a85caSJack Pham	bool "HCD test mode support"
751726a85caSJack Pham	---help---
752726a85caSJack Pham	  Say 'Y' to enable additional software test modes that may be
753726a85caSJack Pham	  supported by the host controller drivers.
754726a85caSJack Pham
755726a85caSJack Pham	  One such test mode is the Embedded High-speed Host Electrical Test
756726a85caSJack Pham	  (EHSET) for EHCI host controller hardware, specifically the "Single
757726a85caSJack Pham	  Step Set Feature" test.  Typically this will be enabled for On-the-Go
758726a85caSJack Pham	  or embedded hosts that need to undergo USB-IF compliance testing with
759726a85caSJack Pham	  the aid of special testing hardware.  In the future, this may expand
760726a85caSJack Pham	  to include other tests that require support from a HCD driver.
761726a85caSJack Pham
762726a85caSJack Pham	  This option is of interest only to developers who need to validate
763726a85caSJack Pham	  their USB hardware designs.  It is not needed for normal use.  If
764726a85caSJack Pham	  unsure, say N.
765