xref: /openbmc/linux/drivers/usb/cdns3/Kconfig (revision 1e056efa)
17733f6c3SPawel Laszczakconfig USB_CDNS3
27733f6c3SPawel Laszczak	tristate "Cadence USB3 Dual-Role Controller"
37733f6c3SPawel Laszczak	depends on USB_SUPPORT && (USB || USB_GADGET) && HAS_DMA
47733f6c3SPawel Laszczak	select USB_XHCI_PLATFORM if USB_XHCI_HCD
57733f6c3SPawel Laszczak	select USB_ROLE_SWITCH
67733f6c3SPawel Laszczak	help
77733f6c3SPawel Laszczak	  Say Y here if your system has a Cadence USB3 dual-role controller.
87733f6c3SPawel Laszczak	  It supports: dual-role switch, Host-only, and Peripheral-only.
97733f6c3SPawel Laszczak
107733f6c3SPawel Laszczak	  If you choose to build this driver is a dynamically linked
117733f6c3SPawel Laszczak	  as module, the module will be called cdns3.ko.
127733f6c3SPawel Laszczak
137733f6c3SPawel Laszczakif USB_CDNS3
147733f6c3SPawel Laszczak
157733f6c3SPawel Laszczakconfig USB_CDNS3_GADGET
167733f6c3SPawel Laszczak	bool "Cadence USB3 device controller"
177733f6c3SPawel Laszczak	depends on USB_GADGET=y || USB_GADGET=USB_CDNS3
187733f6c3SPawel Laszczak	help
197733f6c3SPawel Laszczak	  Say Y here to enable device controller functionality of the
207733f6c3SPawel Laszczak	  Cadence USBSS-DEV driver.
217733f6c3SPawel Laszczak
227733f6c3SPawel Laszczak	  This controller supports FF, HS and SS mode. It doesn't support
237733f6c3SPawel Laszczak	  LS and SSP mode.
247733f6c3SPawel Laszczak
257733f6c3SPawel Laszczakconfig USB_CDNS3_HOST
267733f6c3SPawel Laszczak	bool "Cadence USB3 host controller"
277733f6c3SPawel Laszczak	depends on USB=y || USB=USB_CDNS3
287733f6c3SPawel Laszczak	help
297733f6c3SPawel Laszczak	  Say Y here to enable host controller functionality of the
307733f6c3SPawel Laszczak	  Cadence driver.
317733f6c3SPawel Laszczak
327733f6c3SPawel Laszczak	  Host controller is compliant with XHCI so it will use
337733f6c3SPawel Laszczak	  standard XHCI driver.
347733f6c3SPawel Laszczak
357733f6c3SPawel Laszczakconfig USB_CDNS3_PCI_WRAP
367733f6c3SPawel Laszczak	tristate "Cadence USB3 support on PCIe-based platforms"
377733f6c3SPawel Laszczak	depends on USB_PCI && ACPI
387733f6c3SPawel Laszczak	default USB_CDNS3
397733f6c3SPawel Laszczak	help
407733f6c3SPawel Laszczak	  If you're using the USBSS Core IP with a PCIe, please say
417733f6c3SPawel Laszczak	  'Y' or 'M' here.
427733f6c3SPawel Laszczak
437733f6c3SPawel Laszczak	  If you choose to build this driver as module it will
447733f6c3SPawel Laszczak	  be dynamically linked and module will be called cdns3-pci.ko
457733f6c3SPawel Laszczak
46387c359bSRoger Quadrosconfig USB_CDNS3_TI
47387c359bSRoger Quadros	tristate "Cadence USB3 support on TI platforms"
48387c359bSRoger Quadros	depends on ARCH_K3 || COMPILE_TEST
49387c359bSRoger Quadros	default USB_CDNS3
50387c359bSRoger Quadros	help
51387c359bSRoger Quadros	  Say 'Y' or 'M' here if you are building for Texas Instruments
52387c359bSRoger Quadros	  platforms that contain Cadence USB3 controller core.
53387c359bSRoger Quadros
54387c359bSRoger Quadros	  e.g. J721e.
55387c359bSRoger Quadros
561e056efaSPeter Chenconfig USB_CDNS3_IMX
571e056efaSPeter Chen	tristate "Cadence USB3 support on NXP i.MX platforms"
581e056efaSPeter Chen	depends on ARCH_MXC || COMPILE_TEST
591e056efaSPeter Chen	default USB_CDNS3
601e056efaSPeter Chen	help
611e056efaSPeter Chen	  Say 'Y' or 'M' here if you are building for NXP i.MX
621e056efaSPeter Chen	  platforms that contain Cadence USB3 controller core.
631e056efaSPeter Chen
641e056efaSPeter Chen	  For example, imx8qm and imx8qxp.
651e056efaSPeter Chen
667733f6c3SPawel Laszczakendif
67