^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) # SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) # USB Host Controller Drivers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) #
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) comment "USB Host Controller Drivers"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) config USB_C67X00_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) tristate "Cypress C67x00 HCD support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) depends on HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) The Cypress C67x00 (EZ-Host/EZ-OTG) chips are dual-role
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) host/peripheral/OTG USB controllers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) Enable this option to support this chip in host controller mode.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) module will be called c67x00.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) config USB_XHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) tristate "xHCI HCD (USB 3.0) support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) depends on HAS_DMA && HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) "SuperSpeed" host controller hardware.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) module will be called xhci-hcd.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) if USB_XHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) config USB_XHCI_DBGCAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) bool "xHCI support for debug capability"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) depends on TTY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) Say 'Y' to enable the support for the xHCI debug capability. Make
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) sure that your xHCI host supports the extended debug capability and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) you want a TTY serial device based on the xHCI debug capability
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) before enabling this option. If unsure, say 'N'.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) config USB_XHCI_PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) tristate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) depends on USB_PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) depends on USB_XHCI_PCI_RENESAS || !USB_XHCI_PCI_RENESAS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) config USB_XHCI_PCI_RENESAS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) tristate "Support for additional Renesas xHCI controller with firmware"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) Say 'Y' to enable the support for the Renesas xHCI controller with
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) firmware. Make sure you have the firwmare for the device and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) installed on your system for this device to work.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52) If unsure, say 'N'.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) config USB_XHCI_PLATFORM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) tristate "Generic xHCI driver for a platform device"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) select USB_XHCI_RCAR if ARCH_RENESAS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) Adds an xHCI host driver for a generic platform device, which
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) provides a memory space and an irq.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) It is also a prerequisite for platform specific drivers that
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61) implement some extra quirks.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65) config USB_XHCI_HISTB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) tristate "xHCI support for HiSilicon STB SoCs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67) depends on USB_XHCI_PLATFORM && (ARCH_HISI || COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) Say 'Y' to enable the support for the xHCI host controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) found in HiSilicon STB SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) config USB_XHCI_MTK
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73) tristate "xHCI support for MediaTek SoCs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) select MFD_SYSCON
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) depends on (MIPS && SOC_MT7621) || ARCH_MEDIATEK || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) Say 'Y' to enable the support for the xHCI host controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) found in MediaTek SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) config USB_XHCI_MVEBU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) tristate "xHCI support for Marvell Armada 375/38x/37xx"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) select USB_XHCI_PLATFORM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) depends on HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) depends on ARCH_MVEBU || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87) Say 'Y' to enable the support for the xHCI host controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) found in Marvell Armada 375/38x/37xx ARM SOCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90) config USB_XHCI_RCAR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) tristate "xHCI support for Renesas R-Car SoCs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92) depends on USB_XHCI_PLATFORM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) depends on ARCH_RENESAS || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) Say 'Y' to enable the support for the xHCI host controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) found in Renesas R-Car ARM SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) config USB_XHCI_TEGRA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) tristate "xHCI support for NVIDIA Tegra SoCs"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) depends on PHY_TEGRA_XUSB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) depends on RESET_CONTROLLER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102) select FW_LOADER
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) Say 'Y' to enable the support for the xHCI host controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) found in NVIDIA Tegra124 and later SoCs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) endif # USB_XHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) config USB_EHCI_BRCMSTB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) tristate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112) config USB_BRCMSTB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) tristate "Broadcom STB USB support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) depends on (ARCH_BRCMSTB && PHY_BRCM_USB) || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) select USB_EHCI_BRCMSTB if USB_EHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) select USB_XHCI_PLATFORM if USB_XHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) Enables support for XHCI, EHCI and OHCI host controllers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) found in Broadcom STB SoC's.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) To compile these drivers as modules, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123) modules will be called ohci-platform.ko, ehci-brcm.ko and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) xhci-plat-hcd.ko
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) Disabling this will keep the controllers and corresponding
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) PHYs powered down.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) config USB_EHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) tristate "EHCI HCD (USB 2.0) support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131) depends on HAS_DMA && HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133) The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) If your USB host controller supports USB 2.0, you will likely want to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) configure this Host Controller Driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) EHCI controllers are packaged with "companion" host controllers (OHCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) or UHCI) to handle USB 1.1 devices connected to root hub ports. Ports
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) will connect to EHCI if the device is high speed, otherwise they
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) connect to a companion controller. If you configure EHCI, you should
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142) probably configure the OHCI (for NEC and some other vendors) USB Host
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) Controller Driver or UHCI (for Via motherboards) Host Controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) Driver too.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) You may want to read <file:Documentation/usb/ehci.rst>.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) module will be called ehci-hcd.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151) config USB_EHCI_ROOT_HUB_TT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) bool "Root Hub Transaction Translators"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) depends on USB_EHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) Some EHCI chips have vendor-specific extensions to integrate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) transaction translators, so that no OHCI or UHCI companion
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) controller is needed. It's safe to say "y" even if your
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) controller doesn't support this feature.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) This supports the EHCI implementation that's originally
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161) from ARC, and has since changed hands a few times.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) config USB_EHCI_TT_NEWSCHED
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164) bool "Improved Transaction Translator scheduling"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) depends on USB_EHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) This changes the periodic scheduling code to fill more of the low
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) and full speed bandwidth available from the Transaction Translator
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) (TT) in USB 2.0 hubs. Without this, only one transfer will be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) issued in each microframe, significantly reducing the number of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) periodic low/fullspeed transfers possible.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) If you have multiple periodic low/fullspeed devices connected to a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175) highspeed USB hub which is connected to a highspeed USB Host
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) Controller, and some of those devices will not work correctly
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) (possibly due to "ENOSPC" or "-28" errors), say Y. Conversely, if
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) you have only one such device and it doesn't work, you could try
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) saying N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) If unsure, say Y.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) if USB_EHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) config USB_EHCI_PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) tristate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) depends on USB_PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) config USB_EHCI_HCD_PMC_MSP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) tristate "EHCI support for on-chip PMC MSP71xx USB controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) depends on MSP_HAS_USB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) select USB_EHCI_BIG_ENDIAN_DESC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) select USB_EHCI_BIG_ENDIAN_MMIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) Enables support for the onchip USB controller on the PMC_MSP7100 Family SoC's.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) config XPS_USB_HCD_XILINX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200) bool "Use Xilinx usb host EHCI controller core"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) depends on (PPC32 || MICROBLAZE)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) select USB_EHCI_BIG_ENDIAN_DESC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) select USB_EHCI_BIG_ENDIAN_MMIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) Xilinx xps USB host controller core is EHCI compliant and has
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) transaction translator built-in. It can be configured to either
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) support both high speed and full speed devices, or high speed
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) devices only.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) config USB_EHCI_FSL
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) tristate "Support for Freescale on-chip EHCI USB controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) select USB_EHCI_ROOT_HUB_TT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) Variation of ARC USB block used in some Freescale chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) config USB_EHCI_MXC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) tristate "Support for Freescale i.MX on-chip EHCI USB controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218) depends on ARCH_MXC || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) select USB_EHCI_ROOT_HUB_TT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) Variation of ARC USB block used in some Freescale chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) config USB_EHCI_HCD_NPCM7XX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224) tristate "Support for Nuvoton NPCM7XX on-chip EHCI USB controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) depends on (USB_EHCI_HCD && ARCH_NPCM7XX) || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226) default y if (USB_EHCI_HCD && ARCH_NPCM7XX)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228) Enables support for the on-chip EHCI controller on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) Nuvoton NPCM7XX chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231) config USB_EHCI_HCD_OMAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) tristate "EHCI support for OMAP3 and later chips"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233) depends on ARCH_OMAP
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234) depends on NOP_USB_XCEIV
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237) Enables support for the on-chip EHCI controller on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238) OMAP3 and later chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 239)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 240) config USB_EHCI_HCD_ORION
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 241) tristate "Support for Marvell EBU on-chip EHCI USB controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 242) depends on USB_EHCI_HCD && (PLAT_ORION || ARCH_MVEBU || COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 243) default y if (PLAT_ORION || ARCH_MVEBU)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 244) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 245) Enables support for the on-chip EHCI controller on Marvell's
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 246) embedded ARM SoCs, including Orion, Kirkwood, Dove, Armada XP,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 247) Armada 370. This is different from the EHCI implementation
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 248) on Marvell's mobile PXA and MMP SoC, see "EHCI support for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 249) Marvell PXA/MMP USB controller" for those.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 250)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 251) config USB_EHCI_HCD_SPEAR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 252) tristate "Support for ST SPEAr on-chip EHCI USB controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 253) depends on USB_EHCI_HCD && (PLAT_SPEAR || COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 254) default y if PLAT_SPEAR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 255) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 256) Enables support for the on-chip EHCI controller on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 257) ST SPEAr chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 258)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 259) config USB_EHCI_HCD_STI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 260) tristate "Support for ST STiHxxx on-chip EHCI USB controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 261) depends on (ARCH_STI || COMPILE_TEST) && OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 262) select GENERIC_PHY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 263) select USB_EHCI_HCD_PLATFORM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 264) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 265) Enable support for the on-chip EHCI controller found on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 266) STMicroelectronics consumer electronics SoC's.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 267)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 268) config USB_EHCI_HCD_AT91
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 269) tristate "Support for Atmel on-chip EHCI USB controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 270) depends on USB_EHCI_HCD && (ARCH_AT91 || COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 271) default y if ARCH_AT91
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 272) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 273) Enables support for the on-chip EHCI controller on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 274) Atmel chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 275)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 276) config USB_EHCI_TEGRA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 277) tristate "NVIDIA Tegra HCD support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 278) depends on ARCH_TEGRA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 279) select USB_EHCI_ROOT_HUB_TT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 280) select USB_TEGRA_PHY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 281) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 282) This driver enables support for the internal USB Host Controllers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 283) found in NVIDIA Tegra SoCs. The controllers are EHCI compliant.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 284)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 285) config USB_EHCI_HCD_PPC_OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 286) bool "EHCI support for PPC USB controller on OF platform bus"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 287) depends on PPC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 288) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 289) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 290) Enables support for the USB controller present on the PowerPC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 291) OpenFirmware platform bus.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 292)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 293) config USB_EHCI_SH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 294) bool "EHCI support for SuperH USB controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 295) depends on SUPERH || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 296) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 297) Enables support for the on-chip EHCI controller on the SuperH.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 298) If you use the PCI EHCI controller, this option is not necessary.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 299)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 300) config USB_EHCI_EXYNOS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 301) tristate "EHCI support for Samsung S5P/Exynos SoC Series"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 302) depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 303) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 304) Enable support for the Samsung Exynos SOC's on-chip EHCI controller.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 305)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 306) config USB_EHCI_MV
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 307) tristate "EHCI support for Marvell PXA/MMP USB controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 308) depends on ARCH_PXA || ARCH_MMP || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 309) select USB_EHCI_ROOT_HUB_TT
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 310) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 311) Enables support for Marvell (including PXA and MMP series) on-chip
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 312) USB SPH and OTG controller. SPH is a single port host, and it can
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 313) only be EHCI host. OTG is controller that can switch to host mode.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 314) Note that this driver will not work on Marvell's other EHCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 315) controller used by the EBU-type SoCs including Orion, Kirkwood,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 316) Dova, Armada 370 and Armada XP. See "Support for Marvell EBU
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 317) on-chip EHCI USB controller" for those.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 318)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 319) config USB_CNS3XXX_EHCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 320) bool "Cavium CNS3XXX EHCI Module (DEPRECATED)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 321) depends on ARCH_CNS3XXX || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 322) select USB_EHCI_HCD_PLATFORM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 323) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 324) This option is deprecated now and the driver was removed, use
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 325) USB_EHCI_HCD_PLATFORM instead.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 326)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 327) Enable support for the CNS3XXX SOC's on-chip EHCI controller.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 328) It is needed for high-speed (480Mbit/sec) USB 2.0 device
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 329) support.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 330)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 331) config USB_EHCI_HCD_PLATFORM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 332) tristate "Generic EHCI driver for a platform device"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 333) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 334) Adds an EHCI host driver for a generic platform device, which
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 335) provides a memory space and an irq.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 336)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 337) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 338)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 339) config USB_OCTEON_EHCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 340) bool "Octeon on-chip EHCI support (DEPRECATED)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 341) depends on CAVIUM_OCTEON_SOC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 342) select USB_EHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 343) select USB_EHCI_HCD_PLATFORM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 344) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 345) This option is deprecated now and the driver was removed, use
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 346) USB_EHCI_HCD_PLATFORM instead.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 347)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 348) Enable support for the Octeon II SOC's on-chip EHCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 349) controller. It is needed for high-speed (480Mbit/sec)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 350) USB 2.0 device support. All CN6XXX based chips with USB are
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 351) supported.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 352)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 353) endif # USB_EHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 354)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 355) config USB_OXU210HP_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 356) tristate "OXU210HP HCD support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 357) depends on HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 358) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 359) The OXU210HP is an USB host/OTG/device controller. Enable this
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 360) option if your board has this chip. If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 361)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 362) This driver does not support isochronous transfers and doesn't
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 363) implement OTG nor USB device controllers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 364)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 365) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 366) module will be called oxu210hp-hcd.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 367)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 368) config USB_ISP116X_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 369) tristate "ISP116X HCD support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 370) depends on HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 371) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 372) The ISP1160 and ISP1161 chips are USB host controllers. Enable this
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 373) option if your board has this chip. If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 374)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 375) This driver does not support isochronous transfers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 376)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 377) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 378) module will be called isp116x-hcd.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 379)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 380) config USB_ISP1362_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 381) tristate "ISP1362 HCD support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 382) depends on HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 383) depends on COMPILE_TEST # nothing uses this
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 384) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 385) Supports the Philips ISP1362 chip as a host controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 386)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 387) This driver does not support isochronous transfers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 388)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 389) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 390) module will be called isp1362-hcd.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 391)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 392) config USB_FOTG210_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 393) tristate "FOTG210 HCD support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 394) depends on USB && HAS_DMA && HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 395) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 396) Faraday FOTG210 is an OTG controller which can be configured as
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 397) an USB2.0 host. It is designed to meet USB2.0 EHCI specification
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 398) with minor modification.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 399)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 400) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 401) module will be called fotg210-hcd.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 402)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 403) config USB_MAX3421_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 404) tristate "MAX3421 HCD (USB-over-SPI) support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 405) depends on USB && SPI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 406) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 407) The Maxim MAX3421E chip supports standard USB 2.0-compliant
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 408) full-speed devices either in host or peripheral mode. This
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 409) driver supports the host-mode of the MAX3421E only.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 410)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 411) To compile this driver as a module, choose M here: the module will
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 412) be called max3421-hcd.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 413)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 414) config USB_OHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 415) tristate "OHCI HCD (USB 1.1) support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 416) depends on HAS_DMA && HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 417) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 418) The Open Host Controller Interface (OHCI) is a standard for accessing
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 419) USB 1.1 host controller hardware. It does more in hardware than Intel's
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 420) UHCI specification. If your USB host controller follows the OHCI spec,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 421) say Y. On most non-x86 systems, and on x86 hardware that's not using a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 422) USB controller from Intel or VIA, this is appropriate. If your host
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 423) controller doesn't use PCI, this is probably appropriate. For a PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 424) based system where you're not sure, the "lspci -v" entry will list the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 425) right "prog-if" for your USB controller(s): EHCI, OHCI, or UHCI.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 426)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 427) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 428) module will be called ohci-hcd.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 429)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 430) if USB_OHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 431)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 432) config USB_OHCI_HCD_OMAP1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 433) tristate "OHCI support for OMAP1/2 chips"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 434) depends on ARCH_OMAP1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 435) depends on ISP1301_OMAP || !(MACH_OMAP_H2 || MACH_OMAP_H3)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 436) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 437) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 438) Enables support for the OHCI controller on OMAP1/2 chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 439)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 440) config USB_OHCI_HCD_SPEAR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 441) tristate "Support for ST SPEAr on-chip OHCI USB controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 442) depends on USB_OHCI_HCD && (PLAT_SPEAR || COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 443) default y if PLAT_SPEAR
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 444) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 445) Enables support for the on-chip OHCI controller on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 446) ST SPEAr chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 447)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 448) config USB_OHCI_HCD_STI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 449) tristate "Support for ST STiHxxx on-chip OHCI USB controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 450) depends on (ARCH_STI || COMPILE_TEST) && OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 451) select GENERIC_PHY
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 452) select USB_OHCI_HCD_PLATFORM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 453) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 454) Enable support for the on-chip OHCI controller found on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 455) STMicroelectronics consumer electronics SoC's.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 456)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 457) config USB_OHCI_HCD_S3C2410
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 458) tristate "OHCI support for Samsung S3C24xx/S3C64xx SoC series"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 459) depends on USB_OHCI_HCD && (ARCH_S3C24XX || ARCH_S3C64XX || COMPILE_TEST)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 460) default y if (ARCH_S3C24XX || ARCH_S3C64XX)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 461) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 462) Enables support for the on-chip OHCI controller on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 463) S3C24xx/S3C64xx chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 464)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 465) config USB_OHCI_HCD_LPC32XX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 466) tristate "Support for LPC on-chip OHCI USB controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 467) depends on USB_OHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 468) depends on ARCH_LPC32XX || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 469) depends on USB_ISP1301
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 470) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 471) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 472) Enables support for the on-chip OHCI controller on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 473) NXP chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 474)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 475) config USB_OHCI_HCD_PXA27X
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 476) tristate "Support for PXA27X/PXA3XX on-chip OHCI USB controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 477) depends on USB_OHCI_HCD && (PXA27x || PXA3xx)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 478) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 479) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 480) Enables support for the on-chip OHCI controller on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 481) PXA27x/PXA3xx chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 482)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 483) config USB_OHCI_HCD_AT91
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 484) tristate "Support for Atmel on-chip OHCI USB controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 485) depends on USB_OHCI_HCD && (ARCH_AT91 || COMPILE_TEST) && OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 486) default y if ARCH_AT91
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 487) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 488) Enables support for the on-chip OHCI controller on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 489) Atmel chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 490)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 491) config USB_OHCI_HCD_OMAP3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 492) tristate "OHCI support for OMAP3 and later chips"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 493) depends on ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5 || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 494) select USB_OHCI_HCD_PLATFORM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 495) default y if ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 496) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 497) This option is deprecated now and the driver was removed, use
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 498) USB_OHCI_HCD_PLATFORM instead.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 499)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 500) Enables support for the on-chip OHCI controller on
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 501) OMAP3 and later chips.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 502)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 503) config USB_OHCI_HCD_DAVINCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 504) tristate "OHCI support for TI DaVinci DA8xx"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 505) depends on ARCH_DAVINCI_DA8XX || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 506) depends on USB_OHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 507) select PHY_DA8XX_USB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 508) default y if ARCH_DAVINCI_DA8XX
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 509) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 510) Enables support for the DaVinci DA8xx integrated OHCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 511) controller. This driver cannot currently be a loadable
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 512) module because it lacks a proper PHY abstraction.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 513)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 514) config USB_OHCI_HCD_PPC_OF_BE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 515) bool "OHCI support for OF platform bus (big endian)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 516) depends on PPC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 517) select USB_OHCI_BIG_ENDIAN_DESC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 518) select USB_OHCI_BIG_ENDIAN_MMIO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 519) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 520) Enables support for big-endian USB controllers present on the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 521) OpenFirmware platform bus.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 522)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 523) config USB_OHCI_HCD_PPC_OF_LE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 524) bool "OHCI support for OF platform bus (little endian)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 525) depends on PPC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 526) select USB_OHCI_LITTLE_ENDIAN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 527) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 528) Enables support for little-endian USB controllers present on the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 529) OpenFirmware platform bus.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 530)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 531) config USB_OHCI_HCD_PPC_OF
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 532) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 533) depends on PPC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 534) default USB_OHCI_HCD_PPC_OF_BE || USB_OHCI_HCD_PPC_OF_LE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 535)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 536) config USB_OHCI_HCD_PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 537) tristate "OHCI support for PCI-bus USB controllers"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 538) depends on USB_PCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 539) default y
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 540) select USB_OHCI_LITTLE_ENDIAN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 541) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 542) Enables support for PCI-bus plug-in USB controller cards.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 543) If unsure, say Y.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 544)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 545) config USB_OHCI_HCD_SSB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 546) bool "OHCI support for Broadcom SSB OHCI core (DEPRECATED)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 547) depends on (SSB = y || SSB = USB_OHCI_HCD)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 548) select USB_HCD_SSB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 549) select USB_OHCI_HCD_PLATFORM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 550) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 551) This option is deprecated now and the driver was removed, use
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 552) USB_HCD_SSB and USB_OHCI_HCD_PLATFORM instead.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 553)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 554) Support for the Sonics Silicon Backplane (SSB) attached
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 555) Broadcom USB OHCI core.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 556)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 557) This device is present in some embedded devices with
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 558) Broadcom based SSB bus.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 559)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 560) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 561)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 562) config USB_OHCI_SH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 563) bool "OHCI support for SuperH USB controller (DEPRECATED)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 564) depends on SUPERH || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 565) select USB_OHCI_HCD_PLATFORM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 566) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 567) This option is deprecated now and the driver was removed, use
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 568) USB_OHCI_HCD_PLATFORM instead.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 569)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 570) Enables support for the on-chip OHCI controller on the SuperH.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 571) If you use the PCI OHCI controller, this option is not necessary.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 572)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 573) config USB_OHCI_EXYNOS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 574) tristate "OHCI support for Samsung S5P/Exynos SoC Series"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 575) depends on ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 576) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 577) Enable support for the Samsung Exynos SOC's on-chip OHCI controller.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 578)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 579) config USB_CNS3XXX_OHCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 580) bool "Cavium CNS3XXX OHCI Module (DEPRECATED)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 581) depends on ARCH_CNS3XXX || COMPILE_TEST
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 582) select USB_OHCI_HCD_PLATFORM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 583) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 584) This option is deprecated now and the driver was removed, use
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 585) USB_OHCI_HCD_PLATFORM instead.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 586)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 587) Enable support for the CNS3XXX SOC's on-chip OHCI controller.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 588) It is needed for low-speed USB 1.0 device support.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 589)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 590) config USB_OHCI_HCD_PLATFORM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 591) tristate "Generic OHCI driver for a platform device"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 592) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 593) Adds an OHCI host driver for a generic platform device, which
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 594) provides a memory space and an irq.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 595)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 596) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 597)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 598) config USB_OCTEON_OHCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 599) bool "Octeon on-chip OHCI support (DEPRECATED)"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 600) depends on CAVIUM_OCTEON_SOC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 601) default USB_OCTEON_EHCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 602) select USB_OHCI_BIG_ENDIAN_MMIO if CPU_BIG_ENDIAN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 603) select USB_OHCI_LITTLE_ENDIAN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 604) select USB_OHCI_HCD_PLATFORM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 605) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 606) This option is deprecated now and the driver was removed, use
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 607) USB_OHCI_HCD_PLATFORM instead.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 608)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 609) Enable support for the Octeon II SOC's on-chip OHCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 610) controller. It is needed for low-speed USB 1.0 device
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 611) support. All CN6XXX based chips with USB are supported.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 612)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 613) endif # USB_OHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 614)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 615) config USB_UHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 616) tristate "UHCI HCD (most Intel and VIA) support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 617) depends on USB_PCI || USB_UHCI_SUPPORT_NON_PCI_HC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 618) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 619) The Universal Host Controller Interface is a standard by Intel for
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 620) accessing the USB hardware in the PC (which is also called the USB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 621) host controller). If your USB host controller conforms to this
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 622) standard, you may want to say Y, but see below. All recent boards
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 623) with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 624) i810, i820) conform to this standard. Also all VIA PCI chipsets
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 625) (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 626) 133) and LEON/GRLIB SoCs with the GRUSBHC controller.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 627) If unsure, say Y.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 628)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 629) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 630) module will be called uhci-hcd.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 631)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 632) config USB_UHCI_SUPPORT_NON_PCI_HC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 633) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 634) default y if (SPARC_LEON || USB_UHCI_PLATFORM)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 635)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 636) config USB_UHCI_PLATFORM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 637) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 638) default y if (ARCH_VT8500 || ARCH_ASPEED)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 639)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 640) config USB_UHCI_ASPEED
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 641) bool
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 642) default y if ARCH_ASPEED
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 643)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 644) config USB_FHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 645) tristate "Freescale QE USB Host Controller support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 646) depends on OF_GPIO && QE_GPIO && QUICC_ENGINE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 647) select FSL_GTM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 648) select QE_USB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 649) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 650) This driver enables support for Freescale QE USB Host Controller
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 651) (as found on MPC8360 and MPC8323 processors), the driver supports
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 652) Full and Low Speed USB.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 653)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 654) config FHCI_DEBUG
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 655) bool "Freescale QE USB Host Controller debug support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 656) depends on USB_FHCI_HCD && DEBUG_FS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 657) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 658) Say "y" to see some FHCI debug information and statistics
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 659) through debugfs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 660)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 661) config USB_U132_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 662) tristate "Elan U132 Adapter Host Controller"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 663) depends on USB_FTDI_ELAN
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 664) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 665) The U132 adapter is a USB to CardBus adapter specifically designed
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 666) for PC cards that contain an OHCI host controller. Typical PC cards
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 667) are the Orange Mobile 3G Option GlobeTrotter Fusion card. The U132
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 668) adapter will *NOT* work with PC cards that do not contain an OHCI
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 669) controller.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 670)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 671) For those PC cards that contain multiple OHCI controllers only the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 672) first one is used.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 673)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 674) The driver consists of two modules, the "ftdi-elan" module is a
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 675) USB client driver that interfaces to the FTDI chip within ELAN's
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 676) USB-to-PCMCIA adapter, and this "u132-hcd" module is a USB host
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 677) controller driver that talks to the OHCI controller within the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 678) CardBus cards that are inserted in the U132 adapter.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 679)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 680) This driver has been tested with a CardBus OHCI USB adapter, and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 681) worked with a USB PEN Drive inserted into the first USB port of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 682) the PCCARD. A rather pointless thing to do, but useful for testing.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 683)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 684) It is safe to say M here.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 685)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 686) See also <http://www.elandigitalsystems.com/support/ufaq/u132linux.php>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 687)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 688) config USB_SL811_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 689) tristate "SL811HS HCD support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 690) depends on HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 691) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 692) The SL811HS is a single-port USB controller that supports either
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 693) host side or peripheral side roles. Enable this option if your
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 694) board has this chip, and you want to use it as a host controller.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 695) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 696)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 697) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 698) module will be called sl811-hcd.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 699)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 700) config USB_SL811_HCD_ISO
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 701) bool "partial ISO support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 702) depends on USB_SL811_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 703) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 704) The driver doesn't support iso_frame_desc (yet), but for some simple
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 705) devices that just queue one ISO frame per URB, then ISO transfers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 706) "should" work using the normal urb status fields.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 707)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 708) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 709)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 710) config USB_SL811_CS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 711) tristate "CF/PCMCIA support for SL811HS HCD"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 712) depends on USB_SL811_HCD && PCMCIA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 713) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 714) Wraps a PCMCIA driver around the SL811HS HCD, supporting the RATOC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 715) REX-CFU1U CF card (often used with PDAs). If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 716)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 717) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 718) module will be called "sl811_cs".
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 719)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 720) config USB_R8A66597_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 721) tristate "R8A66597 HCD support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 722) depends on HAS_IOMEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 723) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 724) The R8A66597 is a USB 2.0 host and peripheral controller.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 725)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 726) Enable this option if your board has this chip, and you want
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 727) to use it as a host controller. If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 728)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 729) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 730) module will be called r8a66597-hcd.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 731)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 732) config USB_RENESAS_USBHS_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 733) tristate "Renesas USBHS HCD support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 734) depends on USB_RENESAS_USBHS
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 735) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 736) The Renesas USBHS is a USB 2.0 host and peripheral controller.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 737)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 738) Enable this option if your board has this chip, and you want
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 739) to use it as a host controller. If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 740)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 741) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 742) module will be called renesas-usbhs.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 743)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 744) config USB_IMX21_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 745) tristate "i.MX21 HCD support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 746) depends on ARM && ARCH_MXC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 747) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 748) This driver enables support for the on-chip USB host in the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 749) i.MX21 processor.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 750)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 751) To compile this driver as a module, choose M here: the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 752) module will be called "imx21-hcd".
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 753)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 754) config USB_HCD_BCMA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 755) tristate "BCMA usb host driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 756) depends on BCMA
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 757) select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 758) select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 759) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 760) Enable support for the EHCI and OCHI host controller on an bcma bus.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 761) It converts the bcma driver into two platform device drivers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 762) for ehci and ohci.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 763)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 764) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 765)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 766) config USB_HCD_SSB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 767) tristate "SSB usb host driver"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 768) depends on SSB
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 769) select USB_OHCI_HCD_PLATFORM if USB_OHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 770) select USB_EHCI_HCD_PLATFORM if USB_EHCI_HCD
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 771) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 772) Enable support for the EHCI and OCHI host controller on an bcma bus.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 773) It converts the bcma driver into two platform device drivers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 774) for ehci and ohci.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 775)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 776) If unsure, say N.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 777)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 778) config USB_HCD_TEST_MODE
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 779) bool "HCD test mode support"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 780) help
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 781) Say 'Y' to enable additional software test modes that may be
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 782) supported by the host controller drivers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 783)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 784) One such test mode is the Embedded High-speed Host Electrical Test
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 785) (EHSET) for EHCI host controller hardware, specifically the "Single
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 786) Step Set Feature" test. Typically this will be enabled for On-the-Go
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 787) or embedded hosts that need to undergo USB-IF compliance testing with
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 788) the aid of special testing hardware. In the future, this may expand
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 789) to include other tests that require support from a HCD driver.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 790)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 791) This option is of interest only to developers who need to validate
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 792) their USB hardware designs. It is not needed for normal use. If
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 793) unsure, say N.