1# 2# USB Host Controller Drivers 3# 4comment "USB Host Controller Drivers" 5 6config USB_XHCI_HCD 7 bool "xHCI HCD (USB 3.0) support" 8 ---help--- 9 The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0 10 "SuperSpeed" host controller hardware. 11 12if USB_XHCI_HCD 13 14config USB_XHCI_UNIPHIER 15 bool "Support for UniPhier on-chip xHCI USB controller" 16 depends on ARCH_UNIPHIER 17 default y 18 ---help--- 19 Enables support for the on-chip xHCI controller on UniPhier SoCs. 20 21config USB_XHCI_DWC3 22 bool "DesignWare USB3 DRD Core Support" 23 help 24 Say Y or if your system has a Dual Role SuperSpeed 25 USB controller based on the DesignWare USB3 IP Core. 26 27endif # USB_XHCI_HCD 28 29config USB_EHCI_HCD 30 bool "EHCI HCD (USB 2.0) support" 31 ---help--- 32 The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0 33 "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware. 34 If your USB host controller supports USB 2.0, you will likely want to 35 configure this Host Controller Driver. 36 37 EHCI controllers are packaged with "companion" host controllers (OHCI 38 or UHCI) to handle USB 1.1 devices connected to root hub ports. Ports 39 will connect to EHCI if the device is high speed, otherwise they 40 connect to a companion controller. If you configure EHCI, you should 41 probably configure the OHCI (for NEC and some other vendors) USB Host 42 Controller Driver or UHCI (for Via motherboards) Host Controller 43 Driver too. 44 45 You may want to read <file:Documentation/usb/ehci.txt>. 46 47config USB_EHCI 48 bool 49 default USB_EHCI_HCD 50 ---help--- 51 TODO: rename after most boards switch to Kconfig 52 53if USB_EHCI_HCD 54 55config USB_EHCI_MARVELL 56 bool "Support for MVEBU (AXP / A38x) on-chip EHCI USB controller" 57 depends on ARCH_MVEBU 58 default y 59 ---help--- 60 Enables support for the on-chip EHCI controller on MVEBU SoCs. 61 62config USB_EHCI_MX6 63 bool "Support for i.MX6 on-chip EHCI USB controller" 64 depends on ARCH_MX6 65 default y 66 ---help--- 67 Enables support for the on-chip EHCI controller on i.MX6 SoCs. 68 69config USB_EHCI_MX7 70 bool "Support for i.MX7 on-chip EHCI USB controller" 71 depends on ARCH_MX7 72 default y 73 ---help--- 74 Enables support for the on-chip EHCI controller on i.MX7 SoCs. 75 76if USB_EHCI_MX7 77 78config MXC_USB_OTG_HACTIVE 79 bool "USB Power pin high active" 80 ---help--- 81 Set the USB Power pin polarity to be high active (PWR_POL) 82 83endif 84 85config USB_EHCI_MSM 86 bool "Support for Qualcomm on-chip EHCI USB controller" 87 depends on DM_USB 88 select USB_ULPI_VIEWPORT 89 default n 90 ---help--- 91 Enables support for the on-chip EHCI controller on Qualcomm 92 Snapdragon SoCs. 93 This driver supports combination of Chipidea USB controller 94 and Synapsys USB PHY in host mode only. 95 96config USB_EHCI_ZYNQ 97 bool "Support for Xilinx Zynq on-chip EHCI USB controller" 98 depends on ARCH_ZYNQ 99 default y 100 ---help--- 101 Enable support for Zynq on-chip EHCI USB controller 102 103config USB_EHCI_GENERIC 104 bool "Support for generic EHCI USB controller" 105 depends on OF_CONTROL 106 depends on DM_USB 107 default n 108 ---help--- 109 Enables support for generic EHCI controller. 110 111endif # USB_EHCI_HCD 112 113config USB_OHCI_HCD 114 bool "OHCI HCD (USB 1.1) support" 115 ---help--- 116 The Open Host Controller Interface (OHCI) is a standard for accessing 117 USB 1.1 host controller hardware. It does more in hardware than Intel's 118 UHCI specification. If your USB host controller follows the OHCI spec, 119 say Y. On most non-x86 systems, and on x86 hardware that's not using a 120 USB controller from Intel or VIA, this is appropriate. If your host 121 controller doesn't use PCI, this is probably appropriate. For a PCI 122 based system where you're not sure, the "lspci -v" entry will list the 123 right "prog-if" for your USB controller(s): EHCI, OHCI, or UHCI. 124 125if USB_OHCI_HCD 126 127config USB_OHCI_GENERIC 128 bool "Support for generic OHCI USB controller" 129 depends on OF_CONTROL 130 depends on DM_USB 131 ---help--- 132 Enables support for generic OHCI controller. 133 134endif # USB_OHCI_HCD 135 136config USB_UHCI_HCD 137 bool "UHCI HCD (most Intel and VIA) support" 138 ---help--- 139 The Universal Host Controller Interface is a standard by Intel for 140 accessing the USB hardware in the PC (which is also called the USB 141 host controller). If your USB host controller conforms to this 142 standard, you may want to say Y, but see below. All recent boards 143 with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX, 144 i810, i820) conform to this standard. Also all VIA PCI chipsets 145 (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro 146 133) and LEON/GRLIB SoCs with the GRUSBHC controller. 147 If unsure, say Y. 148 149if USB_UHCI_HCD 150 151endif # USB_UHCI_HCD 152