| config USB_CDNS_SUPPORT | |
| tristate "Cadence USB Support" | |
| depends on USB_SUPPORT && (USB || USB_GADGET) && HAS_DMA | |
| select USB_XHCI_PLATFORM if USB_XHCI_HCD | |
| select USB_ROLE_SWITCH | |
| help | |
| Say Y here if your system has a Cadence USBSS or USBSSP | |
| dual-role controller. | |
| It supports: dual-role switch, Host-only, and Peripheral-only. | |
| config USB_CDNS_HOST | |
| bool | |
| if USB_CDNS_SUPPORT | |
| config USB_CDNS3 | |
| tristate "Cadence USB3 Dual-Role Controller" | |
| depends on USB_CDNS_SUPPORT | |
| help | |
| Say Y here if your system has a Cadence USB3 dual-role controller. | |
| It supports: dual-role switch, Host-only, and Peripheral-only. | |
| If you choose to build this driver is a dynamically linked | |
| as module, the module will be called cdns3.ko. | |
| endif | |
| if USB_CDNS3 | |
| config USB_CDNS3_GADGET | |
| bool "Cadence USB3 device controller" | |
| depends on USB_GADGET=y || USB_GADGET=USB_CDNS3 | |
| help | |
| Say Y here to enable device controller functionality of the | |
| Cadence USBSS-DEV driver. | |
| This controller supports FF, HS and SS mode. It doesn't support | |
| LS and SSP mode. | |
| config USB_CDNS3_HOST | |
| bool "Cadence USB3 host controller" | |
| depends on USB=y || USB=USB_CDNS3 | |
| select USB_CDNS_HOST | |
| help | |
| Say Y here to enable host controller functionality of the | |
| Cadence driver. | |
| Host controller is compliant with XHCI so it will use | |
| standard XHCI driver. | |
| config USB_CDNS3_PCI_WRAP | |
| tristate "Cadence USB3 support on PCIe-based platforms" | |
| depends on USB_PCI && ACPI | |
| default USB_CDNS3 | |
| help | |
| If you're using the USBSS Core IP with a PCIe, please say | |
| 'Y' or 'M' here. | |
| If you choose to build this driver as module it will | |
| be dynamically linked and module will be called cdns3-pci.ko | |
| config USB_CDNS3_TI | |
| tristate "Cadence USB3 support on TI platforms" | |
| depends on ARCH_K3 || COMPILE_TEST | |
| default USB_CDNS3 | |
| help | |
| Say 'Y' or 'M' here if you are building for Texas Instruments | |
| platforms that contain Cadence USB3 controller core. | |
| e.g. J721e. | |
| config USB_CDNS3_IMX | |
| tristate "Cadence USB3 support on NXP i.MX platforms" | |
| depends on ARCH_MXC || COMPILE_TEST | |
| default USB_CDNS3 | |
| help | |
| Say 'Y' or 'M' here if you are building for NXP i.MX | |
| platforms that contain Cadence USB3 controller core. | |
| For example, imx8qm and imx8qxp. | |
| endif | |
| if USB_CDNS_SUPPORT | |
| config USB_CDNSP_PCI | |
| tristate "Cadence CDNSP Dual-Role Controller" | |
| depends on USB_CDNS_SUPPORT && USB_PCI && ACPI | |
| help | |
| Say Y here if your system has a Cadence CDNSP dual-role controller. | |
| It supports: dual-role switch Host-only, and Peripheral-only. | |
| If you choose to build this driver is a dynamically linked | |
| module, the module will be called cdnsp.ko. | |
| endif | |
| if USB_CDNSP_PCI | |
| config USB_CDNSP_GADGET | |
| bool "Cadence CDNSP device controller" | |
| depends on USB_GADGET=y || USB_GADGET=USB_CDNSP_PCI | |
| help | |
| Say Y here to enable device controller functionality of the | |
| Cadence CDNSP-DEV driver. | |
| Cadence CDNSP Device Controller in device mode is | |
| very similar to XHCI controller. Therefore some algorithms | |
| used has been taken from host driver. | |
| This controller supports FF, HS, SS and SSP mode. | |
| It doesn't support LS. | |
| config USB_CDNSP_HOST | |
| bool "Cadence CDNSP host controller" | |
| depends on USB=y || USB=USB_CDNSP_PCI | |
| select USB_CDNS_HOST | |
| help | |
| Say Y here to enable host controller functionality of the | |
| Cadence driver. | |
| Host controller is compliant with XHCI so it uses | |
| standard XHCI driver. | |
| endif |