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 181e7df7c4SMasahiro Yamadaconfig USB_XHCI_UNIPHIER 19b6ef3a3fSMasahiro Yamada bool "Support for UniPhier on-chip xHCI USB controller" 201e7df7c4SMasahiro Yamada depends on ARCH_UNIPHIER 211e7df7c4SMasahiro Yamada default y 221e7df7c4SMasahiro Yamada ---help--- 23b6ef3a3fSMasahiro Yamada Enables support for the on-chip xHCI controller on UniPhier SoCs. 241e7df7c4SMasahiro Yamada 2510db7500SMasahiro Yamadaconfig USB_XHCI_DWC3 2610db7500SMasahiro Yamada bool "DesignWare USB3 DRD Core Support" 2710db7500SMasahiro Yamada help 2810db7500SMasahiro Yamada Say Y or if your system has a Dual Role SuperSpeed 2910db7500SMasahiro Yamada USB controller based on the DesignWare USB3 IP Core. 3010db7500SMasahiro Yamada 3193cb8247SMasahiro Yamadaendif # USB_XHCI_HCD 32fee331f6SAlexey Brodkin 336e7e9294SMasahiro Yamadaconfig USB_EHCI_HCD 346e7e9294SMasahiro Yamada bool "EHCI HCD (USB 2.0) support" 352b58e1b7SMasahiro Yamada select USB_HOST 366e7e9294SMasahiro Yamada ---help--- 376e7e9294SMasahiro Yamada The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0 386e7e9294SMasahiro Yamada "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware. 396e7e9294SMasahiro Yamada If your USB host controller supports USB 2.0, you will likely want to 406e7e9294SMasahiro Yamada configure this Host Controller Driver. 416e7e9294SMasahiro Yamada 426e7e9294SMasahiro Yamada EHCI controllers are packaged with "companion" host controllers (OHCI 436e7e9294SMasahiro Yamada or UHCI) to handle USB 1.1 devices connected to root hub ports. Ports 446e7e9294SMasahiro Yamada will connect to EHCI if the device is high speed, otherwise they 456e7e9294SMasahiro Yamada connect to a companion controller. If you configure EHCI, you should 466e7e9294SMasahiro Yamada probably configure the OHCI (for NEC and some other vendors) USB Host 476e7e9294SMasahiro Yamada Controller Driver or UHCI (for Via motherboards) Host Controller 486e7e9294SMasahiro Yamada Driver too. 496e7e9294SMasahiro Yamada 506e7e9294SMasahiro Yamada You may want to read <file:Documentation/usb/ehci.txt>. 516e7e9294SMasahiro Yamada 526e7e9294SMasahiro Yamadaconfig USB_EHCI 536e7e9294SMasahiro Yamada bool 546e7e9294SMasahiro Yamada default USB_EHCI_HCD 556e7e9294SMasahiro Yamada ---help--- 566e7e9294SMasahiro Yamada TODO: rename after most boards switch to Kconfig 576e7e9294SMasahiro Yamada 586e7e9294SMasahiro Yamadaif USB_EHCI_HCD 596e7e9294SMasahiro Yamada 60*17b68b5aSWenyou Yangconfig USB_EHCI_ATMEL 61*17b68b5aSWenyou Yang bool "Support for Atmel on-chip EHCI USB controller" 62*17b68b5aSWenyou Yang depends on ARCH_AT91 63*17b68b5aSWenyou Yang default y 64*17b68b5aSWenyou Yang ---help--- 65*17b68b5aSWenyou Yang Enables support for the on-chip EHCI controller on Atmel chips. 66*17b68b5aSWenyou Yang 67cd48225bSStefan Roeseconfig USB_EHCI_MARVELL 68cd48225bSStefan Roese bool "Support for MVEBU (AXP / A38x) on-chip EHCI USB controller" 69cd48225bSStefan Roese depends on ARCH_MVEBU 70cd48225bSStefan Roese default y 71cd48225bSStefan Roese ---help--- 72cd48225bSStefan Roese Enables support for the on-chip EHCI controller on MVEBU SoCs. 73cd48225bSStefan Roese 74919e802cSNikita Kiryanovconfig USB_EHCI_MX6 75919e802cSNikita Kiryanov bool "Support for i.MX6 on-chip EHCI USB controller" 76919e802cSNikita Kiryanov depends on ARCH_MX6 77919e802cSNikita Kiryanov default y 78919e802cSNikita Kiryanov ---help--- 79919e802cSNikita Kiryanov Enables support for the on-chip EHCI controller on i.MX6 SoCs. 80919e802cSNikita Kiryanov 812deebe24SStefan Agnerconfig USB_EHCI_MX7 822deebe24SStefan Agner bool "Support for i.MX7 on-chip EHCI USB controller" 832deebe24SStefan Agner depends on ARCH_MX7 842deebe24SStefan Agner default y 852deebe24SStefan Agner ---help--- 862deebe24SStefan Agner Enables support for the on-chip EHCI controller on i.MX7 SoCs. 872deebe24SStefan Agner 88c4483093SStefan Agnerif USB_EHCI_MX7 89c4483093SStefan Agner 90c4483093SStefan Agnerconfig MXC_USB_OTG_HACTIVE 91c4483093SStefan Agner bool "USB Power pin high active" 92c4483093SStefan Agner ---help--- 93c4483093SStefan Agner Set the USB Power pin polarity to be high active (PWR_POL) 94c4483093SStefan Agner 95c4483093SStefan Agnerendif 96c4483093SStefan Agner 975a822118SMateusz Kulikowskiconfig USB_EHCI_MSM 985a822118SMateusz Kulikowski bool "Support for Qualcomm on-chip EHCI USB controller" 995a822118SMateusz Kulikowski depends on DM_USB 1005a822118SMateusz Kulikowski select USB_ULPI_VIEWPORT 1015a822118SMateusz Kulikowski default n 1025a822118SMateusz Kulikowski ---help--- 1035a822118SMateusz Kulikowski Enables support for the on-chip EHCI controller on Qualcomm 1045a822118SMateusz Kulikowski Snapdragon SoCs. 1055a822118SMateusz Kulikowski This driver supports combination of Chipidea USB controller 1065a822118SMateusz Kulikowski and Synapsys USB PHY in host mode only. 1075a822118SMateusz Kulikowski 1082cdc778bSSiva Durga Prasad Paladuguconfig USB_EHCI_ZYNQ 1092cdc778bSSiva Durga Prasad Paladugu bool "Support for Xilinx Zynq on-chip EHCI USB controller" 1102cdc778bSSiva Durga Prasad Paladugu depends on ARCH_ZYNQ 1112cdc778bSSiva Durga Prasad Paladugu default y 1122cdc778bSSiva Durga Prasad Paladugu ---help--- 1132cdc778bSSiva Durga Prasad Paladugu Enable support for Zynq on-chip EHCI USB controller 1142cdc778bSSiva Durga Prasad Paladugu 11590fbb282SAlexey Brodkinconfig USB_EHCI_GENERIC 11690fbb282SAlexey Brodkin bool "Support for generic EHCI USB controller" 11790fbb282SAlexey Brodkin depends on OF_CONTROL 11890fbb282SAlexey Brodkin depends on DM_USB 11990fbb282SAlexey Brodkin default n 12090fbb282SAlexey Brodkin ---help--- 12190fbb282SAlexey Brodkin Enables support for generic EHCI controller. 12290fbb282SAlexey Brodkin 12393cb8247SMasahiro Yamadaendif # USB_EHCI_HCD 12493cb8247SMasahiro Yamada 12593cb8247SMasahiro Yamadaconfig USB_OHCI_HCD 12693cb8247SMasahiro Yamada bool "OHCI HCD (USB 1.1) support" 12793cb8247SMasahiro Yamada ---help--- 12893cb8247SMasahiro Yamada The Open Host Controller Interface (OHCI) is a standard for accessing 12993cb8247SMasahiro Yamada USB 1.1 host controller hardware. It does more in hardware than Intel's 13093cb8247SMasahiro Yamada UHCI specification. If your USB host controller follows the OHCI spec, 13193cb8247SMasahiro Yamada say Y. On most non-x86 systems, and on x86 hardware that's not using a 13293cb8247SMasahiro Yamada USB controller from Intel or VIA, this is appropriate. If your host 13393cb8247SMasahiro Yamada controller doesn't use PCI, this is probably appropriate. For a PCI 13493cb8247SMasahiro Yamada based system where you're not sure, the "lspci -v" entry will list the 13593cb8247SMasahiro Yamada right "prog-if" for your USB controller(s): EHCI, OHCI, or UHCI. 13693cb8247SMasahiro Yamada 13793cb8247SMasahiro Yamadaif USB_OHCI_HCD 13893cb8247SMasahiro Yamada 13993cb8247SMasahiro Yamadaconfig USB_OHCI_GENERIC 14093cb8247SMasahiro Yamada bool "Support for generic OHCI USB controller" 14193cb8247SMasahiro Yamada depends on OF_CONTROL 14293cb8247SMasahiro Yamada depends on DM_USB 1432b58e1b7SMasahiro Yamada select USB_HOST 14493cb8247SMasahiro Yamada ---help--- 14593cb8247SMasahiro Yamada Enables support for generic OHCI controller. 14693cb8247SMasahiro Yamada 14793cb8247SMasahiro Yamadaendif # USB_OHCI_HCD 14896d8284bSMasahiro Yamada 14996d8284bSMasahiro Yamadaconfig USB_UHCI_HCD 15096d8284bSMasahiro Yamada bool "UHCI HCD (most Intel and VIA) support" 1512b58e1b7SMasahiro Yamada select USB_HOST 15296d8284bSMasahiro Yamada ---help--- 15396d8284bSMasahiro Yamada The Universal Host Controller Interface is a standard by Intel for 15496d8284bSMasahiro Yamada accessing the USB hardware in the PC (which is also called the USB 15596d8284bSMasahiro Yamada host controller). If your USB host controller conforms to this 15696d8284bSMasahiro Yamada standard, you may want to say Y, but see below. All recent boards 15796d8284bSMasahiro Yamada with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX, 15896d8284bSMasahiro Yamada i810, i820) conform to this standard. Also all VIA PCI chipsets 15996d8284bSMasahiro Yamada (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro 16096d8284bSMasahiro Yamada 133) and LEON/GRLIB SoCs with the GRUSBHC controller. 16196d8284bSMasahiro Yamada If unsure, say Y. 16296d8284bSMasahiro Yamada 16396d8284bSMasahiro Yamadaif USB_UHCI_HCD 16496d8284bSMasahiro Yamada 16596d8284bSMasahiro Yamadaendif # USB_UHCI_HCD 166