xref: /OK3568_Linux_fs/kernel/drivers/usb/chipidea/Kconfig (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0
2*4882a593Smuzhiyun
3*4882a593Smuzhiyunconfig USB_CHIPIDEA
4*4882a593Smuzhiyun	tristate "ChipIdea Highspeed Dual Role Controller"
5*4882a593Smuzhiyun	depends on ((USB_EHCI_HCD && USB_GADGET) || (USB_EHCI_HCD && !USB_GADGET) || (!USB_EHCI_HCD && USB_GADGET)) && HAS_DMA
6*4882a593Smuzhiyun	select EXTCON
7*4882a593Smuzhiyun	select RESET_CONTROLLER
8*4882a593Smuzhiyun	select USB_ULPI_BUS
9*4882a593Smuzhiyun	select USB_ROLE_SWITCH
10*4882a593Smuzhiyun	select USB_TEGRA_PHY if ARCH_TEGRA
11*4882a593Smuzhiyun	help
12*4882a593Smuzhiyun	  Say Y here if your system has a dual role high speed USB
13*4882a593Smuzhiyun	  controller based on ChipIdea silicon IP. It supports:
14*4882a593Smuzhiyun	  Dual-role switch (ID, OTG FSM, sysfs), Host-only, and
15*4882a593Smuzhiyun	  Peripheral-only.
16*4882a593Smuzhiyun
17*4882a593Smuzhiyun	  When compiled dynamically, the module will be called ci_hdrc.ko.
18*4882a593Smuzhiyun
19*4882a593Smuzhiyunif USB_CHIPIDEA
20*4882a593Smuzhiyun
21*4882a593Smuzhiyunconfig USB_CHIPIDEA_UDC
22*4882a593Smuzhiyun	bool "ChipIdea device controller"
23*4882a593Smuzhiyun	depends on USB_GADGET
24*4882a593Smuzhiyun	help
25*4882a593Smuzhiyun	  Say Y here to enable device controller functionality of the
26*4882a593Smuzhiyun	  ChipIdea driver.
27*4882a593Smuzhiyun
28*4882a593Smuzhiyunconfig USB_CHIPIDEA_HOST
29*4882a593Smuzhiyun	bool "ChipIdea host controller"
30*4882a593Smuzhiyun	depends on USB_EHCI_HCD
31*4882a593Smuzhiyun	select USB_EHCI_ROOT_HUB_TT
32*4882a593Smuzhiyun	help
33*4882a593Smuzhiyun	  Say Y here to enable host controller functionality of the
34*4882a593Smuzhiyun	  ChipIdea driver.
35*4882a593Smuzhiyun
36*4882a593Smuzhiyunconfig USB_CHIPIDEA_PCI
37*4882a593Smuzhiyun	tristate "Enable PCI glue driver" if EMBEDDED
38*4882a593Smuzhiyun	depends on USB_PCI
39*4882a593Smuzhiyun	depends on NOP_USB_XCEIV
40*4882a593Smuzhiyun	default USB_CHIPIDEA
41*4882a593Smuzhiyun
42*4882a593Smuzhiyunconfig USB_CHIPIDEA_MSM
43*4882a593Smuzhiyun	tristate "Enable MSM hsusb glue driver" if EMBEDDED
44*4882a593Smuzhiyun	default USB_CHIPIDEA
45*4882a593Smuzhiyun
46*4882a593Smuzhiyunconfig USB_CHIPIDEA_IMX
47*4882a593Smuzhiyun	tristate "Enable i.MX USB glue driver" if EMBEDDED
48*4882a593Smuzhiyun	depends on OF
49*4882a593Smuzhiyun	default USB_CHIPIDEA
50*4882a593Smuzhiyun
51*4882a593Smuzhiyunconfig USB_CHIPIDEA_GENERIC
52*4882a593Smuzhiyun	tristate "Enable generic USB2 glue driver" if EMBEDDED
53*4882a593Smuzhiyun	default USB_CHIPIDEA
54*4882a593Smuzhiyun
55*4882a593Smuzhiyunconfig USB_CHIPIDEA_TEGRA
56*4882a593Smuzhiyun	tristate "Enable Tegra UDC glue driver" if EMBEDDED
57*4882a593Smuzhiyun	depends on OF
58*4882a593Smuzhiyun	depends on USB_CHIPIDEA_UDC
59*4882a593Smuzhiyun	default USB_CHIPIDEA
60*4882a593Smuzhiyun
61*4882a593Smuzhiyunendif
62