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