16e7e9294SMasahiro Yamada# 26e7e9294SMasahiro Yamada# USB Host Controller Drivers 36e7e9294SMasahiro Yamada# 46e7e9294SMasahiro Yamadacomment "USB Host Controller Drivers" 56e7e9294SMasahiro Yamada 62b58e1b7SMasahiro Yamadaconfig USB_HOST 72b58e1b7SMasahiro Yamada bool 82b58e1b7SMasahiro Yamada 96e7e9294SMasahiro Yamadaconfig USB_XHCI_HCD 106e7e9294SMasahiro Yamada bool "xHCI HCD (USB 3.0) support" 112b58e1b7SMasahiro Yamada select USB_HOST 126e7e9294SMasahiro Yamada ---help--- 136e7e9294SMasahiro Yamada The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0 146e7e9294SMasahiro Yamada "SuperSpeed" host controller hardware. 156e7e9294SMasahiro Yamada 166e7e9294SMasahiro Yamadaif USB_XHCI_HCD 176e7e9294SMasahiro Yamada 1810db7500SMasahiro Yamadaconfig USB_XHCI_DWC3 1910db7500SMasahiro Yamada bool "DesignWare USB3 DRD Core Support" 2010db7500SMasahiro Yamada help 2110db7500SMasahiro Yamada Say Y or if your system has a Dual Role SuperSpeed 2210db7500SMasahiro Yamada USB controller based on the DesignWare USB3 IP Core. 2310db7500SMasahiro Yamada 2481c1f6f0SStefan Roeseconfig USB_XHCI_MVEBU 2581c1f6f0SStefan Roese bool "MVEBU USB 3.0 support" 2681c1f6f0SStefan Roese default y 2781c1f6f0SStefan Roese depends on ARCH_MVEBU 28*81192b79SKonstantin Porotchkin select DM_REGULATOR 2981c1f6f0SStefan Roese help 3081c1f6f0SStefan Roese Choose this option to add support for USB 3.0 driver on mvebu 3181c1f6f0SStefan Roese SoCs, which includes Armada8K, Armada3700 and other Armada 3281c1f6f0SStefan Roese family SoCs. 3381c1f6f0SStefan Roese 34f7bb27a5SKever Yangconfig USB_XHCI_ROCKCHIP 35f7bb27a5SKever Yang bool "Support for Rockchip on-chip xHCI USB controller" 36f7bb27a5SKever Yang depends on ARCH_ROCKCHIP 37f7bb27a5SKever Yang default y 38f7bb27a5SKever Yang help 39f7bb27a5SKever Yang Enables support for the on-chip xHCI controller on Rockchip SoCs. 40f7bb27a5SKever Yang 4163d74747SMichal Simekconfig USB_XHCI_ZYNQMP 4263d74747SMichal Simek bool "Support for Xilinx ZynqMP on-chip xHCI USB controller" 4363d74747SMichal Simek depends on ARCH_ZYNQMP 4463d74747SMichal Simek help 4563d74747SMichal Simek Enables support for the on-chip xHCI controller on Xilinx ZynqMP SoCs. 4663d74747SMichal Simek 4793cb8247SMasahiro Yamadaendif # USB_XHCI_HCD 48fee331f6SAlexey Brodkin 496e7e9294SMasahiro Yamadaconfig USB_EHCI_HCD 506e7e9294SMasahiro Yamada bool "EHCI HCD (USB 2.0) support" 512b58e1b7SMasahiro Yamada select USB_HOST 526e7e9294SMasahiro Yamada ---help--- 536e7e9294SMasahiro Yamada The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0 546e7e9294SMasahiro Yamada "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware. 556e7e9294SMasahiro Yamada If your USB host controller supports USB 2.0, you will likely want to 566e7e9294SMasahiro Yamada configure this Host Controller Driver. 576e7e9294SMasahiro Yamada 586e7e9294SMasahiro Yamada EHCI controllers are packaged with "companion" host controllers (OHCI 596e7e9294SMasahiro Yamada or UHCI) to handle USB 1.1 devices connected to root hub ports. Ports 606e7e9294SMasahiro Yamada will connect to EHCI if the device is high speed, otherwise they 616e7e9294SMasahiro Yamada connect to a companion controller. If you configure EHCI, you should 626e7e9294SMasahiro Yamada probably configure the OHCI (for NEC and some other vendors) USB Host 636e7e9294SMasahiro Yamada Controller Driver or UHCI (for Via motherboards) Host Controller 646e7e9294SMasahiro Yamada Driver too. 656e7e9294SMasahiro Yamada 666e7e9294SMasahiro Yamada You may want to read <file:Documentation/usb/ehci.txt>. 676e7e9294SMasahiro Yamada 686e7e9294SMasahiro Yamadaconfig USB_EHCI 696e7e9294SMasahiro Yamada bool 706e7e9294SMasahiro Yamada default USB_EHCI_HCD 716e7e9294SMasahiro Yamada ---help--- 726e7e9294SMasahiro Yamada TODO: rename after most boards switch to Kconfig 736e7e9294SMasahiro Yamada 746e7e9294SMasahiro Yamadaif USB_EHCI_HCD 756e7e9294SMasahiro Yamada 7617b68b5aSWenyou Yangconfig USB_EHCI_ATMEL 7717b68b5aSWenyou Yang bool "Support for Atmel on-chip EHCI USB controller" 7817b68b5aSWenyou Yang depends on ARCH_AT91 7917b68b5aSWenyou Yang default y 8017b68b5aSWenyou Yang ---help--- 8117b68b5aSWenyou Yang Enables support for the on-chip EHCI controller on Atmel chips. 8217b68b5aSWenyou Yang 83cd48225bSStefan Roeseconfig USB_EHCI_MARVELL 84cd48225bSStefan Roese bool "Support for MVEBU (AXP / A38x) on-chip EHCI USB controller" 85cd48225bSStefan Roese depends on ARCH_MVEBU 86cd48225bSStefan Roese default y 87cd48225bSStefan Roese ---help--- 88cd48225bSStefan Roese Enables support for the on-chip EHCI controller on MVEBU SoCs. 89cd48225bSStefan Roese 90919e802cSNikita Kiryanovconfig USB_EHCI_MX6 91919e802cSNikita Kiryanov bool "Support for i.MX6 on-chip EHCI USB controller" 92919e802cSNikita Kiryanov depends on ARCH_MX6 93919e802cSNikita Kiryanov default y 94919e802cSNikita Kiryanov ---help--- 95919e802cSNikita Kiryanov Enables support for the on-chip EHCI controller on i.MX6 SoCs. 96919e802cSNikita Kiryanov 972deebe24SStefan Agnerconfig USB_EHCI_MX7 982deebe24SStefan Agner bool "Support for i.MX7 on-chip EHCI USB controller" 992deebe24SStefan Agner depends on ARCH_MX7 1002deebe24SStefan Agner default y 1012deebe24SStefan Agner ---help--- 1022deebe24SStefan Agner Enables support for the on-chip EHCI controller on i.MX7 SoCs. 1032deebe24SStefan Agner 104c4483093SStefan Agnerif USB_EHCI_MX7 105c4483093SStefan Agner 106c4483093SStefan Agnerconfig MXC_USB_OTG_HACTIVE 107c4483093SStefan Agner bool "USB Power pin high active" 108c4483093SStefan Agner ---help--- 109c4483093SStefan Agner Set the USB Power pin polarity to be high active (PWR_POL) 110c4483093SStefan Agner 111c4483093SStefan Agnerendif 112c4483093SStefan Agner 1135a822118SMateusz Kulikowskiconfig USB_EHCI_MSM 1145a822118SMateusz Kulikowski bool "Support for Qualcomm on-chip EHCI USB controller" 1155a822118SMateusz Kulikowski depends on DM_USB 1165a822118SMateusz Kulikowski select USB_ULPI_VIEWPORT 1175a822118SMateusz Kulikowski default n 1185a822118SMateusz Kulikowski ---help--- 1195a822118SMateusz Kulikowski Enables support for the on-chip EHCI controller on Qualcomm 1205a822118SMateusz Kulikowski Snapdragon SoCs. 1215a822118SMateusz Kulikowski This driver supports combination of Chipidea USB controller 1225a822118SMateusz Kulikowski and Synapsys USB PHY in host mode only. 1235a822118SMateusz Kulikowski 1242cdc778bSSiva Durga Prasad Paladuguconfig USB_EHCI_ZYNQ 1252cdc778bSSiva Durga Prasad Paladugu bool "Support for Xilinx Zynq on-chip EHCI USB controller" 1262cdc778bSSiva Durga Prasad Paladugu depends on ARCH_ZYNQ 1272cdc778bSSiva Durga Prasad Paladugu default y 1282cdc778bSSiva Durga Prasad Paladugu ---help--- 1292cdc778bSSiva Durga Prasad Paladugu Enable support for Zynq on-chip EHCI USB controller 1302cdc778bSSiva Durga Prasad Paladugu 13190fbb282SAlexey Brodkinconfig USB_EHCI_GENERIC 13290fbb282SAlexey Brodkin bool "Support for generic EHCI USB controller" 13390fbb282SAlexey Brodkin depends on OF_CONTROL 13490fbb282SAlexey Brodkin depends on DM_USB 13590fbb282SAlexey Brodkin default n 13690fbb282SAlexey Brodkin ---help--- 13790fbb282SAlexey Brodkin Enables support for generic EHCI controller. 13890fbb282SAlexey Brodkin 13993cb8247SMasahiro Yamadaendif # USB_EHCI_HCD 14093cb8247SMasahiro Yamada 14193cb8247SMasahiro Yamadaconfig USB_OHCI_HCD 14293cb8247SMasahiro Yamada bool "OHCI HCD (USB 1.1) support" 14393cb8247SMasahiro Yamada ---help--- 14493cb8247SMasahiro Yamada The Open Host Controller Interface (OHCI) is a standard for accessing 14593cb8247SMasahiro Yamada USB 1.1 host controller hardware. It does more in hardware than Intel's 14693cb8247SMasahiro Yamada UHCI specification. If your USB host controller follows the OHCI spec, 14793cb8247SMasahiro Yamada say Y. On most non-x86 systems, and on x86 hardware that's not using a 14893cb8247SMasahiro Yamada USB controller from Intel or VIA, this is appropriate. If your host 14993cb8247SMasahiro Yamada controller doesn't use PCI, this is probably appropriate. For a PCI 15093cb8247SMasahiro Yamada based system where you're not sure, the "lspci -v" entry will list the 15193cb8247SMasahiro Yamada right "prog-if" for your USB controller(s): EHCI, OHCI, or UHCI. 15293cb8247SMasahiro Yamada 15393cb8247SMasahiro Yamadaif USB_OHCI_HCD 15493cb8247SMasahiro Yamada 15593cb8247SMasahiro Yamadaconfig USB_OHCI_GENERIC 15693cb8247SMasahiro Yamada bool "Support for generic OHCI USB controller" 15793cb8247SMasahiro Yamada depends on OF_CONTROL 15893cb8247SMasahiro Yamada depends on DM_USB 1592b58e1b7SMasahiro Yamada select USB_HOST 16093cb8247SMasahiro Yamada ---help--- 16193cb8247SMasahiro Yamada Enables support for generic OHCI controller. 16293cb8247SMasahiro Yamada 16393cb8247SMasahiro Yamadaendif # USB_OHCI_HCD 16496d8284bSMasahiro Yamada 16596d8284bSMasahiro Yamadaconfig USB_UHCI_HCD 16696d8284bSMasahiro Yamada bool "UHCI HCD (most Intel and VIA) support" 1672b58e1b7SMasahiro Yamada select USB_HOST 16896d8284bSMasahiro Yamada ---help--- 16996d8284bSMasahiro Yamada The Universal Host Controller Interface is a standard by Intel for 17096d8284bSMasahiro Yamada accessing the USB hardware in the PC (which is also called the USB 17196d8284bSMasahiro Yamada host controller). If your USB host controller conforms to this 17296d8284bSMasahiro Yamada standard, you may want to say Y, but see below. All recent boards 17396d8284bSMasahiro Yamada with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX, 17496d8284bSMasahiro Yamada i810, i820) conform to this standard. Also all VIA PCI chipsets 17596d8284bSMasahiro Yamada (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro 17696d8284bSMasahiro Yamada 133) and LEON/GRLIB SoCs with the GRUSBHC controller. 17796d8284bSMasahiro Yamada If unsure, say Y. 17896d8284bSMasahiro Yamada 17996d8284bSMasahiro Yamadaif USB_UHCI_HCD 18096d8284bSMasahiro Yamada 18196d8284bSMasahiro Yamadaendif # USB_UHCI_HCD 182