xref: /openbmc/u-boot/drivers/usb/host/Kconfig (revision 93cb8247)
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