xref: /linux/drivers/usb/host/Kconfig (revision f4b369c6fe0ceaba2da2daff8c9eb415f85926dd)
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
4329e409f0SAndrew Bresticker	default y
4429e409f0SAndrew Bresticker
458bd5741eSChristian Lamparterconfig USB_XHCI_PCI_RENESAS
46cda37dbbSColin Ian King	tristate "Support for additional Renesas xHCI controller with firmware"
4725f51b76SBen Hutchings	depends on USB_XHCI_PCI
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"
56a7f7f624SMasahiro Yamada	help
576c05cb14SRafał Miłecki	  Adds an xHCI host driver for a generic platform device, which
586c05cb14SRafał Miłecki	  provides a memory space and an irq.
596c05cb14SRafał Miłecki	  It is also a prerequisite for platform specific drivers that
606c05cb14SRafał Miłecki	  implement some extra quirks.
616c05cb14SRafał Miłecki
626c05cb14SRafał Miłecki	  If unsure, say N.
633429e91aSSebastian Andrzej Siewior
64c508f41dSJianguo Sunconfig USB_XHCI_HISTB
65c508f41dSJianguo Sun	tristate "xHCI support for HiSilicon STB SoCs"
66c508f41dSJianguo Sun	depends on USB_XHCI_PLATFORM && (ARCH_HISI || COMPILE_TEST)
67c508f41dSJianguo Sun	help
68c508f41dSJianguo Sun	  Say 'Y' to enable the support for the xHCI host controller
69c508f41dSJianguo Sun	  found in HiSilicon STB SoCs.
70c508f41dSJianguo Sun
710cbd4b34SChunfeng Yunconfig USB_XHCI_MTK
727b81a586SChunfeng Yun	tristate "xHCI support for MediaTek SoCs"
730cbd4b34SChunfeng Yun	select MFD_SYSCON
74808cf33dSJohn Crispin	depends on (MIPS && SOC_MT7621) || ARCH_MEDIATEK || COMPILE_TEST
75a7f7f624SMasahiro Yamada	help
760cbd4b34SChunfeng Yun	  Say 'Y' to enable the support for the xHCI host controller
777b81a586SChunfeng Yun	  found in MediaTek SoCs.
780cbd4b34SChunfeng Yun	  If unsure, say N.
790cbd4b34SChunfeng Yun
8097374792SGregory CLEMENTconfig USB_XHCI_MVEBU
8112453a89SOfer Heifetz	tristate "xHCI support for Marvell Armada 375/38x/37xx"
8297374792SGregory CLEMENT	select USB_XHCI_PLATFORM
83828638e9SVegard Nossum	depends on HAS_IOMEM
8497374792SGregory CLEMENT	depends on ARCH_MVEBU || COMPILE_TEST
85a7f7f624SMasahiro Yamada	help
8697374792SGregory CLEMENT	  Say 'Y' to enable the support for the xHCI host controller
8712453a89SOfer Heifetz	  found in Marvell Armada 375/38x/37xx ARM SOCs.
8897374792SGregory CLEMENT
894ac8918fSYoshihiro Shimodaconfig USB_XHCI_RCAR
904ac8918fSYoshihiro Shimoda	tristate "xHCI support for Renesas R-Car SoCs"
91f879fc32SYoshihiro Shimoda	depends on USB_XHCI_PLATFORM
926edd87f5SSimon Horman	depends on ARCH_RENESAS || COMPILE_TEST
93ec5499d3SArnd Bergmann	default ARCH_RENESAS
94a7f7f624SMasahiro Yamada	help
954ac8918fSYoshihiro Shimoda	  Say 'Y' to enable the support for the xHCI host controller
965db5025dSBiju Das	  found in Renesas R-Car and RZ/G3E alike ARM SoCs.
974ac8918fSYoshihiro Shimoda
98c52c9accSBiju Dasconfig USB_XHCI_RZV2M
99ec5499d3SArnd Bergmann	bool "xHCI support for Renesas RZ/V2M SoC"
100ec5499d3SArnd Bergmann	depends on USB_XHCI_RCAR
101c52c9accSBiju Das	depends on ARCH_R9A09G011 || COMPILE_TEST
102ec5499d3SArnd Bergmann	depends on USB_RZV2M_USB3DRD=y || (USB_RZV2M_USB3DRD=USB_XHCI_RCAR)
103c52c9accSBiju Das	help
104c52c9accSBiju Das	  Say 'Y' to enable the support for the xHCI host controller
105c52c9accSBiju Das	  found in Renesas RZ/V2M SoC.
106c52c9accSBiju Das
107de66754eSMathias Nymanconfig USB_XHCI_SIDEBAND
108de66754eSMathias Nyman	bool "xHCI support for sideband"
109de66754eSMathias Nyman	help
110de66754eSMathias Nyman	  Say 'Y' to enable the support for the xHCI sideband capability.
111de66754eSMathias Nyman	  Provide a mechanism for a sideband datapath for payload associated
112de66754eSMathias Nyman	  with audio class endpoints. This allows for an audio DSP to use
113de66754eSMathias Nyman	  xHCI USB endpoints directly, allowing CPU to sleep while playing
114de66754eSMathias Nyman	  audio.
115de66754eSMathias Nyman
116e84fce0fSThierry Redingconfig USB_XHCI_TEGRA
117e84fce0fSThierry Reding	tristate "xHCI support for NVIDIA Tegra SoCs"
118e84fce0fSThierry Reding	depends on PHY_TEGRA_XUSB
119e84fce0fSThierry Reding	depends on RESET_CONTROLLER
120e84fce0fSThierry Reding	select FW_LOADER
121a7f7f624SMasahiro Yamada	help
122e84fce0fSThierry Reding	  Say 'Y' to enable the support for the xHCI host controller
123e84fce0fSThierry Reding	  found in NVIDIA Tegra124 and later SoCs.
124e84fce0fSThierry Reding
1250fcb9989SFlorian Fainelliendif # USB_XHCI_HCD
1260fcb9989SFlorian Fainelli
127c33f4f24SAl Cooperconfig USB_EHCI_BRCMSTB
128c33f4f24SAl Cooper       tristate
129c33f4f24SAl Cooper
130c33f4f24SAl Cooperconfig USB_BRCMSTB
131c33f4f24SAl Cooper	tristate "Broadcom STB USB support"
132c33f4f24SAl Cooper	depends on (ARCH_BRCMSTB && PHY_BRCM_USB) || COMPILE_TEST
133c33f4f24SAl Cooper	select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
134c33f4f24SAl Cooper	select USB_EHCI_BRCMSTB if USB_EHCI_HCD
135c33f4f24SAl Cooper	select USB_XHCI_PLATFORM if USB_XHCI_HCD
136c33f4f24SAl Cooper	help
137c33f4f24SAl Cooper	  Enables support for XHCI, EHCI and OHCI host controllers
138c33f4f24SAl Cooper	  found in Broadcom STB SoC's.
139c33f4f24SAl Cooper
140c33f4f24SAl Cooper	  To compile these drivers as modules, choose M here: the
141c33f4f24SAl Cooper	  modules will be called ohci-platform.ko, ehci-brcm.ko and
142c33f4f24SAl Cooper	  xhci-plat-hcd.ko
143c33f4f24SAl Cooper
144c33f4f24SAl Cooper	  Disabling this will keep the controllers and corresponding
145c33f4f24SAl Cooper	  PHYs powered down.
146c33f4f24SAl Cooper
1471da177e4SLinus Torvaldsconfig USB_EHCI_HCD
1481da177e4SLinus Torvalds	tristate "EHCI HCD (USB 2.0) support"
149cf34be7aSGeert Uytterhoeven	depends on HAS_DMA && HAS_IOMEM
150a7f7f624SMasahiro Yamada	help
1511da177e4SLinus Torvalds	  The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0
1521da177e4SLinus Torvalds	  "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware.
1531da177e4SLinus Torvalds	  If your USB host controller supports USB 2.0, you will likely want to
154b967c88eSThierry Vignaud	  configure this Host Controller Driver.
1551da177e4SLinus Torvalds
1561da177e4SLinus Torvalds	  EHCI controllers are packaged with "companion" host controllers (OHCI
1571da177e4SLinus Torvalds	  or UHCI) to handle USB 1.1 devices connected to root hub ports.  Ports
158b3c29d85SJesper Juhl	  will connect to EHCI if the device is high speed, otherwise they
1591da177e4SLinus Torvalds	  connect to a companion controller.  If you configure EHCI, you should
1601da177e4SLinus Torvalds	  probably configure the OHCI (for NEC and some other vendors) USB Host
1611da177e4SLinus Torvalds	  Controller Driver or UHCI (for Via motherboards) Host Controller
1621da177e4SLinus Torvalds	  Driver too.
1631da177e4SLinus Torvalds
164ecefae6dSMauro Carvalho Chehab	  You may want to read <file:Documentation/usb/ehci.rst>.
1651da177e4SLinus Torvalds
1661da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1671da177e4SLinus Torvalds	  module will be called ehci-hcd.
1681da177e4SLinus Torvalds
1691da177e4SLinus Torvaldsconfig USB_EHCI_ROOT_HUB_TT
1709ec249a6SRobert P. J. Day	bool "Root Hub Transaction Translators"
171a746c286SPeter Chen	depends on USB_EHCI_HCD
172a7f7f624SMasahiro Yamada	help
1731da177e4SLinus Torvalds	  Some EHCI chips have vendor-specific extensions to integrate
1741da177e4SLinus Torvalds	  transaction translators, so that no OHCI or UHCI companion
1751da177e4SLinus Torvalds	  controller is needed.  It's safe to say "y" even if your
1761da177e4SLinus Torvalds	  controller doesn't support this feature.
1771da177e4SLinus Torvalds
178ba47f66bSDan Streetman	  This supports the EHCI implementation that's originally
179ba47f66bSDan Streetman	  from ARC, and has since changed hands a few times.
180ba47f66bSDan Streetman
181ba47f66bSDan Streetmanconfig USB_EHCI_TT_NEWSCHED
18237cd681cSAlan Stern	bool "Improved Transaction Translator scheduling"
183a746c286SPeter Chen	depends on USB_EHCI_HCD
18437cd681cSAlan Stern	default y
185a7f7f624SMasahiro Yamada	help
186ba47f66bSDan Streetman	  This changes the periodic scheduling code to fill more of the low
187ba47f66bSDan Streetman	  and full speed bandwidth available from the Transaction Translator
188ba47f66bSDan Streetman	  (TT) in USB 2.0 hubs.  Without this, only one transfer will be
189ba47f66bSDan Streetman	  issued in each microframe, significantly reducing the number of
190ba47f66bSDan Streetman	  periodic low/fullspeed transfers possible.
191ba47f66bSDan Streetman
192ba47f66bSDan Streetman	  If you have multiple periodic low/fullspeed devices connected to a
193ba47f66bSDan Streetman	  highspeed USB hub which is connected to a highspeed USB Host
194ba47f66bSDan Streetman	  Controller, and some of those devices will not work correctly
19537cd681cSAlan Stern	  (possibly due to "ENOSPC" or "-28" errors), say Y.  Conversely, if
19637cd681cSAlan Stern	  you have only one such device and it doesn't work, you could try
19737cd681cSAlan Stern	  saying N.
198ba47f66bSDan Streetman
19937cd681cSAlan Stern	  If unsure, say Y.
2001da177e4SLinus Torvalds
20142443dc4SFlorian Fainelliif USB_EHCI_HCD
20242443dc4SFlorian Fainelli
203adfa79d1SAlan Sternconfig USB_EHCI_PCI
204adfa79d1SAlan Stern	tristate
2052c93e790Syuan linyu	depends on USB_PCI
206adfa79d1SAlan Stern	default y
207adfa79d1SAlan Stern
20808d3c18eSJulie Zhuconfig XPS_USB_HCD_XILINX
20908d3c18eSJulie Zhu	bool "Use Xilinx usb host EHCI controller core"
21042443dc4SFlorian Fainelli	depends on (PPC32 || MICROBLAZE)
21108d3c18eSJulie Zhu	select USB_EHCI_BIG_ENDIAN_DESC
21208d3c18eSJulie Zhu	select USB_EHCI_BIG_ENDIAN_MMIO
213a7f7f624SMasahiro Yamada	help
214f54619f2SMasanari Iida		Xilinx xps USB host controller core is EHCI compliant and has
21508d3c18eSJulie Zhu		transaction translator built-in. It can be configured to either
21608d3c18eSJulie Zhu		support both high speed and full speed devices, or high speed
21708d3c18eSJulie Zhu		devices only.
21808d3c18eSJulie Zhu
219ba02978aSLi Yangconfig USB_EHCI_FSL
22073855109SRan Wang	tristate "Support for Freescale on-chip EHCI USB controller"
221ba02978aSLi Yang	select USB_EHCI_ROOT_HUB_TT
222a7f7f624SMasahiro Yamada	help
223ba02978aSLi Yang	  Variation of ARC USB block used in some Freescale chips.
224ba02978aSLi Yang
225df44831eSAvi Fishmanconfig USB_EHCI_HCD_NPCM7XX
226b6caf79dSTomer Maimon	tristate "Support for Nuvoton NPCM on-chip EHCI USB controller"
227b6caf79dSTomer Maimon	depends on (USB_EHCI_HCD && ARCH_NPCM) || COMPILE_TEST
228b6caf79dSTomer Maimon	default y if (USB_EHCI_HCD && ARCH_NPCM)
229df44831eSAvi Fishman	help
230df44831eSAvi Fishman	  Enables support for the on-chip EHCI controller on
231b6caf79dSTomer Maimon	  Nuvoton NPCM chips.
232df44831eSAvi Fishman
2337f124f4bSKeshava Munegowdaconfig USB_EHCI_HCD_OMAP
23454a41966SAlan Stern	tristate "EHCI support for OMAP3 and later chips"
23511e00292SArnd Bergmann	depends on ARCH_OMAP || COMPILE_TEST
2365a8d651aSFelipe Balbi	depends on NOP_USB_XCEIV
237db476ffaSKrzysztof Kozlowski	default ARCH_OMAP
238a7f7f624SMasahiro Yamada	help
2397f124f4bSKeshava Munegowda	  Enables support for the on-chip EHCI controller on
2407f124f4bSKeshava Munegowda	  OMAP3 and later chips.
2417f124f4bSKeshava Munegowda
242a76dd463SManjunath Goudarconfig USB_EHCI_HCD_ORION
243a76dd463SManjunath Goudar	tristate  "Support for Marvell EBU on-chip EHCI USB controller"
24488eaaeccSKrzysztof Kozlowski	depends on USB_EHCI_HCD && (PLAT_ORION || ARCH_MVEBU || COMPILE_TEST)
24588eaaeccSKrzysztof Kozlowski	default y if (PLAT_ORION || ARCH_MVEBU)
246a7f7f624SMasahiro Yamada	help
247a76dd463SManjunath Goudar	  Enables support for the on-chip EHCI controller on Marvell's
248a76dd463SManjunath Goudar	  embedded ARM SoCs, including Orion, Kirkwood, Dove, Armada XP,
249a76dd463SManjunath Goudar	  Armada 370.  This is different from the EHCI implementation
250a76dd463SManjunath Goudar	  on Marvell's mobile PXA and MMP SoC, see "EHCI support for
251a76dd463SManjunath Goudar	  Marvell PXA/MMP USB controller" for those.
252a76dd463SManjunath Goudar
2537675d6baSManjunath Goudarconfig USB_EHCI_HCD_SPEAR
2547675d6baSManjunath Goudar	tristate "Support for ST SPEAr on-chip EHCI USB controller"
25588eaaeccSKrzysztof Kozlowski	depends on USB_EHCI_HCD && (PLAT_SPEAR || COMPILE_TEST)
25688eaaeccSKrzysztof Kozlowski	default y if PLAT_SPEAR
257a7f7f624SMasahiro Yamada	help
2587675d6baSManjunath Goudar	  Enables support for the on-chip EHCI controller on
2597675d6baSManjunath Goudar	  ST SPEAr chips.
2607675d6baSManjunath Goudar
261905e300eSArnd Bergmannconfig USB_EHCI_HCD_STI
262905e300eSArnd Bergmann	tristate "Support for ST STiHxxx on-chip EHCI USB controller"
26388eaaeccSKrzysztof Kozlowski	depends on (ARCH_STI || COMPILE_TEST) && OF
264905e300eSArnd Bergmann	select GENERIC_PHY
265905e300eSArnd Bergmann	select USB_EHCI_HCD_PLATFORM
266905e300eSArnd Bergmann	help
267905e300eSArnd Bergmann	  Enable support for the on-chip EHCI controller found on
268905e300eSArnd Bergmann	  STMicroelectronics consumer electronics SoC's.
269905e300eSArnd Bergmann
27097736961SManjunath Goudarconfig USB_EHCI_HCD_AT91
27197736961SManjunath Goudar	tristate  "Support for Atmel on-chip EHCI USB controller"
27288eaaeccSKrzysztof Kozlowski	depends on USB_EHCI_HCD && (ARCH_AT91 || COMPILE_TEST)
27388eaaeccSKrzysztof Kozlowski	default y if ARCH_AT91
274a7f7f624SMasahiro Yamada	help
27597736961SManjunath Goudar	  Enables support for the on-chip EHCI controller on
27697736961SManjunath Goudar	  Atmel chips.
27797736961SManjunath Goudar
27879ad3b5aSBenoit Gobyconfig USB_EHCI_TEGRA
2799fc5f24eSManjunath Goudar	tristate "NVIDIA Tegra HCD support"
28042443dc4SFlorian Fainelli	depends on ARCH_TEGRA
281c3590c76SDmitry Osipenko	select USB_CHIPIDEA
282c3590c76SDmitry Osipenko	select USB_CHIPIDEA_HOST
283c3590c76SDmitry Osipenko	select USB_CHIPIDEA_TEGRA
2840b982876SDmitry Osipenko	select USB_GADGET
28579ad3b5aSBenoit Goby	help
286c3590c76SDmitry Osipenko	  This option is deprecated now and the driver was removed, use
287c3590c76SDmitry Osipenko	  USB_CHIPIDEA_TEGRA instead.
288c3590c76SDmitry Osipenko
289c3590c76SDmitry Osipenko	  Enable support for the internal USB Host Controllers
29079ad3b5aSBenoit Goby	  found in NVIDIA Tegra SoCs. The controllers are EHCI compliant.
29179ad3b5aSBenoit Goby
292da0e8fb0SValentine Barshakconfig USB_EHCI_HCD_PPC_OF
293da0e8fb0SValentine Barshak	bool "EHCI support for PPC USB controller on OF platform bus"
294c31316cbSKevin Hao	depends on PPC
295da0e8fb0SValentine Barshak	default y
296a7f7f624SMasahiro Yamada	help
297da0e8fb0SValentine Barshak	  Enables support for the USB controller present on the PowerPC
298da0e8fb0SValentine Barshak	  OpenFirmware platform bus.
299da0e8fb0SValentine Barshak
30060b0bf0fSYoshihiro Shimodaconfig USB_EHCI_SH
30160b0bf0fSYoshihiro Shimoda	bool "EHCI support for SuperH USB controller"
30288eaaeccSKrzysztof Kozlowski	depends on SUPERH || COMPILE_TEST
303a7f7f624SMasahiro Yamada	help
30460b0bf0fSYoshihiro Shimoda	  Enables support for the on-chip EHCI controller on the SuperH.
30560b0bf0fSYoshihiro Shimoda	  If you use the PCI EHCI controller, this option is not necessary.
30660b0bf0fSYoshihiro Shimoda
30729824c16SJingoo Hanconfig USB_EHCI_EXYNOS
308dea7b202SKrzysztof Kozlowski	tristate "EHCI support for Samsung S5P/Exynos SoC Series"
30988eaaeccSKrzysztof Kozlowski	depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
3101bcc5aa8SJoonyoung Shim	help
3112abc8657SKrzysztof Kozlowski	  Enable support for the Samsung S5Pv210 and Exynos SOC's on-chip EHCI
3122abc8657SKrzysztof Kozlowski	  controller.
3131bcc5aa8SJoonyoung Shim
3143a082ec9SNeil Zhangconfig USB_EHCI_MV
3150440fa3dSLubomir Rintel	tristate "EHCI support for Marvell PXA/MMP USB controller"
31688eaaeccSKrzysztof Kozlowski	depends on ARCH_PXA || ARCH_MMP || COMPILE_TEST
3173a082ec9SNeil Zhang	select USB_EHCI_ROOT_HUB_TT
318a7f7f624SMasahiro Yamada	help
3193a082ec9SNeil Zhang	  Enables support for Marvell (including PXA and MMP series) on-chip
3203a082ec9SNeil Zhang	  USB SPH and OTG controller. SPH is a single port host, and it can
3213a082ec9SNeil Zhang	  only be EHCI host. OTG is controller that can switch to host mode.
322a76dd463SManjunath Goudar	  Note that this driver will not work on Marvell's other EHCI
323a76dd463SManjunath Goudar	  controller used by the EBU-type SoCs including Orion, Kirkwood,
324a76dd463SManjunath Goudar	  Dova, Armada 370 and Armada XP. See "Support for Marvell EBU
325a76dd463SManjunath Goudar	  on-chip EHCI USB controller" for those.
3263a082ec9SNeil Zhang
3279dbdac02SArtur Bujdosoconfig USB_OCTEON_HCD
3289dbdac02SArtur Bujdoso	tristate "Cavium Networks Octeon USB support"
3299dbdac02SArtur Bujdoso	depends on CAVIUM_OCTEON_SOC && USB
3309dbdac02SArtur Bujdoso	help
3319dbdac02SArtur Bujdoso	  This driver supports USB host controller on some Cavium
3329dbdac02SArtur Bujdoso	  Networks' products in the Octeon family.
3339dbdac02SArtur Bujdoso
3349dbdac02SArtur Bujdoso	  To compile this driver as a module, choose M here. The module
3359dbdac02SArtur Bujdoso	  will be called octeon-hcd.
3369dbdac02SArtur Bujdoso
33742443dc4SFlorian Fainelliconfig USB_EHCI_HCD_PLATFORM
33842443dc4SFlorian Fainelli	tristate "Generic EHCI driver for a platform device"
339a7f7f624SMasahiro Yamada	help
34042443dc4SFlorian Fainelli	  Adds an EHCI host driver for a generic platform device, which
34142443dc4SFlorian Fainelli	  provides a memory space and an irq.
34242443dc4SFlorian Fainelli
34342443dc4SFlorian Fainelli	  If unsure, say N.
34442443dc4SFlorian Fainelli
34542443dc4SFlorian Fainelliconfig USB_OCTEON_EHCI
3462193dda5SAlan Stern	bool "Octeon on-chip EHCI support (DEPRECATED)"
3474e52af1cSKrzysztof Kozlowski	depends on CAVIUM_OCTEON_SOC
348df115f3eSBen Hutchings	select USB_EHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
3492193dda5SAlan Stern	select USB_EHCI_HCD_PLATFORM
35042443dc4SFlorian Fainelli	help
3512193dda5SAlan Stern	  This option is deprecated now and the driver was removed, use
3522193dda5SAlan Stern	  USB_EHCI_HCD_PLATFORM instead.
3532193dda5SAlan Stern
35442443dc4SFlorian Fainelli	  Enable support for the Octeon II SOC's on-chip EHCI
35542443dc4SFlorian Fainelli	  controller.  It is needed for high-speed (480Mbit/sec)
35642443dc4SFlorian Fainelli	  USB 2.0 device support.  All CN6XXX based chips with USB are
35742443dc4SFlorian Fainelli	  supported.
35842443dc4SFlorian Fainelli
35942443dc4SFlorian Fainelliendif # USB_EHCI_HCD
36042443dc4SFlorian Fainelli
361b92a78e5SRodolfo Giometticonfig USB_OXU210HP_HCD
362b92a78e5SRodolfo Giometti	tristate "OXU210HP HCD support"
363f4a5d702SVegard Nossum	depends on HAS_IOMEM
364a7f7f624SMasahiro Yamada	help
365b92a78e5SRodolfo Giometti	  The OXU210HP is an USB host/OTG/device controller. Enable this
366b92a78e5SRodolfo Giometti	  option if your board has this chip. If unsure, say N.
367b92a78e5SRodolfo Giometti
368b92a78e5SRodolfo Giometti	  This driver does not support isochronous transfers and doesn't
369b92a78e5SRodolfo Giometti	  implement OTG nor USB device controllers.
370b92a78e5SRodolfo Giometti
371b92a78e5SRodolfo Giometti	  To compile this driver as a module, choose M here: the
372b92a78e5SRodolfo Giometti	  module will be called oxu210hp-hcd.
373b92a78e5SRodolfo Giometti
3744808a1c0SOlav Kongasconfig USB_ISP116X_HCD
3754808a1c0SOlav Kongas	tristate "ISP116X HCD support"
376ca23d3b7SVegard Nossum	depends on HAS_IOMEM
377a7f7f624SMasahiro Yamada	help
3784808a1c0SOlav Kongas	  The ISP1160 and ISP1161 chips are USB host controllers. Enable this
3794808a1c0SOlav Kongas	  option if your board has this chip. If unsure, say N.
3804808a1c0SOlav Kongas
3814808a1c0SOlav Kongas	  This driver does not support isochronous transfers.
3824808a1c0SOlav Kongas
3834808a1c0SOlav Kongas	  To compile this driver as a module, choose M here: the
3844808a1c0SOlav Kongas	  module will be called isp116x-hcd.
3854808a1c0SOlav Kongas
3862d53139fSDavid Mosbergerconfig USB_MAX3421_HCD
3872d53139fSDavid Mosberger	tristate "MAX3421 HCD (USB-over-SPI) support"
3882d53139fSDavid Mosberger	depends on USB && SPI
389a7f7f624SMasahiro Yamada	help
3902d53139fSDavid Mosberger	  The Maxim MAX3421E chip supports standard USB 2.0-compliant
3912d53139fSDavid Mosberger	  full-speed devices either in host or peripheral mode.  This
3922d53139fSDavid Mosberger	  driver supports the host-mode of the MAX3421E only.
3932d53139fSDavid Mosberger
3942d53139fSDavid Mosberger	  To compile this driver as a module, choose M here: the module will
3952d53139fSDavid Mosberger	  be called max3421-hcd.
3962d53139fSDavid Mosberger
3971da177e4SLinus Torvaldsconfig USB_OHCI_HCD
398c1117afbSManjunath Goudar	tristate "OHCI HCD (USB 1.1) support"
399cf34be7aSGeert Uytterhoeven	depends on HAS_DMA && HAS_IOMEM
400a7f7f624SMasahiro Yamada	help
4011da177e4SLinus Torvalds	  The Open Host Controller Interface (OHCI) is a standard for accessing
4021da177e4SLinus Torvalds	  USB 1.1 host controller hardware.  It does more in hardware than Intel's
4031da177e4SLinus Torvalds	  UHCI specification.  If your USB host controller follows the OHCI spec,
4041da177e4SLinus Torvalds	  say Y.  On most non-x86 systems, and on x86 hardware that's not using a
4051da177e4SLinus Torvalds	  USB controller from Intel or VIA, this is appropriate.  If your host
4061da177e4SLinus Torvalds	  controller doesn't use PCI, this is probably appropriate.  For a PCI
4071da177e4SLinus Torvalds	  based system where you're not sure, the "lspci -v" entry will list the
4081da177e4SLinus Torvalds	  right "prog-if" for your USB controller(s):  EHCI, OHCI, or UHCI.
4091da177e4SLinus Torvalds
4101da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
4111da177e4SLinus Torvalds	  module will be called ohci-hcd.
4121da177e4SLinus Torvalds
4133ad3ca05SFlorian Fainelliif USB_OHCI_HCD
4143ad3ca05SFlorian Fainelli
415968b448bSAnand Gadiyarconfig USB_OHCI_HCD_OMAP1
416de57a154SManjunath Goudar	tristate "OHCI support for OMAP1/2 chips"
4173ad3ca05SFlorian Fainelli	depends on ARCH_OMAP1
418968b448bSAnand Gadiyar	default y
419a7f7f624SMasahiro Yamada	help
420968b448bSAnand Gadiyar	  Enables support for the OHCI controller on OMAP1/2 chips.
421968b448bSAnand Gadiyar
4221cc6ac59SManjunath Goudarconfig USB_OHCI_HCD_SPEAR
4231cc6ac59SManjunath Goudar	tristate "Support for ST SPEAr on-chip OHCI USB controller"
42488eaaeccSKrzysztof Kozlowski	depends on USB_OHCI_HCD && (PLAT_SPEAR || COMPILE_TEST)
42588eaaeccSKrzysztof Kozlowski	default y if PLAT_SPEAR
426a7f7f624SMasahiro Yamada	help
4271cc6ac59SManjunath Goudar	  Enables support for the on-chip OHCI controller on
4281cc6ac59SManjunath Goudar	  ST SPEAr chips.
4291cc6ac59SManjunath Goudar
430905e300eSArnd Bergmannconfig USB_OHCI_HCD_STI
431905e300eSArnd Bergmann	tristate "Support for ST STiHxxx on-chip OHCI USB controller"
43288eaaeccSKrzysztof Kozlowski	depends on (ARCH_STI || COMPILE_TEST) && OF
433905e300eSArnd Bergmann	select GENERIC_PHY
434905e300eSArnd Bergmann	select USB_OHCI_HCD_PLATFORM
435905e300eSArnd Bergmann	help
436905e300eSArnd Bergmann	  Enable support for the on-chip OHCI controller found on
437905e300eSArnd Bergmann	  STMicroelectronics consumer electronics SoC's.
438905e300eSArnd Bergmann
439f23b71f3SManjunath Goudarconfig USB_OHCI_HCD_S3C2410
4401ea35b35SArnd Bergmann	tristate "OHCI support for Samsung S3C64xx SoC series"
4411ea35b35SArnd Bergmann	depends on USB_OHCI_HCD && (ARCH_S3C64XX || COMPILE_TEST)
4421ea35b35SArnd Bergmann	default ARCH_S3C64XX
443a7f7f624SMasahiro Yamada	help
444f23b71f3SManjunath Goudar	  Enables support for the on-chip OHCI controller on
4451ea35b35SArnd Bergmann	  S3C64xx chips.
446f23b71f3SManjunath Goudar
44730330b8fSManjunath Goudarconfig USB_OHCI_HCD_LPC32XX
44830330b8fSManjunath Goudar	tristate "Support for LPC on-chip OHCI USB controller"
44923565baeSArnd Bergmann	depends on USB_OHCI_HCD
45023565baeSArnd Bergmann	depends on ARCH_LPC32XX || COMPILE_TEST
45138e0c109SArnd Bergmann	depends on USB_ISP1301
45230330b8fSManjunath Goudar	default y
453a7f7f624SMasahiro Yamada	help
45430330b8fSManjunath Goudar	  Enables support for the on-chip OHCI controller on
45530330b8fSManjunath Goudar	  NXP chips.
45630330b8fSManjunath Goudar
457b8ad5c37SManjunath Goudarconfig USB_OHCI_HCD_PXA27X
458b8ad5c37SManjunath Goudar	tristate "Support for PXA27X/PXA3XX on-chip OHCI USB controller"
459b8ad5c37SManjunath Goudar	depends on USB_OHCI_HCD && (PXA27x || PXA3xx)
460b8ad5c37SManjunath Goudar	default y
461a7f7f624SMasahiro Yamada	help
462b8ad5c37SManjunath Goudar	  Enables support for the on-chip OHCI controller on
463b8ad5c37SManjunath Goudar	  PXA27x/PXA3xx chips.
464b8ad5c37SManjunath Goudar
465e3825b48SManjunath Goudarconfig USB_OHCI_HCD_AT91
466e3825b48SManjunath Goudar	tristate "Support for Atmel on-chip OHCI USB controller"
46788eaaeccSKrzysztof Kozlowski	depends on USB_OHCI_HCD && (ARCH_AT91 || COMPILE_TEST) && OF
46888eaaeccSKrzysztof Kozlowski	default y if ARCH_AT91
469a7f7f624SMasahiro Yamada	help
470e3825b48SManjunath Goudar	  Enables support for the on-chip OHCI controller on
471e3825b48SManjunath Goudar	  Atmel chips.
472e3825b48SManjunath Goudar
473968b448bSAnand Gadiyarconfig USB_OHCI_HCD_OMAP3
4743a48fef1SManjunath Goudar	tristate "OHCI support for OMAP3 and later chips"
47588eaaeccSKrzysztof Kozlowski	depends on ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5 || COMPILE_TEST
476ef189c8dSTony Lindgren	select USB_OHCI_HCD_PLATFORM
47788eaaeccSKrzysztof Kozlowski	default y if ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5
478ef189c8dSTony Lindgren	help
479ef189c8dSTony Lindgren	  This option is deprecated now and the driver was removed, use
480ef189c8dSTony Lindgren	  USB_OHCI_HCD_PLATFORM instead.
481ef189c8dSTony Lindgren
482968b448bSAnand Gadiyar	  Enables support for the on-chip OHCI controller on
483968b448bSAnand Gadiyar	  OMAP3 and later chips.
484968b448bSAnand Gadiyar
485068413e9SArnd Bergmannconfig USB_OHCI_HCD_DAVINCI
4866c21caa3SManjunath Goudar	tristate "OHCI support for TI DaVinci DA8xx"
48788eaaeccSKrzysztof Kozlowski	depends on ARCH_DAVINCI_DA8XX || COMPILE_TEST
4886c21caa3SManjunath Goudar	depends on USB_OHCI_HCD
4896110c425SDavid Lechner	select PHY_DA8XX_USB
49088eaaeccSKrzysztof Kozlowski	default y if ARCH_DAVINCI_DA8XX
491068413e9SArnd Bergmann	help
492068413e9SArnd Bergmann	  Enables support for the DaVinci DA8xx integrated OHCI
493068413e9SArnd Bergmann	  controller. This driver cannot currently be a loadable
494068413e9SArnd Bergmann	  module because it lacks a proper PHY abstraction.
495068413e9SArnd Bergmann
496495a678fSSylvain Munautconfig USB_OHCI_HCD_PPC_OF_BE
49745e83889SArnd Bergmann	bool "OHCI support for OF platform bus (big endian)"
498c31316cbSKevin Hao	depends on PPC
499495a678fSSylvain Munaut	select USB_OHCI_BIG_ENDIAN_DESC
500495a678fSSylvain Munaut	select USB_OHCI_BIG_ENDIAN_MMIO
501a7f7f624SMasahiro Yamada	help
50245e83889SArnd Bergmann	  Enables support for big-endian USB controllers present on the
50345e83889SArnd Bergmann	  OpenFirmware platform bus.
504495a678fSSylvain Munaut
505495a678fSSylvain Munautconfig USB_OHCI_HCD_PPC_OF_LE
50645e83889SArnd Bergmann	bool "OHCI support for OF platform bus (little endian)"
507c31316cbSKevin Hao	depends on PPC
508495a678fSSylvain Munaut	select USB_OHCI_LITTLE_ENDIAN
509a7f7f624SMasahiro Yamada	help
51045e83889SArnd Bergmann	  Enables support for little-endian USB controllers present on the
51145e83889SArnd Bergmann	  OpenFirmware platform bus.
51245e83889SArnd Bergmann
51345e83889SArnd Bergmannconfig USB_OHCI_HCD_PPC_OF
51445e83889SArnd Bergmann	bool
515c31316cbSKevin Hao	depends on PPC
51645e83889SArnd Bergmann	default USB_OHCI_HCD_PPC_OF_BE || USB_OHCI_HCD_PPC_OF_LE
517495a678fSSylvain Munaut
5181da177e4SLinus Torvaldsconfig USB_OHCI_HCD_PCI
519c1117afbSManjunath Goudar	tristate "OHCI support for PCI-bus USB controllers"
5202c93e790Syuan linyu	depends on USB_PCI
5211da177e4SLinus Torvalds	default y
5221da177e4SLinus Torvalds	select USB_OHCI_LITTLE_ENDIAN
523a7f7f624SMasahiro Yamada	help
5241da177e4SLinus Torvalds	  Enables support for PCI-bus plug-in USB controller cards.
5251da177e4SLinus Torvalds	  If unsure, say Y.
5261da177e4SLinus Torvalds
527c604e851SMichael Bueschconfig USB_OHCI_HCD_SSB
528259b83a3SHauke Mehrtens	bool "OHCI support for Broadcom SSB OHCI core (DEPRECATED)"
5293ad3ca05SFlorian Fainelli	depends on (SSB = y || SSB = USB_OHCI_HCD)
530259b83a3SHauke Mehrtens	select USB_HCD_SSB
531259b83a3SHauke Mehrtens	select USB_OHCI_HCD_PLATFORM
532a7f7f624SMasahiro Yamada	help
533259b83a3SHauke Mehrtens	  This option is deprecated now and the driver was removed, use
534259b83a3SHauke Mehrtens	  USB_HCD_SSB and USB_OHCI_HCD_PLATFORM instead.
535259b83a3SHauke Mehrtens
536c604e851SMichael Buesch	  Support for the Sonics Silicon Backplane (SSB) attached
537c604e851SMichael Buesch	  Broadcom USB OHCI core.
538c604e851SMichael Buesch
539c604e851SMichael Buesch	  This device is present in some embedded devices with
540c604e851SMichael Buesch	  Broadcom based SSB bus.
541c604e851SMichael Buesch
542c604e851SMichael Buesch	  If unsure, say N.
543c604e851SMichael Buesch
54462194244SJingoo Hanconfig USB_OHCI_EXYNOS
545dea7b202SKrzysztof Kozlowski	tristate "OHCI support for Samsung S5P/Exynos SoC Series"
54688eaaeccSKrzysztof Kozlowski	depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
54762194244SJingoo Han	help
5482abc8657SKrzysztof Kozlowski	  Enable support for the Samsung S5Pv210 and Exynos SOC's on-chip OHCI
5492abc8657SKrzysztof Kozlowski	  controller.
55062194244SJingoo Han
551fa3364b5SHauke Mehrtensconfig USB_OHCI_HCD_PLATFORM
552928fb68eSManjunath Goudar	tristate "Generic OHCI driver for a platform device"
553a7f7f624SMasahiro Yamada	help
554fa3364b5SHauke Mehrtens	  Adds an OHCI host driver for a generic platform device, which
555898d828bSPeter Meerwald	  provides a memory space and an irq.
556fa3364b5SHauke Mehrtens
557fa3364b5SHauke Mehrtens	  If unsure, say N.
558fa3364b5SHauke Mehrtens
5593ad3ca05SFlorian Fainelliconfig USB_OCTEON_OHCI
5602193dda5SAlan Stern	bool "Octeon on-chip OHCI support (DEPRECATED)"
5619ddebc46SDavid Daney	depends on CAVIUM_OCTEON_SOC
5623ad3ca05SFlorian Fainelli	default USB_OCTEON_EHCI
563df115f3eSBen Hutchings	select USB_OHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
5643ad3ca05SFlorian Fainelli	select USB_OHCI_LITTLE_ENDIAN
5652193dda5SAlan Stern	select USB_OHCI_HCD_PLATFORM
5663ad3ca05SFlorian Fainelli	help
5672193dda5SAlan Stern	  This option is deprecated now and the driver was removed, use
5682193dda5SAlan Stern	  USB_OHCI_HCD_PLATFORM instead.
5692193dda5SAlan Stern
5703ad3ca05SFlorian Fainelli	  Enable support for the Octeon II SOC's on-chip OHCI
5713ad3ca05SFlorian Fainelli	  controller.  It is needed for low-speed USB 1.0 device
5723ad3ca05SFlorian Fainelli	  support.  All CN6XXX based chips with USB are supported.
5733ad3ca05SFlorian Fainelli
5743ad3ca05SFlorian Fainelliendif # USB_OHCI_HCD
5753ad3ca05SFlorian Fainelli
5761da177e4SLinus Torvaldsconfig USB_UHCI_HCD
5771da177e4SLinus Torvalds	tristate "UHCI HCD (most Intel and VIA) support"
578be3d5a49SNiklas Schnelle	depends on (USB_PCI && HAS_IOPORT) || USB_UHCI_SUPPORT_NON_PCI_HC
579a7f7f624SMasahiro Yamada	help
5801da177e4SLinus Torvalds	  The Universal Host Controller Interface is a standard by Intel for
5811da177e4SLinus Torvalds	  accessing the USB hardware in the PC (which is also called the USB
5821da177e4SLinus Torvalds	  host controller). If your USB host controller conforms to this
5831da177e4SLinus Torvalds	  standard, you may want to say Y, but see below. All recent boards
5841da177e4SLinus Torvalds	  with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX,
5851da177e4SLinus Torvalds	  i810, i820) conform to this standard. Also all VIA PCI chipsets
5861da177e4SLinus Torvalds	  (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro
5873db7739cSJan Andersson	  133) and LEON/GRLIB SoCs with the GRUSBHC controller.
5883db7739cSJan Andersson	  If unsure, say Y.
5891da177e4SLinus Torvalds
5901da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
5911da177e4SLinus Torvalds	  module will be called uhci-hcd.
5921da177e4SLinus Torvalds
593d3219d1cSJan Anderssonconfig USB_UHCI_SUPPORT_NON_PCI_HC
594d3219d1cSJan Andersson	bool
595ccd9509aSAlan Stern	default y if (SPARC_LEON || USB_UHCI_PLATFORM)
596100d4597STony Prisk
597100d4597STony Priskconfig USB_UHCI_PLATFORM
598ccd9509aSAlan Stern	bool
5994642d34aSBenjamin Herrenschmidt	default y if (ARCH_VT8500 || ARCH_ASPEED)
6004642d34aSBenjamin Herrenschmidt
6014642d34aSBenjamin Herrenschmidtconfig USB_UHCI_ASPEED
6024642d34aSBenjamin Herrenschmidt	bool
6034642d34aSBenjamin Herrenschmidt	default y if ARCH_ASPEED
604d3219d1cSJan Andersson
605236dd4d1SAnton Vorontsovconfig USB_FHCI_HCD
606236dd4d1SAnton Vorontsov	tristate "Freescale QE USB Host Controller support"
607*830b1085SBartosz Golaszewski	depends on QE_GPIO && QUICC_ENGINE
608236dd4d1SAnton Vorontsov	select FSL_GTM
609236dd4d1SAnton Vorontsov	select QE_USB
610236dd4d1SAnton Vorontsov	help
611236dd4d1SAnton Vorontsov	  This driver enables support for Freescale QE USB Host Controller
612236dd4d1SAnton Vorontsov	  (as found on MPC8360 and MPC8323 processors), the driver supports
613236dd4d1SAnton Vorontsov	  Full and Low Speed USB.
614236dd4d1SAnton Vorontsov
615236dd4d1SAnton Vorontsovconfig FHCI_DEBUG
616236dd4d1SAnton Vorontsov	bool "Freescale QE USB Host Controller debug support"
617236dd4d1SAnton Vorontsov	depends on USB_FHCI_HCD && DEBUG_FS
618236dd4d1SAnton Vorontsov	help
619236dd4d1SAnton Vorontsov	  Say "y" to see some FHCI debug information and statistics
62025985edcSLucas De Marchi	  through debugfs.
621236dd4d1SAnton Vorontsov
6221da177e4SLinus Torvaldsconfig USB_SL811_HCD
6231da177e4SLinus Torvalds	tristate "SL811HS HCD support"
624cfa33eaeSVegard Nossum	depends on HAS_IOMEM
6251da177e4SLinus Torvalds	help
6261da177e4SLinus Torvalds	  The SL811HS is a single-port USB controller that supports either
6271da177e4SLinus Torvalds	  host side or peripheral side roles.  Enable this option if your
6281da177e4SLinus Torvalds	  board has this chip, and you want to use it as a host controller.
6291da177e4SLinus Torvalds	  If unsure, say N.
6301da177e4SLinus Torvalds
6311da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
6321da177e4SLinus Torvalds	  module will be called sl811-hcd.
6331da177e4SLinus Torvalds
634ad7c56f0SMike Frysingerconfig USB_SL811_HCD_ISO
635ad7c56f0SMike Frysinger	bool "partial ISO support"
636ad7c56f0SMike Frysinger	depends on USB_SL811_HCD
637ad7c56f0SMike Frysinger	help
638ad7c56f0SMike Frysinger	  The driver doesn't support iso_frame_desc (yet), but for some simple
639ad7c56f0SMike Frysinger	  devices that just queue one ISO frame per URB, then ISO transfers
640ad7c56f0SMike Frysinger	  "should" work using the normal urb status fields.
641ad7c56f0SMike Frysinger
642ad7c56f0SMike Frysinger	  If unsure, say N.
643ad7c56f0SMike Frysinger
644c6de2b64SDavid Brownellconfig USB_SL811_CS
645c6de2b64SDavid Brownell	tristate "CF/PCMCIA support for SL811HS HCD"
646c6de2b64SDavid Brownell	depends on USB_SL811_HCD && PCMCIA
647c6de2b64SDavid Brownell	help
648c6de2b64SDavid Brownell	  Wraps a PCMCIA driver around the SL811HS HCD, supporting the RATOC
649c6de2b64SDavid Brownell	  REX-CFU1U CF card (often used with PDAs).  If unsure, say N.
650c6de2b64SDavid Brownell
651c6de2b64SDavid Brownell	  To compile this driver as a module, choose M here: the
652c6de2b64SDavid Brownell	  module will be called "sl811_cs".
653c6de2b64SDavid Brownell
6545d304358SYoshihiro Shimodaconfig USB_R8A66597_HCD
655fa0de2b6SM4rkusXXL	tristate "R8A66597 HCD support"
656e37a6c92SVegard Nossum	depends on HAS_IOMEM
6575d304358SYoshihiro Shimoda	help
6585d304358SYoshihiro Shimoda	  The R8A66597 is a USB 2.0 host and peripheral controller.
6595d304358SYoshihiro Shimoda
6605d304358SYoshihiro Shimoda	  Enable this option if your board has this chip, and you want
6615d304358SYoshihiro Shimoda	  to use it as a host controller.  If unsure, say N.
6625d304358SYoshihiro Shimoda
6635d304358SYoshihiro Shimoda	  To compile this driver as a module, choose M here: the
6645d304358SYoshihiro Shimoda	  module will be called r8a66597-hcd.
6655d304358SYoshihiro Shimoda
666034d7c13SKuninori Morimotoconfig USB_RENESAS_USBHS_HCD
667034d7c13SKuninori Morimoto	tristate "Renesas USBHS HCD support"
668034d7c13SKuninori Morimoto	depends on USB_RENESAS_USBHS
669034d7c13SKuninori Morimoto	help
670034d7c13SKuninori Morimoto	  The Renesas USBHS is a USB 2.0 host and peripheral controller.
671034d7c13SKuninori Morimoto
672034d7c13SKuninori Morimoto	  Enable this option if your board has this chip, and you want
673034d7c13SKuninori Morimoto	  to use it as a host controller.  If unsure, say N.
674034d7c13SKuninori Morimoto
675034d7c13SKuninori Morimoto	  To compile this driver as a module, choose M here: the
676034d7c13SKuninori Morimoto	  module will be called renesas-usbhs.
677034d7c13SKuninori Morimoto
67862e11d1bSHauke Mehrtensconfig USB_HCD_BCMA
67962e11d1bSHauke Mehrtens	tristate "BCMA usb host driver"
680eb83be98SGreg Kroah-Hartman	depends on BCMA
68162e11d1bSHauke Mehrtens	select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
68262e11d1bSHauke Mehrtens	select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
68362e11d1bSHauke Mehrtens	help
68471c421dbSJesper Dangaard Brouer	  Enable support for the EHCI and OCHI host controller on an bcma bus.
68562e11d1bSHauke Mehrtens	  It converts the bcma driver into two platform device drivers
68662e11d1bSHauke Mehrtens	  for ehci and ohci.
68762e11d1bSHauke Mehrtens
68862e11d1bSHauke Mehrtens	  If unsure, say N.
6897043c2ccSHauke Mehrtens
6907043c2ccSHauke Mehrtensconfig USB_HCD_SSB
6917043c2ccSHauke Mehrtens	tristate "SSB usb host driver"
692eb83be98SGreg Kroah-Hartman	depends on SSB
6937043c2ccSHauke Mehrtens	select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
6947043c2ccSHauke Mehrtens	select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
6957043c2ccSHauke Mehrtens	help
69671c421dbSJesper Dangaard Brouer	  Enable support for the EHCI and OCHI host controller on an bcma bus.
6977043c2ccSHauke Mehrtens	  It converts the bcma driver into two platform device drivers
6987043c2ccSHauke Mehrtens	  for ehci and ohci.
6997043c2ccSHauke Mehrtens
7007043c2ccSHauke Mehrtens	  If unsure, say N.
701726a85caSJack Pham
702726a85caSJack Phamconfig USB_HCD_TEST_MODE
703726a85caSJack Pham	bool "HCD test mode support"
704a7f7f624SMasahiro Yamada	help
705726a85caSJack Pham	  Say 'Y' to enable additional software test modes that may be
706726a85caSJack Pham	  supported by the host controller drivers.
707726a85caSJack Pham
708726a85caSJack Pham	  One such test mode is the Embedded High-speed Host Electrical Test
709726a85caSJack Pham	  (EHSET) for EHCI host controller hardware, specifically the "Single
710726a85caSJack Pham	  Step Set Feature" test.  Typically this will be enabled for On-the-Go
711726a85caSJack Pham	  or embedded hosts that need to undergo USB-IF compliance testing with
712726a85caSJack Pham	  the aid of special testing hardware.  In the future, this may expand
713726a85caSJack Pham	  to include other tests that require support from a HCD driver.
714726a85caSJack Pham
715726a85caSJack Pham	  This option is of interest only to developers who need to validate
716726a85caSJack Pham	  their USB hardware designs.  It is not needed for normal use.  If
717726a85caSJack Pham	  unsure, say N.
718494ed399SJuergen Gross
719494ed399SJuergen Grossconfig USB_XEN_HCD
720494ed399SJuergen Gross	tristate "Xen usb virtual host driver"
721494ed399SJuergen Gross	depends on XEN
722494ed399SJuergen Gross	select XEN_XENBUS_FRONTEND
723494ed399SJuergen Gross	help
724494ed399SJuergen Gross	  The Xen usb virtual host driver serves as a frontend driver enabling
725494ed399SJuergen Gross	  a Xen guest system to access USB Devices passed through to the guest
726494ed399SJuergen Gross	  by the Xen host (usually Dom0).
727494ed399SJuergen Gross	  Only needed if the kernel is running in a Xen guest and generic
728494ed399SJuergen Gross	  access to a USB device is needed.
729