xref: /openbmc/linux/drivers/usb/cdns3/Kconfig (revision 394c3a14)
1config CDNS_USB_COMMON
2	tristate
3
4config CDNS_USB_HOST
5	bool
6
7config USB_CDNS3
8	tristate "Cadence USB3 Dual-Role Controller"
9	depends on USB_SUPPORT && (USB || USB_GADGET) && HAS_DMA
10	select USB_XHCI_PLATFORM if USB_XHCI_HCD
11	select USB_ROLE_SWITCH
12	select CDNS_USB_COMMON
13	help
14	  Say Y here if your system has a Cadence USB3 dual-role controller.
15	  It supports: dual-role switch, Host-only, and Peripheral-only.
16
17	  If you choose to build this driver is a dynamically linked
18	  as module, the module will be called cdns3.ko.
19
20if USB_CDNS3
21
22config USB_CDNS3_GADGET
23	bool "Cadence USB3 device controller"
24	depends on USB_GADGET=y || USB_GADGET=USB_CDNS3
25	help
26	  Say Y here to enable device controller functionality of the
27	  Cadence USBSS-DEV driver.
28
29	  This controller supports FF, HS and SS mode. It doesn't support
30	  LS and SSP mode.
31
32config USB_CDNS3_HOST
33	bool "Cadence USB3 host controller"
34	depends on USB=y || USB=USB_CDNS3
35	select CDNS_USB_HOST
36	help
37	  Say Y here to enable host controller functionality of the
38	  Cadence driver.
39
40	  Host controller is compliant with XHCI so it will use
41	  standard XHCI driver.
42
43config USB_CDNS3_PCI_WRAP
44	tristate "Cadence USB3 support on PCIe-based platforms"
45	depends on USB_PCI && ACPI
46	default USB_CDNS3
47	help
48	  If you're using the USBSS Core IP with a PCIe, please say
49	  'Y' or 'M' here.
50
51	  If you choose to build this driver as module it will
52	  be dynamically linked and module will be called cdns3-pci.ko
53
54config USB_CDNS3_TI
55	tristate "Cadence USB3 support on TI platforms"
56	depends on ARCH_K3 || COMPILE_TEST
57	default USB_CDNS3
58	help
59	  Say 'Y' or 'M' here if you are building for Texas Instruments
60	  platforms that contain Cadence USB3 controller core.
61
62	  e.g. J721e.
63
64config USB_CDNS3_IMX
65	tristate "Cadence USB3 support on NXP i.MX platforms"
66	depends on ARCH_MXC || COMPILE_TEST
67	default USB_CDNS3
68	help
69	  Say 'Y' or 'M' here if you are building for NXP i.MX
70	  platforms that contain Cadence USB3 controller core.
71
72	  For example, imx8qm and imx8qxp.
73
74endif
75