solidrun-clearfog: enable USB3 by default
[openadk.git] / target / linux / config / Config.in.usb
blob157c2f222bb2f96b4183b8a34d3eaf88d9f42c31
1 # This file is part of the OpenADK project. OpenADK is copyrighted
2 # material, please see the LICENCE file in the top-level directory.
4 menu "USB support"
5 depends on ADK_TARGET_WITH_USB \
6         || ADK_TARGET_SYSTEM_QEMU_X86_64 \
7         || ADK_TARGET_SYSTEM_QEMU_X86 \
8         || ADK_TARGET_GENERIC
10 config ADK_LINUX_KERNEL_USB_PCI
11         bool
13 config ADK_LINUX_KERNEL_USB_SUPPORT
14         bool
16 config ADK_LINUX_KERNEL_USB_DEVICE_CLASS
17         bool
19 config ADK_LINUX_KERNEL_USB_ANNOUNCE_NEW_DEVICES
20         bool
22 config ADK_LINUX_KERNEL_USB_EHCI_ROOT_HUB_TT
23         bool
25 config ADK_LINUX_KERNEL_USB_EHCI_TT_NEWSCHED
26         bool
28 config ADK_LINUX_KERNEL_USB_EHCI_MXC
29         bool
31 config ADK_LINUX_KERNEL_USB_EHCI_HCD_PLATFORM
32         bool
34 config ADK_LINUX_KERNEL_USB_GADGET
35         tristate
37 config ADK_LINUX_KERNEL_USB_PHY
38         bool
40 config ADK_LINUX_KERNEL_USB_MXS_PHY
41         tristate
42         select ADK_LINUX_KERNEL_USB_PHY
43         default m if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6  || \
44                 ADK_TARGET_SYSTEM_PHYTEC_IMX6
45         default n
47 config ADK_LINUX_KERNEL_USB_XHCI_PLATFORM
48         bool
50 config ADK_LINUX_KERNEL_USB_OHCI_HCD_PLATFORM
51         bool
52         select ADK_LINUX_KERNEL_USB_OHCI_HCD
54 config ADK_LINUX_KERNEL_USB_OHCI_HCD_PCI
55         bool
57 config ADK_LINUX_KERNEL_USB_EHCI_HCD_PCI
58         bool
60 config ADK_LINUX_KERNEL_USB_XHCI_PCI
61         bool
63 config ADK_LINUX_KERNEL_USB_XHCI_MVEBU
64         bool
66 config ADK_LINUX_KERNEL_USB_LIBUSUAL
67         tristate
69 config ADK_LINUX_KERNEL_USB_NET_DRIVERS
70         bool
72 config ADK_LINUX_KERNEL_USB_USBNET
73         select ADK_LINUX_KERNEL_USB_NET_DRIVERS
74         tristate
76 config ADK_LINUX_KERNEL_USB
77         tristate "USB support"
78         select ADK_LINUX_KERNEL_NLS
79         select ADK_LINUX_KERNEL_USB_SUPPORT
80         select ADK_LINUX_KERNEL_USB_ANNOUNCE_NEW_DEVICES
81         default m if ADK_TARGET_SYSTEM_PCENGINES_APU
82         default m if ADK_TARGET_SYSTEM_PCENGINES_ALIX
83         default m if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
84         default m if ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
85         default m if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6  || \
86                 ADK_TARGET_SYSTEM_PHYTEC_IMX6
87         default y if ADK_TARGET_SYSTEM_KINETIS_K70
88         default y if ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG
89         default y if ADK_TARGET_SYSTEM_ROCKPI4_PLUS
90         default y if ADK_TARGET_SYSTEM_RASPBERRY_PI5
91         default n
92         help
93           Universal Serial Bus (USB) is a specification for a serial bus
94           subsystem which offers higher speeds and more features than the
95           traditional PC serial port.  The bus supplies power to peripherals
96           and allows for hot swapping.  Up to 127 USB peripherals can be
97           connected to a single USB host in a tree structure.
98           
99           The USB host is the root of the tree, the peripherals are the
100           leaves and the inner nodes are special USB devices called hubs.
101           Most PCs now have USB host ports, used to connect peripherals
102           such as scanners, keyboards, mice, modems, cameras, disks,
103           flash memory, network links, and printers to the PC.
105           Say Y here if your computer has a host-side USB port and you want
106           to use USB devices.  You then need to say Y to at least one of the
107           Host Controller Driver (HCD) options below.  Choose a USB 1.1
108           controller, such as "UHCI HCD support" or "OHCI HCD support",
109           and "EHCI HCD (USB 2.0) support" except for older systems that
110           do not have USB 2.0 support.  It doesn't normally hurt to select
111           them all if you are not certain.
113           If your system has a device-side USB port, used in the peripheral
114           side of the USB protocol, see the "USB Gadget" framework instead.
116           After choosing your HCD, then select drivers for the USB peripherals
117           you'll be using.  You may want to check out the information provided
118           in <file:Documentation/usb/> and especially the links given in
119           <file:Documentation/usb/usb-help.txt>.
121 menu "USB controller support"
123 config ADK_LINUX_KERNEL_USB_XHCI_HCD
124         tristate "Support for USB xHCI HCD (USB 3.0)"
125         depends on ADK_LINUX_KERNEL_USB
126         select ADK_LINUX_KERNEL_USB_PCI
127         select ADK_LINUX_KERNEL_USB_XHCI_PLATFORM
128         select ADK_LINUX_KERNEL_USB_XHCI_PCI
129         select ADK_LINUX_KERNEL_USB_XHCI_MVEBU if ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG
130         default y if ADK_TARGET_SYSTEM_ROCKPI4_PLUS
131         default y if ADK_TARGET_SYSTEM_RASPBERRY_PI5
132         default y if ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG
133         default n
134         help
135           The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0
136           "SuperSpeed" host controller hardware.
138           To compile this driver as a module, choose M here: the
139           module will be called xhci-hcd.
142 config ADK_LINUX_KERNEL_USB_EHCI_HCD
143         tristate "Support for USB EHCI 2.0 controllers"
144         select ADK_LINUX_KERNEL_USB_MXS_PHY if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6  || \
145                 ADK_TARGET_SYSTEM_PHYTEC_IMX6
146         select ADK_LINUX_KERNEL_USB_EHCI_MXC if ADK_TARGET_SYSTEM_KINETIS_K70
147         select ADK_LINUX_KERNEL_USB_DEVICE_CLASS if ADK_TARGET_SYSTEM_KINETIS_K70
148         select ADK_LINUX_KERNEL_USB_EHCI_HCD_PLATFORM if ADK_TARGET_SYSTEM_ROCKPI4_PLUS
149         select ADK_LINUX_KERNEL_USB_EHCI_HCD_PCI if ADK_TARGET_SYSTEM_ROCKPI4_PLUS
150         depends on !ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
151         depends on !ADK_TARGET_BOARD_BCM28XX
152         depends on ADK_LINUX_KERNEL_USB
153         default m if ADK_TARGET_SYSTEM_PCENGINES_APU
154         default m if ADK_TARGET_SYSTEM_PCENGINES_ALIX
155         default m if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
156         default m if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6  || \
157                 ADK_TARGET_SYSTEM_PHYTEC_IMX6
158         default y if ADK_TARGET_SYSTEM_KINETIS_K70
159         default y if ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG
160         default y if ADK_TARGET_SYSTEM_ROCKPI4_PLUS
161         default y if ADK_TARGET_SYSTEM_RASPBERRY_PI5
162         default n
163         help
164           The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0
165           "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware.
166           If your USB host controller supports USB 2.0, you will likely want to
167           configure this Host Controller Driver.  At the time of this writing, 
168           the primary implementation of EHCI is a chip from NEC, widely available
169           in add-on PCI cards, but implementations are in the works from other 
170           vendors including Intel and Philips.  Motherboard support is appearing.
172           EHCI controllers are packaged with "companion" host controllers (OHCI
173           or UHCI) to handle USB 1.1 devices connected to root hub ports.  Ports
174           will connect to EHCI if the device is high speed, otherwise they
175           connect to a companion controller.  If you configure EHCI, you should
176           probably configure the OHCI (for NEC and some other vendors) USB Host
177           Controller Driver or UHCI (for Via motherboards) Host Controller
178           Driver too.
180           You may want to read <file:Documentation/usb/ehci.txt>.
182 config ADK_LINUX_KERNEL_USB_UHCI_HCD
183         tristate "Support for UHCI controllers"
184         depends on ADK_LINUX_KERNEL_USB
185         depends on !ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
186         depends on !ADK_TARGET_BOARD_BCM28XX
187         default m if ADK_TARGET_SYSTEM_PCENGINES_APU
188         default m if ADK_TARGET_SYSTEM_PCENGINES_ALIX
189         default m if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
190         default n
191         help
192           The Universal Host Controller Interface is a standard by Intel for
193           accessing the USB hardware in the PC (which is also called the USB
194           host controller). If your USB host controller conforms to this
195           standard, you may want to say Y, but see below. All recent boards
196           with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX,
197           i810, i820) conform to this standard. Also all VIA PCI chipsets
198           (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro
199           133). If unsure, say Y.
201 config ADK_LINUX_KERNEL_USB_OHCI_HCD
202         tristate "Support for OHCI controllers"
203         depends on ADK_LINUX_KERNEL_USB
204         depends on !ADK_TARGET_BOARD_BCM28XX
205         select ADK_LINUX_KERNEL_USB_OHCI_HCD_PCI if ADK_TARGET_SYSTEM_PCENGINES_ALIX
206         select ADK_LINUX_KERNEL_USB_OHCI_HCD_PCI if ADK_TARGET_SYSTEM_PCENGINES_APU
207         select ADK_LINUX_KERNEL_USB_OHCI_HCD_PCI if ADK_TARGET_SYSTEM_ROCKPI4_PLUS
208         default m if ADK_TARGET_SYSTEM_PCENGINES_APU
209         default m if ADK_TARGET_SYSTEM_PCENGINES_ALIX
210         default m if ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
211         default m if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
212         default y if ADK_TARGET_SYSTEM_ROCKPI4_PLUS
213         default n
214         help
215           The Open Host Controller Interface (OHCI) is a standard for accessing
216           USB 1.1 host controller hardware.  It does more in hardware than Intel's
217           UHCI specification.  If your USB host controller follows the OHCI spec,
218           say Y.  On most non-x86 systems, and on x86 hardware that's not using a
219           USB controller from Intel or VIA, this is appropriate.  If your host
220           controller doesn't use PCI, this is probably appropriate.  For a PCI
221           based system where you're not sure, the "lspci -v" entry will list the
222           right "prog-if" for your USB controller(s):  EHCI, OHCI, or UHCI.
224 config ADK_LINUX_KERNEL_USB_DWCOTG
225         bool "Support for DWCOTG controller"
226         select ADK_LINUX_KERNEL_USB
227         select ADK_LINUX_KERNEL_FIQ
228         depends on ADK_TARGET_BOARD_BCM28XX
229         default y if ADK_TARGET_BOARD_BCM28XX
230         default n
231         help
232           The Synopsis DWC controller is a dual-role
233           host/peripheral/OTG ("On The Go") USB controllers.
235 config ADK_LINUX_KERNEL_USB_CHIPIDEA_UDC
236         bool
238 config ADK_LINUX_KERNEL_USB_CHIPIDEA_HOST
239         bool
241 config ADK_LINUX_KERNEL_USB_CHIPIDEA
242         tristate "Support for ChipIdea controller"
243         select ADK_LINUX_KERNEL_USB_CHIPIDEA_UDC
244         select ADK_LINUX_KERNEL_USB_CHIPIDEA_HOST
245         select ADK_LINUX_KERNEL_USB_GADGET
246         depends on ADK_LINUX_KERNEL_USB_EHCI_HCD
247         depends on ADK_TARGET_SYSTEM_SOLIDRUN_IMX6  || \
248                 ADK_TARGET_SYSTEM_PHYTEC_IMX6
249         default m if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6  || \
250                 ADK_TARGET_SYSTEM_PHYTEC_IMX6
251         default n
253 config ADK_LINUX_KERNEL_USB_ISP116X_HCD
254         tristate "Support for ISP116X"
255         depends on ADK_LINUX_KERNEL_USB
256         depends on !ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
257         depends on !ADK_TARGET_BOARD_BCM28XX
258         help
259           The ISP1160 and ISP1161 chips are USB host controllers. Enable this
260           option if your board has this chip. If unsure, say N.
262           This driver does not support isochronous transfers.
264 config ADK_LINUX_KERNEL_USB_SL811_HCD
265         tristate "Support for SL811HS"
266         depends on ADK_LINUX_KERNEL_USB
267         depends on !ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
268         depends on !ADK_TARGET_BOARD_BCM28XX
269         default n
270         help
271           The SL811HS is a single-port USB controller that supports either
272           host side or peripheral side roles.  Enable this option if your
273           board has this chip, and you want to use it as a host controller. 
274           If unsure, say N.
276 endmenu
278 menu "USB devices support"
280 config ADK_LINUX_KERNEL_USB_STORAGE
281         tristate "Support for USB storage devices"
282         select ADK_LINUX_KERNEL_SCSI
283         select ADK_LINUX_KERNEL_BLK_DEV_SD
285 config ADK_LINUX_KERNEL_SND_USB_AUDIO
286         tristate "Support for USB sound adapter"
287         select ADK_LINUX_KERNEL_SND
288         select ADK_LINUX_KERNEL_SND_USB
289         select ADK_LINUX_KERNEL_SND_RAWMIDI
291 config ADK_LINUX_KERNEL_USB_HSO
292         tristate "Support for USB HSO devices"
293         select ADK_LINUX_KERNEL_RFKILL
294         select ADK_LINUX_KERNEL_USB_STORAGE
296 config ADK_LINUX_KERNEL_USB_PRINTER
297         tristate "Support for USB printers"
299 config ADK_LINUX_KERNEL_USB_ACM
300         tristate "Support for USB modems/isdn controllers"
302 config ADK_LINUX_KERNEL_USB_PEGASUS
303         tristate "Support for USB Pegasus network cards"
304         select ADK_LINUX_KERNEL_USB_NET_DRIVERS
306 config ADK_LINUX_KERNEL_USB_SERIAL
307         tristate "Support for USB-to-serial converters"
308         help
309           Say Y here if you have a USB device that provides normal serial
310           ports, or acts like a serial device, and you want to connect it to
311           your USB bus.
313           Please read <file:Documentation/usb/usb-serial.txt> for more
314           information on the specifics of the different devices that are
315           supported, and on how to use them.
317 config ADK_LINUX_KERNEL_USB_SERIAL_BELKIN
318         tristate "Support for Belkin USB-to-serial converters"
319         depends on ADK_LINUX_KERNEL_USB_SERIAL
320         help
321           Say Y here if you want to use a Belkin USB Serial single port
322           adaptor (F5U103 is one of the model numbers) or the Peracom single
323           port USB to serial adapter.
325 config ADK_LINUX_KERNEL_USB_SERIAL_FTDI_SIO
326         tristate "Support for FTDI USB-to-serial converter"
327         depends on ADK_LINUX_KERNEL_USB_SERIAL
328         help
329           Say Y here if you want to use a FTDI SIO single port USB to serial
330           converter device. The implementation I have is called the USC-1000.
331           This driver has also be tested with the 245 and 232 devices.
333           See <http://ftdi-usb-sio.sourceforge.net/> for more
334           information on this driver and the device.
336 config ADK_LINUX_KERNEL_USB_SERIAL_MCT_U232
337         tristate "Support for Magic Control Technology USB-to-Serial converters"
338         depends on ADK_LINUX_KERNEL_USB_SERIAL
339         help
340           Say Y here if you want to use a USB Serial single port adapter from
341           Magic Control Technology Corp. (U232 is one of the model numbers).
343           This driver also works with Sitecom U232-P25 and D-Link DU-H3SP USB
344           BAY, Belkin F5U109, and Belkin F5U409 devices.
346 config ADK_LINUX_KERNEL_USB_SERIAL_PL2303
347         tristate "Support for Prolific PL2303 USB-to-Serial converters"
348         depends on ADK_LINUX_KERNEL_USB_SERIAL
349         help
350           Say Y here if you want to use the PL2303 USB Serial single port
351           adapter from Prolific.
353 config ADK_LINUX_KERNEL_USB_SERIAL_VISOR
354         tristate "Support for Handspring Visor / Palm m50x / Sony Clie Driver"
355         depends on ADK_LINUX_KERNEL_USB_SERIAL
356         help
357           Say Y here if you want to connect to your HandSpring Visor, Palm
358           m500 or m505 through its USB docking station. See
359           <http://usbvisor.sourceforge.net/> for more information on using this
360           driver.
362 config ADK_LINUX_KERNEL_USB_SERIAL_SIERRAWIRELESS
363         tristate "Support for Sierra Wireless USB-to-Serial converters"
364         depends on ADK_LINUX_KERNEL_USB_SERIAL
366 config ADK_LINUX_KERNEL_USB_SERIAL_OPTION
367         tristate "USB driver for GSM and CDMA modems"
368         depends on ADK_LINUX_KERNEL_USB_SERIAL
369         help
370           Say Y here if you have a GSM or CDMA modem that's connected to USB.
372 config ADK_LINUX_KERNEL_USB_SERIAL_WWAN
373         tristate
374         depends on ADK_LINUX_KERNEL_USB_SERIAL
376 config ADK_LINUX_KERNEL_USB_ATM
377         tristate "Support for USB ATM devices"
379 config ADK_LINUX_KERNEL_USB_ATM_SPEEDTOUCH
380         tristate "Support for USB Speedtouch ADSL modem"
381         depends on ADK_LINUX_KERNEL_USB_ATM
383 config ADK_LINUX_KERNEL_USB_SISUSBVGA
384         tristate "USB 2.0 SVGA dongle support (Net2280/SiS315)"
386 config ADK_LINUX_KERNEL_USB_NET_QMI_WWAN
387         tristate "Qualcomm LTE modems"
388         select ADK_LINUX_KERNEL_USB_USBNET
389         help
391 config ADK_LINUX_KERNEL_USB_SIERRA_NET
392         tristate "Sierra Wireless MC8775 PCI Express"
393         select ADK_LINUX_KERNEL_USB_USBNET
394         help
395           Driver for WWAN modem Sierra Wireless MC8775 PCI Express
398 config ADK_LINUX_KERNEL_SND_USB
399        bool
400        depends on ADK_LINUX_KERNEL_USB
402 config ADK_LINUX_KERNEL_SND_USB_AUDIO
403        tristate
405 config ADK_LINUX_KERNEL_USB_GADGET
406        tristate
408 config ADK_LINUX_KERNEL_USB_AUDIO
409        tristate
411 config ADK_LINUX_KERNEL_USB_MIDI_GADGET
412        tristate "USB Midi Gadgets"
413        select ADK_LINUX_KERNEL_USB_GADGET
414        select ADK_LINUX_KERNEL_USB_AUDIO
415        select ADK_LINUX_KERNEL_SND_USB_AUDIO
416        select ADK_LINUX_KERNEL_SND_USB
417        help
418          Enable USB midi devices
419         
420 endmenu
421 endmenu