1config USB_CDNS_SUPPORT 2 tristate "Cadence USB Support" 3 depends on USB_SUPPORT && (USB || USB_GADGET) && HAS_DMA 4 select USB_XHCI_PLATFORM if USB_XHCI_HCD 5 select USB_ROLE_SWITCH 6 help 7 Say Y here if your system has a Cadence USBSS or USBSSP 8 dual-role controller. 9 It supports: dual-role switch, Host-only, and Peripheral-only. 10 11config USB_CDNS_HOST 12 bool 13 14if USB_CDNS_SUPPORT 15 16config USB_CDNS3 17 tristate "Cadence USB3 Dual-Role Controller" 18 depends on USB_CDNS_SUPPORT 19 help 20 Say Y here if your system has a Cadence USB3 dual-role controller. 21 It supports: dual-role switch, Host-only, and Peripheral-only. 22 23if USB_CDNS3 24 25config USB_CDNS3_GADGET 26 bool "Cadence USB3 device controller" 27 depends on USB_GADGET=y || USB_GADGET=USB_CDNS3 28 help 29 Say Y here to enable device controller functionality of the 30 Cadence USBSS-DEV driver. 31 32 This controller supports FF, HS and SS mode. It doesn't support 33 LS and SSP mode. 34 35config USB_CDNS3_HOST 36 bool "Cadence USB3 host controller" 37 depends on USB=y || USB=USB_CDNS3 38 select USB_CDNS_HOST 39 help 40 Say Y here to enable host controller functionality of the 41 Cadence driver. 42 43 Host controller is compliant with XHCI so it will use 44 standard XHCI driver. 45 46config USB_CDNS3_PCI_WRAP 47 tristate "Cadence USB3 support on PCIe-based platforms" 48 depends on USB_PCI && ACPI 49 default USB_CDNS3 50 help 51 If you're using the USBSS Core IP with a PCIe, please say 52 'Y' or 'M' here. 53 54 If you choose to build this driver as module it will 55 be dynamically linked and module will be called cdns3-pci.ko 56 57config USB_CDNS3_TI 58 tristate "Cadence USB3 support on TI platforms" 59 depends on ARCH_K3 || COMPILE_TEST 60 default USB_CDNS3 61 help 62 Say 'Y' or 'M' here if you are building for Texas Instruments 63 platforms that contain Cadence USB3 controller core. 64 65 e.g. J721e. 66 67config USB_CDNS3_IMX 68 tristate "Cadence USB3 support on NXP i.MX platforms" 69 depends on ARCH_MXC || COMPILE_TEST 70 default USB_CDNS3 71 help 72 Say 'Y' or 'M' here if you are building for NXP i.MX 73 platforms that contain Cadence USB3 controller core. 74 75 For example, imx8qm and imx8qxp. 76 77config USB_CDNS3_STARFIVE 78 tristate "Cadence USB3 support on StarFive SoC platforms" 79 depends on ARCH_STARFIVE || COMPILE_TEST 80 help 81 Say 'Y' or 'M' here if you are building for StarFive SoCs 82 platforms that contain Cadence USB3 controller core. 83 84 e.g. JH7110. 85 86 If you choose to build this driver as module it will 87 be dynamically linked and module will be called cdns3-starfive.ko 88 89endif # USB_CDNS3 90 91config USB_CDNSP 92 tristate "Cadence USBSSP Dual-Role Controller" 93 depends on USB_CDNS_SUPPORT 94 help 95 Say Y here if your system has a Cadence USBSSP dual-role controller. 96 It supports: dual-role switch, Host-only, and Peripheral-only. 97 Cadence CDNSP Controller device mode is very similar to XHCI controller. 98 Therefore some algorithms used has been taken from xHCI driver. 99 Host controller is compliant with XHCI so it uses standard XHCI driver. 100 101if USB_CDNSP 102 103config USB_CDNSP_GADGET 104 bool "Cadence USBSSP device controller" 105 depends on USB_GADGET=y || USB_GADGET=USB_CDNSP 106 help 107 Say Y here to enable device controller functionality of the 108 Cadence USBSSP-DEV driver. 109 110 Cadence CDNSP Device Controller in device mode is 111 very similar to XHCI controller. Therefore some algorithms 112 used has been taken from host driver. 113 This controller supports FF, HS, SS and SSP mode. 114 It doesn't support LS. 115 116config USB_CDNSP_HOST 117 bool "Cadence USBSSP host controller" 118 depends on USB=y || USB=USB_CDNSP 119 select USB_CDNS_HOST 120 help 121 Say Y here to enable host controller functionality of the 122 Cadence driver. 123 124 Host controller is compliant with XHCI so it uses 125 standard XHCI driver. 126 127config USB_CDNSP_PCI 128 tristate "Cadence USBSSP support on PCIe-based platforms" 129 depends on USB_PCI && ACPI 130 help 131 If you're using the USBSSP Core IP with a PCIe, please say 132 'Y' or 'M' here. 133 134 If you choose to build this driver as module it will 135 be dynamically linked and module will be called cdnsp-pci.ko 136 137endif # USB_CDNSP 138 139endif # USB_CDNS_SUPPORT 140