xref: /linux/drivers/usb/host/Kconfig (revision 1ea35b355722675b3b654475a37898742731d016)
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
23a7f7f624SMasahiro Yamada	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
34a7f7f624SMasahiro Yamada	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
43df00731cSVinod Koul	depends on USB_XHCI_PCI_RENESAS || !USB_XHCI_PCI_RENESAS
4429e409f0SAndrew Bresticker	default y
4529e409f0SAndrew Bresticker
468bd5741eSChristian Lamparterconfig USB_XHCI_PCI_RENESAS
47cda37dbbSColin Ian King	tristate "Support for additional Renesas xHCI controller with firmware"
48a7f7f624SMasahiro Yamada	help
498bd5741eSChristian Lamparter	  Say 'Y' to enable the support for the Renesas xHCI controller with
504e74b483SColin Ian King	  firmware. Make sure you have the firmware for the device and
518bd5741eSChristian Lamparter	  installed on your system for this device to work.
528bd5741eSChristian Lamparter	  If unsure, say 'N'.
538bd5741eSChristian Lamparter
543429e91aSSebastian Andrzej Siewiorconfig USB_XHCI_PLATFORM
556c05cb14SRafał Miłecki	tristate "Generic xHCI driver for a platform device"
56f879fc32SYoshihiro Shimoda	select USB_XHCI_RCAR if ARCH_RENESAS
57a7f7f624SMasahiro Yamada	help
586c05cb14SRafał Miłecki	  Adds an xHCI host driver for a generic platform device, which
596c05cb14SRafał Miłecki	  provides a memory space and an irq.
606c05cb14SRafał Miłecki	  It is also a prerequisite for platform specific drivers that
616c05cb14SRafał Miłecki	  implement some extra quirks.
626c05cb14SRafał Miłecki
636c05cb14SRafał Miłecki	  If unsure, say N.
643429e91aSSebastian Andrzej Siewior
65c508f41dSJianguo Sunconfig USB_XHCI_HISTB
66c508f41dSJianguo Sun	tristate "xHCI support for HiSilicon STB SoCs"
67c508f41dSJianguo Sun	depends on USB_XHCI_PLATFORM && (ARCH_HISI || COMPILE_TEST)
68c508f41dSJianguo Sun	help
69c508f41dSJianguo Sun	  Say 'Y' to enable the support for the xHCI host controller
70c508f41dSJianguo Sun	  found in HiSilicon STB SoCs.
71c508f41dSJianguo Sun
720cbd4b34SChunfeng Yunconfig USB_XHCI_MTK
737b81a586SChunfeng Yun	tristate "xHCI support for MediaTek SoCs"
740cbd4b34SChunfeng Yun	select MFD_SYSCON
75808cf33dSJohn Crispin	depends on (MIPS && SOC_MT7621) || ARCH_MEDIATEK || COMPILE_TEST
76a7f7f624SMasahiro Yamada	help
770cbd4b34SChunfeng Yun	  Say 'Y' to enable the support for the xHCI host controller
787b81a586SChunfeng Yun	  found in MediaTek SoCs.
790cbd4b34SChunfeng Yun	  If unsure, say N.
800cbd4b34SChunfeng Yun
8197374792SGregory CLEMENTconfig USB_XHCI_MVEBU
8212453a89SOfer Heifetz	tristate "xHCI support for Marvell Armada 375/38x/37xx"
8397374792SGregory CLEMENT	select USB_XHCI_PLATFORM
84828638e9SVegard Nossum	depends on HAS_IOMEM
8597374792SGregory CLEMENT	depends on ARCH_MVEBU || COMPILE_TEST
86a7f7f624SMasahiro Yamada	help
8797374792SGregory CLEMENT	  Say 'Y' to enable the support for the xHCI host controller
8812453a89SOfer Heifetz	  found in Marvell Armada 375/38x/37xx ARM SOCs.
8997374792SGregory CLEMENT
904ac8918fSYoshihiro Shimodaconfig USB_XHCI_RCAR
914ac8918fSYoshihiro Shimoda	tristate "xHCI support for Renesas R-Car SoCs"
92f879fc32SYoshihiro Shimoda	depends on USB_XHCI_PLATFORM
936edd87f5SSimon Horman	depends on ARCH_RENESAS || COMPILE_TEST
94a7f7f624SMasahiro Yamada	help
954ac8918fSYoshihiro Shimoda	  Say 'Y' to enable the support for the xHCI host controller
964ac8918fSYoshihiro Shimoda	  found in Renesas R-Car ARM SoCs.
974ac8918fSYoshihiro Shimoda
98e84fce0fSThierry Redingconfig USB_XHCI_TEGRA
99e84fce0fSThierry Reding	tristate "xHCI support for NVIDIA Tegra SoCs"
100e84fce0fSThierry Reding	depends on PHY_TEGRA_XUSB
101e84fce0fSThierry Reding	depends on RESET_CONTROLLER
102e84fce0fSThierry Reding	select FW_LOADER
103a7f7f624SMasahiro Yamada	help
104e84fce0fSThierry Reding	  Say 'Y' to enable the support for the xHCI host controller
105e84fce0fSThierry Reding	  found in NVIDIA Tegra124 and later SoCs.
106e84fce0fSThierry Reding
1070fcb9989SFlorian Fainelliendif # USB_XHCI_HCD
1080fcb9989SFlorian Fainelli
109c33f4f24SAl Cooperconfig USB_EHCI_BRCMSTB
110c33f4f24SAl Cooper       tristate
111c33f4f24SAl Cooper
112c33f4f24SAl Cooperconfig USB_BRCMSTB
113c33f4f24SAl Cooper	tristate "Broadcom STB USB support"
114c33f4f24SAl Cooper	depends on (ARCH_BRCMSTB && PHY_BRCM_USB) || COMPILE_TEST
115c33f4f24SAl Cooper	select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
116c33f4f24SAl Cooper	select USB_EHCI_BRCMSTB if USB_EHCI_HCD
117c33f4f24SAl Cooper	select USB_XHCI_PLATFORM if USB_XHCI_HCD
118c33f4f24SAl Cooper	help
119c33f4f24SAl Cooper	  Enables support for XHCI, EHCI and OHCI host controllers
120c33f4f24SAl Cooper	  found in Broadcom STB SoC's.
121c33f4f24SAl Cooper
122c33f4f24SAl Cooper	  To compile these drivers as modules, choose M here: the
123c33f4f24SAl Cooper	  modules will be called ohci-platform.ko, ehci-brcm.ko and
124c33f4f24SAl Cooper	  xhci-plat-hcd.ko
125c33f4f24SAl Cooper
126c33f4f24SAl Cooper	  Disabling this will keep the controllers and corresponding
127c33f4f24SAl Cooper	  PHYs powered down.
128c33f4f24SAl Cooper
1291da177e4SLinus Torvaldsconfig USB_EHCI_HCD
1301da177e4SLinus Torvalds	tristate "EHCI HCD (USB 2.0) support"
131cf34be7aSGeert Uytterhoeven	depends on HAS_DMA && HAS_IOMEM
132a7f7f624SMasahiro Yamada	help
1331da177e4SLinus Torvalds	  The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0
1341da177e4SLinus Torvalds	  "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware.
1351da177e4SLinus Torvalds	  If your USB host controller supports USB 2.0, you will likely want to
136b967c88eSThierry Vignaud	  configure this Host Controller Driver.
1371da177e4SLinus Torvalds
1381da177e4SLinus Torvalds	  EHCI controllers are packaged with "companion" host controllers (OHCI
1391da177e4SLinus Torvalds	  or UHCI) to handle USB 1.1 devices connected to root hub ports.  Ports
140b3c29d85SJesper Juhl	  will connect to EHCI if the device is high speed, otherwise they
1411da177e4SLinus Torvalds	  connect to a companion controller.  If you configure EHCI, you should
1421da177e4SLinus Torvalds	  probably configure the OHCI (for NEC and some other vendors) USB Host
1431da177e4SLinus Torvalds	  Controller Driver or UHCI (for Via motherboards) Host Controller
1441da177e4SLinus Torvalds	  Driver too.
1451da177e4SLinus Torvalds
146ecefae6dSMauro Carvalho Chehab	  You may want to read <file:Documentation/usb/ehci.rst>.
1471da177e4SLinus Torvalds
1481da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1491da177e4SLinus Torvalds	  module will be called ehci-hcd.
1501da177e4SLinus Torvalds
1511da177e4SLinus Torvaldsconfig USB_EHCI_ROOT_HUB_TT
1529ec249a6SRobert P. J. Day	bool "Root Hub Transaction Translators"
153a746c286SPeter Chen	depends on USB_EHCI_HCD
154a7f7f624SMasahiro Yamada	help
1551da177e4SLinus Torvalds	  Some EHCI chips have vendor-specific extensions to integrate
1561da177e4SLinus Torvalds	  transaction translators, so that no OHCI or UHCI companion
1571da177e4SLinus Torvalds	  controller is needed.  It's safe to say "y" even if your
1581da177e4SLinus Torvalds	  controller doesn't support this feature.
1591da177e4SLinus Torvalds
160ba47f66bSDan Streetman	  This supports the EHCI implementation that's originally
161ba47f66bSDan Streetman	  from ARC, and has since changed hands a few times.
162ba47f66bSDan Streetman
163ba47f66bSDan Streetmanconfig USB_EHCI_TT_NEWSCHED
16437cd681cSAlan Stern	bool "Improved Transaction Translator scheduling"
165a746c286SPeter Chen	depends on USB_EHCI_HCD
16637cd681cSAlan Stern	default y
167a7f7f624SMasahiro Yamada	help
168ba47f66bSDan Streetman	  This changes the periodic scheduling code to fill more of the low
169ba47f66bSDan Streetman	  and full speed bandwidth available from the Transaction Translator
170ba47f66bSDan Streetman	  (TT) in USB 2.0 hubs.  Without this, only one transfer will be
171ba47f66bSDan Streetman	  issued in each microframe, significantly reducing the number of
172ba47f66bSDan Streetman	  periodic low/fullspeed transfers possible.
173ba47f66bSDan Streetman
174ba47f66bSDan Streetman	  If you have multiple periodic low/fullspeed devices connected to a
175ba47f66bSDan Streetman	  highspeed USB hub which is connected to a highspeed USB Host
176ba47f66bSDan Streetman	  Controller, and some of those devices will not work correctly
17737cd681cSAlan Stern	  (possibly due to "ENOSPC" or "-28" errors), say Y.  Conversely, if
17837cd681cSAlan Stern	  you have only one such device and it doesn't work, you could try
17937cd681cSAlan Stern	  saying N.
180ba47f66bSDan Streetman
18137cd681cSAlan Stern	  If unsure, say Y.
1821da177e4SLinus Torvalds
18342443dc4SFlorian Fainelliif USB_EHCI_HCD
18442443dc4SFlorian Fainelli
185adfa79d1SAlan Sternconfig USB_EHCI_PCI
186adfa79d1SAlan Stern	tristate
1872c93e790Syuan linyu	depends on USB_PCI
188adfa79d1SAlan Stern	default y
189adfa79d1SAlan Stern
19008d3c18eSJulie Zhuconfig XPS_USB_HCD_XILINX
19108d3c18eSJulie Zhu	bool "Use Xilinx usb host EHCI controller core"
19242443dc4SFlorian Fainelli	depends on (PPC32 || MICROBLAZE)
19308d3c18eSJulie Zhu	select USB_EHCI_BIG_ENDIAN_DESC
19408d3c18eSJulie Zhu	select USB_EHCI_BIG_ENDIAN_MMIO
195a7f7f624SMasahiro Yamada	help
196f54619f2SMasanari Iida		Xilinx xps USB host controller core is EHCI compliant and has
19708d3c18eSJulie Zhu		transaction translator built-in. It can be configured to either
19808d3c18eSJulie Zhu		support both high speed and full speed devices, or high speed
19908d3c18eSJulie Zhu		devices only.
20008d3c18eSJulie Zhu
201ba02978aSLi Yangconfig USB_EHCI_FSL
20273855109SRan Wang	tristate "Support for Freescale on-chip EHCI USB controller"
203ba02978aSLi Yang	select USB_EHCI_ROOT_HUB_TT
204a7f7f624SMasahiro Yamada	help
205ba02978aSLi Yang	  Variation of ARC USB block used in some Freescale chips.
206ba02978aSLi Yang
207df44831eSAvi Fishmanconfig USB_EHCI_HCD_NPCM7XX
208b6caf79dSTomer Maimon	tristate "Support for Nuvoton NPCM on-chip EHCI USB controller"
209b6caf79dSTomer Maimon	depends on (USB_EHCI_HCD && ARCH_NPCM) || COMPILE_TEST
210b6caf79dSTomer Maimon	default y if (USB_EHCI_HCD && ARCH_NPCM)
211df44831eSAvi Fishman	help
212df44831eSAvi Fishman	  Enables support for the on-chip EHCI controller on
213b6caf79dSTomer Maimon	  Nuvoton NPCM chips.
214df44831eSAvi Fishman
2157f124f4bSKeshava Munegowdaconfig USB_EHCI_HCD_OMAP
21654a41966SAlan Stern	tristate "EHCI support for OMAP3 and later chips"
21711e00292SArnd Bergmann	depends on ARCH_OMAP || COMPILE_TEST
2185a8d651aSFelipe Balbi	depends on NOP_USB_XCEIV
2197f124f4bSKeshava Munegowda	default y
220a7f7f624SMasahiro Yamada	help
2217f124f4bSKeshava Munegowda	  Enables support for the on-chip EHCI controller on
2227f124f4bSKeshava Munegowda	  OMAP3 and later chips.
2237f124f4bSKeshava Munegowda
224a76dd463SManjunath Goudarconfig USB_EHCI_HCD_ORION
225a76dd463SManjunath Goudar	tristate  "Support for Marvell EBU on-chip EHCI USB controller"
22688eaaeccSKrzysztof Kozlowski	depends on USB_EHCI_HCD && (PLAT_ORION || ARCH_MVEBU || COMPILE_TEST)
22788eaaeccSKrzysztof Kozlowski	default y if (PLAT_ORION || ARCH_MVEBU)
228a7f7f624SMasahiro Yamada	help
229a76dd463SManjunath Goudar	  Enables support for the on-chip EHCI controller on Marvell's
230a76dd463SManjunath Goudar	  embedded ARM SoCs, including Orion, Kirkwood, Dove, Armada XP,
231a76dd463SManjunath Goudar	  Armada 370.  This is different from the EHCI implementation
232a76dd463SManjunath Goudar	  on Marvell's mobile PXA and MMP SoC, see "EHCI support for
233a76dd463SManjunath Goudar	  Marvell PXA/MMP USB controller" for those.
234a76dd463SManjunath Goudar
2357675d6baSManjunath Goudarconfig USB_EHCI_HCD_SPEAR
2367675d6baSManjunath Goudar	tristate "Support for ST SPEAr on-chip EHCI USB controller"
23788eaaeccSKrzysztof Kozlowski	depends on USB_EHCI_HCD && (PLAT_SPEAR || COMPILE_TEST)
23888eaaeccSKrzysztof Kozlowski	default y if PLAT_SPEAR
239a7f7f624SMasahiro Yamada	help
2407675d6baSManjunath Goudar	  Enables support for the on-chip EHCI controller on
2417675d6baSManjunath Goudar	  ST SPEAr chips.
2427675d6baSManjunath Goudar
243905e300eSArnd Bergmannconfig USB_EHCI_HCD_STI
244905e300eSArnd Bergmann	tristate "Support for ST STiHxxx on-chip EHCI USB controller"
24588eaaeccSKrzysztof Kozlowski	depends on (ARCH_STI || COMPILE_TEST) && OF
246905e300eSArnd Bergmann	select GENERIC_PHY
247905e300eSArnd Bergmann	select USB_EHCI_HCD_PLATFORM
248905e300eSArnd Bergmann	help
249905e300eSArnd Bergmann	  Enable support for the on-chip EHCI controller found on
250905e300eSArnd Bergmann	  STMicroelectronics consumer electronics SoC's.
251905e300eSArnd Bergmann
25297736961SManjunath Goudarconfig USB_EHCI_HCD_AT91
25397736961SManjunath Goudar	tristate  "Support for Atmel on-chip EHCI USB controller"
25488eaaeccSKrzysztof Kozlowski	depends on USB_EHCI_HCD && (ARCH_AT91 || COMPILE_TEST)
25588eaaeccSKrzysztof Kozlowski	default y if ARCH_AT91
256a7f7f624SMasahiro Yamada	help
25797736961SManjunath Goudar	  Enables support for the on-chip EHCI controller on
25897736961SManjunath Goudar	  Atmel chips.
25997736961SManjunath Goudar
26079ad3b5aSBenoit Gobyconfig USB_EHCI_TEGRA
2619fc5f24eSManjunath Goudar	tristate "NVIDIA Tegra HCD support"
26242443dc4SFlorian Fainelli	depends on ARCH_TEGRA
263c3590c76SDmitry Osipenko	select USB_CHIPIDEA
264c3590c76SDmitry Osipenko	select USB_CHIPIDEA_HOST
265c3590c76SDmitry Osipenko	select USB_CHIPIDEA_TEGRA
2660b982876SDmitry Osipenko	select USB_GADGET
26779ad3b5aSBenoit Goby	help
268c3590c76SDmitry Osipenko	  This option is deprecated now and the driver was removed, use
269c3590c76SDmitry Osipenko	  USB_CHIPIDEA_TEGRA instead.
270c3590c76SDmitry Osipenko
271c3590c76SDmitry Osipenko	  Enable support for the internal USB Host Controllers
27279ad3b5aSBenoit Goby	  found in NVIDIA Tegra SoCs. The controllers are EHCI compliant.
27379ad3b5aSBenoit Goby
274da0e8fb0SValentine Barshakconfig USB_EHCI_HCD_PPC_OF
275da0e8fb0SValentine Barshak	bool "EHCI support for PPC USB controller on OF platform bus"
276c31316cbSKevin Hao	depends on PPC
277da0e8fb0SValentine Barshak	default y
278a7f7f624SMasahiro Yamada	help
279da0e8fb0SValentine Barshak	  Enables support for the USB controller present on the PowerPC
280da0e8fb0SValentine Barshak	  OpenFirmware platform bus.
281da0e8fb0SValentine Barshak
28260b0bf0fSYoshihiro Shimodaconfig USB_EHCI_SH
28360b0bf0fSYoshihiro Shimoda	bool "EHCI support for SuperH USB controller"
28488eaaeccSKrzysztof Kozlowski	depends on SUPERH || COMPILE_TEST
285a7f7f624SMasahiro Yamada	help
28660b0bf0fSYoshihiro Shimoda	  Enables support for the on-chip EHCI controller on the SuperH.
28760b0bf0fSYoshihiro Shimoda	  If you use the PCI EHCI controller, this option is not necessary.
28860b0bf0fSYoshihiro Shimoda
28929824c16SJingoo Hanconfig USB_EHCI_EXYNOS
290dea7b202SKrzysztof Kozlowski	tristate "EHCI support for Samsung S5P/Exynos SoC Series"
29188eaaeccSKrzysztof Kozlowski	depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
2921bcc5aa8SJoonyoung Shim	help
2932abc8657SKrzysztof Kozlowski	  Enable support for the Samsung S5Pv210 and Exynos SOC's on-chip EHCI
2942abc8657SKrzysztof Kozlowski	  controller.
2951bcc5aa8SJoonyoung Shim
2963a082ec9SNeil Zhangconfig USB_EHCI_MV
2970440fa3dSLubomir Rintel	tristate "EHCI support for Marvell PXA/MMP USB controller"
29888eaaeccSKrzysztof Kozlowski	depends on ARCH_PXA || ARCH_MMP || COMPILE_TEST
2993a082ec9SNeil Zhang	select USB_EHCI_ROOT_HUB_TT
300a7f7f624SMasahiro Yamada	help
3013a082ec9SNeil Zhang	  Enables support for Marvell (including PXA and MMP series) on-chip
3023a082ec9SNeil Zhang	  USB SPH and OTG controller. SPH is a single port host, and it can
3033a082ec9SNeil Zhang	  only be EHCI host. OTG is controller that can switch to host mode.
304a76dd463SManjunath Goudar	  Note that this driver will not work on Marvell's other EHCI
305a76dd463SManjunath Goudar	  controller used by the EBU-type SoCs including Orion, Kirkwood,
306a76dd463SManjunath Goudar	  Dova, Armada 370 and Armada XP. See "Support for Marvell EBU
307a76dd463SManjunath Goudar	  on-chip EHCI USB controller" for those.
3083a082ec9SNeil Zhang
3099dbdac02SArtur Bujdosoconfig USB_OCTEON_HCD
3109dbdac02SArtur Bujdoso	tristate "Cavium Networks Octeon USB support"
3119dbdac02SArtur Bujdoso	depends on CAVIUM_OCTEON_SOC && USB
3129dbdac02SArtur Bujdoso	help
3139dbdac02SArtur Bujdoso	  This driver supports USB host controller on some Cavium
3149dbdac02SArtur Bujdoso	  Networks' products in the Octeon family.
3159dbdac02SArtur Bujdoso
3169dbdac02SArtur Bujdoso	  To compile this driver as a module, choose M here. The module
3179dbdac02SArtur Bujdoso	  will be called octeon-hcd.
3189dbdac02SArtur Bujdoso
31942443dc4SFlorian Fainelliconfig USB_EHCI_HCD_PLATFORM
32042443dc4SFlorian Fainelli	tristate "Generic EHCI driver for a platform device"
321a7f7f624SMasahiro Yamada	help
32242443dc4SFlorian Fainelli	  Adds an EHCI host driver for a generic platform device, which
32342443dc4SFlorian Fainelli	  provides a memory space and an irq.
32442443dc4SFlorian Fainelli
32542443dc4SFlorian Fainelli	  If unsure, say N.
32642443dc4SFlorian Fainelli
32742443dc4SFlorian Fainelliconfig USB_OCTEON_EHCI
3282193dda5SAlan Stern	bool "Octeon on-chip EHCI support (DEPRECATED)"
3294e52af1cSKrzysztof Kozlowski	depends on CAVIUM_OCTEON_SOC
330df115f3eSBen Hutchings	select USB_EHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
3312193dda5SAlan Stern	select USB_EHCI_HCD_PLATFORM
33242443dc4SFlorian Fainelli	help
3332193dda5SAlan Stern	  This option is deprecated now and the driver was removed, use
3342193dda5SAlan Stern	  USB_EHCI_HCD_PLATFORM instead.
3352193dda5SAlan Stern
33642443dc4SFlorian Fainelli	  Enable support for the Octeon II SOC's on-chip EHCI
33742443dc4SFlorian Fainelli	  controller.  It is needed for high-speed (480Mbit/sec)
33842443dc4SFlorian Fainelli	  USB 2.0 device support.  All CN6XXX based chips with USB are
33942443dc4SFlorian Fainelli	  supported.
34042443dc4SFlorian Fainelli
34142443dc4SFlorian Fainelliendif # USB_EHCI_HCD
34242443dc4SFlorian Fainelli
343b92a78e5SRodolfo Giometticonfig USB_OXU210HP_HCD
344b92a78e5SRodolfo Giometti	tristate "OXU210HP HCD support"
345f4a5d702SVegard Nossum	depends on HAS_IOMEM
346a7f7f624SMasahiro Yamada	help
347b92a78e5SRodolfo Giometti	  The OXU210HP is an USB host/OTG/device controller. Enable this
348b92a78e5SRodolfo Giometti	  option if your board has this chip. If unsure, say N.
349b92a78e5SRodolfo Giometti
350b92a78e5SRodolfo Giometti	  This driver does not support isochronous transfers and doesn't
351b92a78e5SRodolfo Giometti	  implement OTG nor USB device controllers.
352b92a78e5SRodolfo Giometti
353b92a78e5SRodolfo Giometti	  To compile this driver as a module, choose M here: the
354b92a78e5SRodolfo Giometti	  module will be called oxu210hp-hcd.
355b92a78e5SRodolfo Giometti
3564808a1c0SOlav Kongasconfig USB_ISP116X_HCD
3574808a1c0SOlav Kongas	tristate "ISP116X HCD support"
358ca23d3b7SVegard Nossum	depends on HAS_IOMEM
359a7f7f624SMasahiro Yamada	help
3604808a1c0SOlav Kongas	  The ISP1160 and ISP1161 chips are USB host controllers. Enable this
3614808a1c0SOlav Kongas	  option if your board has this chip. If unsure, say N.
3624808a1c0SOlav Kongas
3634808a1c0SOlav Kongas	  This driver does not support isochronous transfers.
3644808a1c0SOlav Kongas
3654808a1c0SOlav Kongas	  To compile this driver as a module, choose M here: the
3664808a1c0SOlav Kongas	  module will be called isp116x-hcd.
3674808a1c0SOlav Kongas
368a9d43091SLothar Wassmannconfig USB_ISP1362_HCD
369a9d43091SLothar Wassmann	tristate "ISP1362 HCD support"
3704a6d9f87SVegard Nossum	depends on HAS_IOMEM
371da2827a2SArnd Bergmann	depends on COMPILE_TEST # nothing uses this
372a7f7f624SMasahiro Yamada	help
373a9d43091SLothar Wassmann	  Supports the Philips ISP1362 chip as a host controller
374a9d43091SLothar Wassmann
375a9d43091SLothar Wassmann	  This driver does not support isochronous transfers.
376a9d43091SLothar Wassmann
377a9d43091SLothar Wassmann	  To compile this driver as a module, choose M here: the
378a9d43091SLothar Wassmann	  module will be called isp1362-hcd.
379a9d43091SLothar Wassmann
3802d53139fSDavid Mosbergerconfig USB_MAX3421_HCD
3812d53139fSDavid Mosberger	tristate "MAX3421 HCD (USB-over-SPI) support"
3822d53139fSDavid Mosberger	depends on USB && SPI
383a7f7f624SMasahiro Yamada	help
3842d53139fSDavid Mosberger	  The Maxim MAX3421E chip supports standard USB 2.0-compliant
3852d53139fSDavid Mosberger	  full-speed devices either in host or peripheral mode.  This
3862d53139fSDavid Mosberger	  driver supports the host-mode of the MAX3421E only.
3872d53139fSDavid Mosberger
3882d53139fSDavid Mosberger	  To compile this driver as a module, choose M here: the module will
3892d53139fSDavid Mosberger	  be called max3421-hcd.
3902d53139fSDavid Mosberger
3911da177e4SLinus Torvaldsconfig USB_OHCI_HCD
392c1117afbSManjunath Goudar	tristate "OHCI HCD (USB 1.1) support"
393cf34be7aSGeert Uytterhoeven	depends on HAS_DMA && HAS_IOMEM
394a7f7f624SMasahiro Yamada	help
3951da177e4SLinus Torvalds	  The Open Host Controller Interface (OHCI) is a standard for accessing
3961da177e4SLinus Torvalds	  USB 1.1 host controller hardware.  It does more in hardware than Intel's
3971da177e4SLinus Torvalds	  UHCI specification.  If your USB host controller follows the OHCI spec,
3981da177e4SLinus Torvalds	  say Y.  On most non-x86 systems, and on x86 hardware that's not using a
3991da177e4SLinus Torvalds	  USB controller from Intel or VIA, this is appropriate.  If your host
4001da177e4SLinus Torvalds	  controller doesn't use PCI, this is probably appropriate.  For a PCI
4011da177e4SLinus Torvalds	  based system where you're not sure, the "lspci -v" entry will list the
4021da177e4SLinus Torvalds	  right "prog-if" for your USB controller(s):  EHCI, OHCI, or UHCI.
4031da177e4SLinus Torvalds
4041da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
4051da177e4SLinus Torvalds	  module will be called ohci-hcd.
4061da177e4SLinus Torvalds
4073ad3ca05SFlorian Fainelliif USB_OHCI_HCD
4083ad3ca05SFlorian Fainelli
409968b448bSAnand Gadiyarconfig USB_OHCI_HCD_OMAP1
410de57a154SManjunath Goudar	tristate "OHCI support for OMAP1/2 chips"
4113ad3ca05SFlorian Fainelli	depends on ARCH_OMAP1
412968b448bSAnand Gadiyar	default y
413a7f7f624SMasahiro Yamada	help
414968b448bSAnand Gadiyar	  Enables support for the OHCI controller on OMAP1/2 chips.
415968b448bSAnand Gadiyar
4161cc6ac59SManjunath Goudarconfig USB_OHCI_HCD_SPEAR
4171cc6ac59SManjunath Goudar	tristate "Support for ST SPEAr on-chip OHCI USB controller"
41888eaaeccSKrzysztof Kozlowski	depends on USB_OHCI_HCD && (PLAT_SPEAR || COMPILE_TEST)
41988eaaeccSKrzysztof Kozlowski	default y if PLAT_SPEAR
420a7f7f624SMasahiro Yamada	help
4211cc6ac59SManjunath Goudar	  Enables support for the on-chip OHCI controller on
4221cc6ac59SManjunath Goudar	  ST SPEAr chips.
4231cc6ac59SManjunath Goudar
424905e300eSArnd Bergmannconfig USB_OHCI_HCD_STI
425905e300eSArnd Bergmann	tristate "Support for ST STiHxxx on-chip OHCI USB controller"
42688eaaeccSKrzysztof Kozlowski	depends on (ARCH_STI || COMPILE_TEST) && OF
427905e300eSArnd Bergmann	select GENERIC_PHY
428905e300eSArnd Bergmann	select USB_OHCI_HCD_PLATFORM
429905e300eSArnd Bergmann	help
430905e300eSArnd Bergmann	  Enable support for the on-chip OHCI controller found on
431905e300eSArnd Bergmann	  STMicroelectronics consumer electronics SoC's.
432905e300eSArnd Bergmann
433f23b71f3SManjunath Goudarconfig USB_OHCI_HCD_S3C2410
434*1ea35b35SArnd Bergmann	tristate "OHCI support for Samsung S3C64xx SoC series"
435*1ea35b35SArnd Bergmann	depends on USB_OHCI_HCD && (ARCH_S3C64XX || COMPILE_TEST)
436*1ea35b35SArnd Bergmann	default ARCH_S3C64XX
437a7f7f624SMasahiro Yamada	help
438f23b71f3SManjunath Goudar	  Enables support for the on-chip OHCI controller on
439*1ea35b35SArnd Bergmann	  S3C64xx chips.
440f23b71f3SManjunath Goudar
44130330b8fSManjunath Goudarconfig USB_OHCI_HCD_LPC32XX
44230330b8fSManjunath Goudar	tristate "Support for LPC on-chip OHCI USB controller"
44323565baeSArnd Bergmann	depends on USB_OHCI_HCD
44423565baeSArnd Bergmann	depends on ARCH_LPC32XX || COMPILE_TEST
44538e0c109SArnd Bergmann	depends on USB_ISP1301
44630330b8fSManjunath Goudar	default y
447a7f7f624SMasahiro Yamada	help
44830330b8fSManjunath Goudar	  Enables support for the on-chip OHCI controller on
44930330b8fSManjunath Goudar	  NXP chips.
45030330b8fSManjunath Goudar
451b8ad5c37SManjunath Goudarconfig USB_OHCI_HCD_PXA27X
452b8ad5c37SManjunath Goudar	tristate "Support for PXA27X/PXA3XX on-chip OHCI USB controller"
453b8ad5c37SManjunath Goudar	depends on USB_OHCI_HCD && (PXA27x || PXA3xx)
454b8ad5c37SManjunath Goudar	default y
455a7f7f624SMasahiro Yamada	help
456b8ad5c37SManjunath Goudar	  Enables support for the on-chip OHCI controller on
457b8ad5c37SManjunath Goudar	  PXA27x/PXA3xx chips.
458b8ad5c37SManjunath Goudar
459e3825b48SManjunath Goudarconfig USB_OHCI_HCD_AT91
460e3825b48SManjunath Goudar	tristate "Support for Atmel on-chip OHCI USB controller"
46188eaaeccSKrzysztof Kozlowski	depends on USB_OHCI_HCD && (ARCH_AT91 || COMPILE_TEST) && OF
46288eaaeccSKrzysztof Kozlowski	default y if ARCH_AT91
463a7f7f624SMasahiro Yamada	help
464e3825b48SManjunath Goudar	  Enables support for the on-chip OHCI controller on
465e3825b48SManjunath Goudar	  Atmel chips.
466e3825b48SManjunath Goudar
467968b448bSAnand Gadiyarconfig USB_OHCI_HCD_OMAP3
4683a48fef1SManjunath Goudar	tristate "OHCI support for OMAP3 and later chips"
46988eaaeccSKrzysztof Kozlowski	depends on ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5 || COMPILE_TEST
470ef189c8dSTony Lindgren	select USB_OHCI_HCD_PLATFORM
47188eaaeccSKrzysztof Kozlowski	default y if ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5
472ef189c8dSTony Lindgren	help
473ef189c8dSTony Lindgren	  This option is deprecated now and the driver was removed, use
474ef189c8dSTony Lindgren	  USB_OHCI_HCD_PLATFORM instead.
475ef189c8dSTony Lindgren
476968b448bSAnand Gadiyar	  Enables support for the on-chip OHCI controller on
477968b448bSAnand Gadiyar	  OMAP3 and later chips.
478968b448bSAnand Gadiyar
479068413e9SArnd Bergmannconfig USB_OHCI_HCD_DAVINCI
4806c21caa3SManjunath Goudar	tristate "OHCI support for TI DaVinci DA8xx"
48188eaaeccSKrzysztof Kozlowski	depends on ARCH_DAVINCI_DA8XX || COMPILE_TEST
4826c21caa3SManjunath Goudar	depends on USB_OHCI_HCD
4836110c425SDavid Lechner	select PHY_DA8XX_USB
48488eaaeccSKrzysztof Kozlowski	default y if ARCH_DAVINCI_DA8XX
485068413e9SArnd Bergmann	help
486068413e9SArnd Bergmann	  Enables support for the DaVinci DA8xx integrated OHCI
487068413e9SArnd Bergmann	  controller. This driver cannot currently be a loadable
488068413e9SArnd Bergmann	  module because it lacks a proper PHY abstraction.
489068413e9SArnd Bergmann
490495a678fSSylvain Munautconfig USB_OHCI_HCD_PPC_OF_BE
49145e83889SArnd Bergmann	bool "OHCI support for OF platform bus (big endian)"
492c31316cbSKevin Hao	depends on PPC
493495a678fSSylvain Munaut	select USB_OHCI_BIG_ENDIAN_DESC
494495a678fSSylvain Munaut	select USB_OHCI_BIG_ENDIAN_MMIO
495a7f7f624SMasahiro Yamada	help
49645e83889SArnd Bergmann	  Enables support for big-endian USB controllers present on the
49745e83889SArnd Bergmann	  OpenFirmware platform bus.
498495a678fSSylvain Munaut
499495a678fSSylvain Munautconfig USB_OHCI_HCD_PPC_OF_LE
50045e83889SArnd Bergmann	bool "OHCI support for OF platform bus (little endian)"
501c31316cbSKevin Hao	depends on PPC
502495a678fSSylvain Munaut	select USB_OHCI_LITTLE_ENDIAN
503a7f7f624SMasahiro Yamada	help
50445e83889SArnd Bergmann	  Enables support for little-endian USB controllers present on the
50545e83889SArnd Bergmann	  OpenFirmware platform bus.
50645e83889SArnd Bergmann
50745e83889SArnd Bergmannconfig USB_OHCI_HCD_PPC_OF
50845e83889SArnd Bergmann	bool
509c31316cbSKevin Hao	depends on PPC
51045e83889SArnd Bergmann	default USB_OHCI_HCD_PPC_OF_BE || USB_OHCI_HCD_PPC_OF_LE
511495a678fSSylvain Munaut
5121da177e4SLinus Torvaldsconfig USB_OHCI_HCD_PCI
513c1117afbSManjunath Goudar	tristate "OHCI support for PCI-bus USB controllers"
5142c93e790Syuan linyu	depends on USB_PCI
5151da177e4SLinus Torvalds	default y
5161da177e4SLinus Torvalds	select USB_OHCI_LITTLE_ENDIAN
517a7f7f624SMasahiro Yamada	help
5181da177e4SLinus Torvalds	  Enables support for PCI-bus plug-in USB controller cards.
5191da177e4SLinus Torvalds	  If unsure, say Y.
5201da177e4SLinus Torvalds
521c604e851SMichael Bueschconfig USB_OHCI_HCD_SSB
522259b83a3SHauke Mehrtens	bool "OHCI support for Broadcom SSB OHCI core (DEPRECATED)"
5233ad3ca05SFlorian Fainelli	depends on (SSB = y || SSB = USB_OHCI_HCD)
524259b83a3SHauke Mehrtens	select USB_HCD_SSB
525259b83a3SHauke Mehrtens	select USB_OHCI_HCD_PLATFORM
526a7f7f624SMasahiro Yamada	help
527259b83a3SHauke Mehrtens	  This option is deprecated now and the driver was removed, use
528259b83a3SHauke Mehrtens	  USB_HCD_SSB and USB_OHCI_HCD_PLATFORM instead.
529259b83a3SHauke Mehrtens
530c604e851SMichael Buesch	  Support for the Sonics Silicon Backplane (SSB) attached
531c604e851SMichael Buesch	  Broadcom USB OHCI core.
532c604e851SMichael Buesch
533c604e851SMichael Buesch	  This device is present in some embedded devices with
534c604e851SMichael Buesch	  Broadcom based SSB bus.
535c604e851SMichael Buesch
536c604e851SMichael Buesch	  If unsure, say N.
537c604e851SMichael Buesch
53860b0bf0fSYoshihiro Shimodaconfig USB_OHCI_SH
539231a72e0SFlorian Fainelli	bool "OHCI support for SuperH USB controller (DEPRECATED)"
54088eaaeccSKrzysztof Kozlowski	depends on SUPERH || COMPILE_TEST
541231a72e0SFlorian Fainelli	select USB_OHCI_HCD_PLATFORM
542a7f7f624SMasahiro Yamada	help
543231a72e0SFlorian Fainelli	  This option is deprecated now and the driver was removed, use
544231a72e0SFlorian Fainelli	  USB_OHCI_HCD_PLATFORM instead.
545231a72e0SFlorian Fainelli
54660b0bf0fSYoshihiro Shimoda	  Enables support for the on-chip OHCI controller on the SuperH.
54760b0bf0fSYoshihiro Shimoda	  If you use the PCI OHCI controller, this option is not necessary.
54860b0bf0fSYoshihiro Shimoda
54962194244SJingoo Hanconfig USB_OHCI_EXYNOS
550dea7b202SKrzysztof Kozlowski	tristate "OHCI support for Samsung S5P/Exynos SoC Series"
55188eaaeccSKrzysztof Kozlowski	depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
55262194244SJingoo Han	help
5532abc8657SKrzysztof Kozlowski	  Enable support for the Samsung S5Pv210 and Exynos SOC's on-chip OHCI
5542abc8657SKrzysztof Kozlowski	  controller.
55562194244SJingoo Han
556fa3364b5SHauke Mehrtensconfig USB_OHCI_HCD_PLATFORM
557928fb68eSManjunath Goudar	tristate "Generic OHCI driver for a platform device"
558a7f7f624SMasahiro Yamada	help
559fa3364b5SHauke Mehrtens	  Adds an OHCI host driver for a generic platform device, which
560898d828bSPeter Meerwald	  provides a memory space and an irq.
561fa3364b5SHauke Mehrtens
562fa3364b5SHauke Mehrtens	  If unsure, say N.
563fa3364b5SHauke Mehrtens
5643ad3ca05SFlorian Fainelliconfig USB_OCTEON_OHCI
5652193dda5SAlan Stern	bool "Octeon on-chip OHCI support (DEPRECATED)"
5669ddebc46SDavid Daney	depends on CAVIUM_OCTEON_SOC
5673ad3ca05SFlorian Fainelli	default USB_OCTEON_EHCI
568df115f3eSBen Hutchings	select USB_OHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
5693ad3ca05SFlorian Fainelli	select USB_OHCI_LITTLE_ENDIAN
5702193dda5SAlan Stern	select USB_OHCI_HCD_PLATFORM
5713ad3ca05SFlorian Fainelli	help
5722193dda5SAlan Stern	  This option is deprecated now and the driver was removed, use
5732193dda5SAlan Stern	  USB_OHCI_HCD_PLATFORM instead.
5742193dda5SAlan Stern
5753ad3ca05SFlorian Fainelli	  Enable support for the Octeon II SOC's on-chip OHCI
5763ad3ca05SFlorian Fainelli	  controller.  It is needed for low-speed USB 1.0 device
5773ad3ca05SFlorian Fainelli	  support.  All CN6XXX based chips with USB are supported.
5783ad3ca05SFlorian Fainelli
5793ad3ca05SFlorian Fainelliendif # USB_OHCI_HCD
5803ad3ca05SFlorian Fainelli
5811da177e4SLinus Torvaldsconfig USB_UHCI_HCD
5821da177e4SLinus Torvalds	tristate "UHCI HCD (most Intel and VIA) support"
5832c93e790Syuan linyu	depends on USB_PCI || USB_UHCI_SUPPORT_NON_PCI_HC
584a7f7f624SMasahiro Yamada	help
5851da177e4SLinus Torvalds	  The Universal Host Controller Interface is a standard by Intel for
5861da177e4SLinus Torvalds	  accessing the USB hardware in the PC (which is also called the USB
5871da177e4SLinus Torvalds	  host controller). If your USB host controller conforms to this
5881da177e4SLinus Torvalds	  standard, you may want to say Y, but see below. All recent boards
5891da177e4SLinus Torvalds	  with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX,
5901da177e4SLinus Torvalds	  i810, i820) conform to this standard. Also all VIA PCI chipsets
5911da177e4SLinus Torvalds	  (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro
5923db7739cSJan Andersson	  133) and LEON/GRLIB SoCs with the GRUSBHC controller.
5933db7739cSJan Andersson	  If unsure, say Y.
5941da177e4SLinus Torvalds
5951da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
5961da177e4SLinus Torvalds	  module will be called uhci-hcd.
5971da177e4SLinus Torvalds
598d3219d1cSJan Anderssonconfig USB_UHCI_SUPPORT_NON_PCI_HC
599d3219d1cSJan Andersson	bool
600ccd9509aSAlan Stern	default y if (SPARC_LEON || USB_UHCI_PLATFORM)
601100d4597STony Prisk
602100d4597STony Priskconfig USB_UHCI_PLATFORM
603ccd9509aSAlan Stern	bool
6044642d34aSBenjamin Herrenschmidt	default y if (ARCH_VT8500 || ARCH_ASPEED)
6054642d34aSBenjamin Herrenschmidt
6064642d34aSBenjamin Herrenschmidtconfig USB_UHCI_ASPEED
6074642d34aSBenjamin Herrenschmidt	bool
6084642d34aSBenjamin Herrenschmidt	default y if ARCH_ASPEED
609d3219d1cSJan Andersson
610236dd4d1SAnton Vorontsovconfig USB_FHCI_HCD
611236dd4d1SAnton Vorontsov	tristate "Freescale QE USB Host Controller support"
61225e11ec4SFlorian Fainelli	depends on OF_GPIO && QE_GPIO && QUICC_ENGINE
613236dd4d1SAnton Vorontsov	select FSL_GTM
614236dd4d1SAnton Vorontsov	select QE_USB
615236dd4d1SAnton Vorontsov	help
616236dd4d1SAnton Vorontsov	  This driver enables support for Freescale QE USB Host Controller
617236dd4d1SAnton Vorontsov	  (as found on MPC8360 and MPC8323 processors), the driver supports
618236dd4d1SAnton Vorontsov	  Full and Low Speed USB.
619236dd4d1SAnton Vorontsov
620236dd4d1SAnton Vorontsovconfig FHCI_DEBUG
621236dd4d1SAnton Vorontsov	bool "Freescale QE USB Host Controller debug support"
622236dd4d1SAnton Vorontsov	depends on USB_FHCI_HCD && DEBUG_FS
623236dd4d1SAnton Vorontsov	help
624236dd4d1SAnton Vorontsov	  Say "y" to see some FHCI debug information and statistics
62525985edcSLucas De Marchi	  through debugfs.
626236dd4d1SAnton Vorontsov
627d774efeaSTony Olechconfig USB_U132_HCD
628d774efeaSTony Olech	tristate "Elan U132 Adapter Host Controller"
62925e11ec4SFlorian Fainelli	depends on USB_FTDI_ELAN
630d774efeaSTony Olech	help
631d774efeaSTony Olech	  The U132 adapter is a USB to CardBus adapter specifically designed
632d774efeaSTony Olech	  for PC cards that contain an OHCI host controller. Typical PC cards
633d774efeaSTony Olech	  are the Orange Mobile 3G Option GlobeTrotter Fusion card. The U132
634d774efeaSTony Olech	  adapter will *NOT* work with PC cards that do not contain an OHCI
635d774efeaSTony Olech	  controller.
636d774efeaSTony Olech
6373cb2fcccSMatt LaPlante	  For those PC cards that contain multiple OHCI controllers only the
638d774efeaSTony Olech	  first one is used.
639d774efeaSTony Olech
640d774efeaSTony Olech	  The driver consists of two modules, the "ftdi-elan" module is a
641d774efeaSTony Olech	  USB client driver that interfaces to the FTDI chip within ELAN's
642d774efeaSTony Olech	  USB-to-PCMCIA adapter, and this "u132-hcd" module is a USB host
643d774efeaSTony Olech	  controller driver that talks to the OHCI controller within the
644d774efeaSTony Olech	  CardBus cards that are inserted in the U132 adapter.
645d774efeaSTony Olech
646d774efeaSTony Olech	  This driver has been tested with a CardBus OHCI USB adapter, and
647d774efeaSTony Olech	  worked with a USB PEN Drive inserted into the first USB port of
648d774efeaSTony Olech	  the PCCARD. A rather pointless thing to do, but useful for testing.
649d774efeaSTony Olech
650d774efeaSTony Olech	  It is safe to say M here.
651d774efeaSTony Olech
652d774efeaSTony Olech	  See also <http://www.elandigitalsystems.com/support/ufaq/u132linux.php>
653d774efeaSTony Olech
6541da177e4SLinus Torvaldsconfig USB_SL811_HCD
6551da177e4SLinus Torvalds	tristate "SL811HS HCD support"
656cfa33eaeSVegard Nossum	depends on HAS_IOMEM
6571da177e4SLinus Torvalds	help
6581da177e4SLinus Torvalds	  The SL811HS is a single-port USB controller that supports either
6591da177e4SLinus Torvalds	  host side or peripheral side roles.  Enable this option if your
6601da177e4SLinus Torvalds	  board has this chip, and you want to use it as a host controller.
6611da177e4SLinus Torvalds	  If unsure, say N.
6621da177e4SLinus Torvalds
6631da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
6641da177e4SLinus Torvalds	  module will be called sl811-hcd.
6651da177e4SLinus Torvalds
666ad7c56f0SMike Frysingerconfig USB_SL811_HCD_ISO
667ad7c56f0SMike Frysinger	bool "partial ISO support"
668ad7c56f0SMike Frysinger	depends on USB_SL811_HCD
669ad7c56f0SMike Frysinger	help
670ad7c56f0SMike Frysinger	  The driver doesn't support iso_frame_desc (yet), but for some simple
671ad7c56f0SMike Frysinger	  devices that just queue one ISO frame per URB, then ISO transfers
672ad7c56f0SMike Frysinger	  "should" work using the normal urb status fields.
673ad7c56f0SMike Frysinger
674ad7c56f0SMike Frysinger	  If unsure, say N.
675ad7c56f0SMike Frysinger
676c6de2b64SDavid Brownellconfig USB_SL811_CS
677c6de2b64SDavid Brownell	tristate "CF/PCMCIA support for SL811HS HCD"
678c6de2b64SDavid Brownell	depends on USB_SL811_HCD && PCMCIA
679c6de2b64SDavid Brownell	help
680c6de2b64SDavid Brownell	  Wraps a PCMCIA driver around the SL811HS HCD, supporting the RATOC
681c6de2b64SDavid Brownell	  REX-CFU1U CF card (often used with PDAs).  If unsure, say N.
682c6de2b64SDavid Brownell
683c6de2b64SDavid Brownell	  To compile this driver as a module, choose M here: the
684c6de2b64SDavid Brownell	  module will be called "sl811_cs".
685c6de2b64SDavid Brownell
6865d304358SYoshihiro Shimodaconfig USB_R8A66597_HCD
687fa0de2b6SM4rkusXXL	tristate "R8A66597 HCD support"
688e37a6c92SVegard Nossum	depends on HAS_IOMEM
6895d304358SYoshihiro Shimoda	help
6905d304358SYoshihiro Shimoda	  The R8A66597 is a USB 2.0 host and peripheral controller.
6915d304358SYoshihiro Shimoda
6925d304358SYoshihiro Shimoda	  Enable this option if your board has this chip, and you want
6935d304358SYoshihiro Shimoda	  to use it as a host controller.  If unsure, say N.
6945d304358SYoshihiro Shimoda
6955d304358SYoshihiro Shimoda	  To compile this driver as a module, choose M here: the
6965d304358SYoshihiro Shimoda	  module will be called r8a66597-hcd.
6975d304358SYoshihiro Shimoda
698034d7c13SKuninori Morimotoconfig USB_RENESAS_USBHS_HCD
699034d7c13SKuninori Morimoto	tristate "Renesas USBHS HCD support"
700034d7c13SKuninori Morimoto	depends on USB_RENESAS_USBHS
701034d7c13SKuninori Morimoto	help
702034d7c13SKuninori Morimoto	  The Renesas USBHS is a USB 2.0 host and peripheral controller.
703034d7c13SKuninori Morimoto
704034d7c13SKuninori Morimoto	  Enable this option if your board has this chip, and you want
705034d7c13SKuninori Morimoto	  to use it as a host controller.  If unsure, say N.
706034d7c13SKuninori Morimoto
707034d7c13SKuninori Morimoto	  To compile this driver as a module, choose M here: the
708034d7c13SKuninori Morimoto	  module will be called renesas-usbhs.
709034d7c13SKuninori Morimoto
71062e11d1bSHauke Mehrtensconfig USB_HCD_BCMA
71162e11d1bSHauke Mehrtens	tristate "BCMA usb host driver"
712eb83be98SGreg Kroah-Hartman	depends on BCMA
71362e11d1bSHauke Mehrtens	select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
71462e11d1bSHauke Mehrtens	select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
71562e11d1bSHauke Mehrtens	help
71671c421dbSJesper Dangaard Brouer	  Enable support for the EHCI and OCHI host controller on an bcma bus.
71762e11d1bSHauke Mehrtens	  It converts the bcma driver into two platform device drivers
71862e11d1bSHauke Mehrtens	  for ehci and ohci.
71962e11d1bSHauke Mehrtens
72062e11d1bSHauke Mehrtens	  If unsure, say N.
7217043c2ccSHauke Mehrtens
7227043c2ccSHauke Mehrtensconfig USB_HCD_SSB
7237043c2ccSHauke Mehrtens	tristate "SSB usb host driver"
724eb83be98SGreg Kroah-Hartman	depends on SSB
7257043c2ccSHauke Mehrtens	select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
7267043c2ccSHauke Mehrtens	select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
7277043c2ccSHauke Mehrtens	help
72871c421dbSJesper Dangaard Brouer	  Enable support for the EHCI and OCHI host controller on an bcma bus.
7297043c2ccSHauke Mehrtens	  It converts the bcma driver into two platform device drivers
7307043c2ccSHauke Mehrtens	  for ehci and ohci.
7317043c2ccSHauke Mehrtens
7327043c2ccSHauke Mehrtens	  If unsure, say N.
733726a85caSJack Pham
734726a85caSJack Phamconfig USB_HCD_TEST_MODE
735726a85caSJack Pham	bool "HCD test mode support"
736a7f7f624SMasahiro Yamada	help
737726a85caSJack Pham	  Say 'Y' to enable additional software test modes that may be
738726a85caSJack Pham	  supported by the host controller drivers.
739726a85caSJack Pham
740726a85caSJack Pham	  One such test mode is the Embedded High-speed Host Electrical Test
741726a85caSJack Pham	  (EHSET) for EHCI host controller hardware, specifically the "Single
742726a85caSJack Pham	  Step Set Feature" test.  Typically this will be enabled for On-the-Go
743726a85caSJack Pham	  or embedded hosts that need to undergo USB-IF compliance testing with
744726a85caSJack Pham	  the aid of special testing hardware.  In the future, this may expand
745726a85caSJack Pham	  to include other tests that require support from a HCD driver.
746726a85caSJack Pham
747726a85caSJack Pham	  This option is of interest only to developers who need to validate
748726a85caSJack Pham	  their USB hardware designs.  It is not needed for normal use.  If
749726a85caSJack Pham	  unsure, say N.
750494ed399SJuergen Gross
751494ed399SJuergen Grossconfig USB_XEN_HCD
752494ed399SJuergen Gross	tristate "Xen usb virtual host driver"
753494ed399SJuergen Gross	depends on XEN
754494ed399SJuergen Gross	select XEN_XENBUS_FRONTEND
755494ed399SJuergen Gross	help
756494ed399SJuergen Gross	  The Xen usb virtual host driver serves as a frontend driver enabling
757494ed399SJuergen Gross	  a Xen guest system to access USB Devices passed through to the guest
758494ed399SJuergen Gross	  by the Xen host (usually Dom0).
759494ed399SJuergen Gross	  Only needed if the kernel is running in a Xen guest and generic
760494ed399SJuergen Gross	  access to a USB device is needed.
761