xref: /linux/drivers/usb/chipidea/Kconfig (revision 18f90d372cf35b387663f1567de701e5393f6eb5)
1# SPDX-License-Identifier: GPL-2.0
2
3config USB_CHIPIDEA
4	tristate "ChipIdea Highspeed Dual Role Controller"
5	depends on ((USB_EHCI_HCD && USB_GADGET) || (USB_EHCI_HCD && !USB_GADGET) || (!USB_EHCI_HCD && USB_GADGET)) && HAS_DMA
6	select EXTCON
7	select RESET_CONTROLLER
8	select USB_ULPI_BUS
9	help
10	  Say Y here if your system has a dual role high speed USB
11	  controller based on ChipIdea silicon IP. It supports:
12	  Dual-role switch (ID, OTG FSM, sysfs), Host-only, and
13	  Peripheral-only.
14
15	  When compiled dynamically, the module will be called ci_hdrc.ko.
16
17if USB_CHIPIDEA
18
19config USB_CHIPIDEA_OF
20	tristate
21	depends on OF
22	default USB_CHIPIDEA
23
24config USB_CHIPIDEA_PCI
25	tristate
26	depends on USB_PCI
27	depends on NOP_USB_XCEIV
28	default USB_CHIPIDEA
29
30config USB_CHIPIDEA_UDC
31	bool "ChipIdea device controller"
32	depends on USB_GADGET
33	help
34	  Say Y here to enable device controller functionality of the
35	  ChipIdea driver.
36
37config USB_CHIPIDEA_HOST
38	bool "ChipIdea host controller"
39	depends on USB_EHCI_HCD
40	select USB_EHCI_ROOT_HUB_TT
41	help
42	  Say Y here to enable host controller functionality of the
43	  ChipIdea driver.
44endif
45