0001 # SPDX-License-Identifier: GPL-2.0
0002
0003 config USB_CHIPIDEA
0004 tristate "ChipIdea Highspeed Dual Role Controller"
0005 depends on ((USB_EHCI_HCD && USB_GADGET) || (USB_EHCI_HCD && !USB_GADGET) || (!USB_EHCI_HCD && USB_GADGET)) && HAS_DMA
0006 select EXTCON
0007 select RESET_CONTROLLER
0008 select USB_ULPI_BUS
0009 select USB_ROLE_SWITCH
0010 select USB_TEGRA_PHY if ARCH_TEGRA
0011 help
0012 Say Y here if your system has a dual role high speed USB
0013 controller based on ChipIdea silicon IP. It supports:
0014 Dual-role switch (ID, OTG FSM, sysfs), Host-only, and
0015 Peripheral-only.
0016
0017 When compiled dynamically, the module will be called ci_hdrc.ko.
0018
0019 if USB_CHIPIDEA
0020
0021 config USB_CHIPIDEA_UDC
0022 bool "ChipIdea device controller"
0023 depends on USB_GADGET
0024 help
0025 Say Y here to enable device controller functionality of the
0026 ChipIdea driver.
0027
0028 config USB_CHIPIDEA_HOST
0029 bool "ChipIdea host controller"
0030 depends on USB_EHCI_HCD
0031 select USB_EHCI_ROOT_HUB_TT
0032 help
0033 Say Y here to enable host controller functionality of the
0034 ChipIdea driver.
0035
0036 config USB_CHIPIDEA_PCI
0037 tristate "Enable PCI glue driver" if EMBEDDED
0038 depends on USB_PCI
0039 depends on NOP_USB_XCEIV
0040 default USB_CHIPIDEA
0041
0042 config USB_CHIPIDEA_MSM
0043 tristate "Enable MSM hsusb glue driver" if EMBEDDED
0044 default USB_CHIPIDEA
0045
0046 config USB_CHIPIDEA_IMX
0047 tristate "Enable i.MX USB glue driver" if EMBEDDED
0048 depends on OF
0049 default USB_CHIPIDEA
0050
0051 config USB_CHIPIDEA_GENERIC
0052 tristate "Enable generic USB2 glue driver" if EMBEDDED
0053 default USB_CHIPIDEA
0054
0055 config USB_CHIPIDEA_TEGRA
0056 tristate "Enable Tegra USB glue driver" if EMBEDDED
0057 depends on OF
0058 default USB_CHIPIDEA
0059
0060 endif