1 # This file is part of the OpenADK project. OpenADK is copyrighted
2 # material, please see the LICENCE file in the top-level directory.
5 depends on ADK_TARGET_WITH_USB \
6 || ADK_TARGET_SYSTEM_QEMU_X86_64 \
7 || ADK_TARGET_SYSTEM_QEMU_X86 \
10 config ADK_LINUX_KERNEL_USB_SUPPORT
13 config ADK_LINUX_KERNEL_USB_DEVICE_CLASS
16 config ADK_LINUX_KERNEL_USB_ANNOUNCE_NEW_DEVICES
19 config ADK_LINUX_KERNEL_USB_EHCI_ROOT_HUB_TT
22 config ADK_LINUX_KERNEL_USB_EHCI_TT_NEWSCHED
25 config ADK_LINUX_KERNEL_USB_EHCI_MXC
28 config ADK_LINUX_KERNEL_USB_GADGET
31 config ADK_LINUX_KERNEL_USB_PHY
34 config ADK_LINUX_KERNEL_USB_MXS_PHY
36 select ADK_LINUX_KERNEL_USB_PHY
37 default m if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
40 config ADK_LINUX_KERNEL_USB_OHCI_HCD_PLATFORM
42 select ADK_LINUX_KERNEL_USB_OHCI_HCD
44 config ADK_LINUX_KERNEL_USB_OHCI_HCD_PCI
47 config ADK_LINUX_KERNEL_USB_LIBUSUAL
50 config ADK_LINUX_KERNEL_USB_NET_DRIVERS
53 config ADK_LINUX_KERNEL_USB_USBNET
54 select ADK_LINUX_KERNEL_USB_NET_DRIVERS
57 config ADK_LINUX_KERNEL_USB
58 tristate "USB support"
59 select ADK_LINUX_KERNEL_NLS
60 select ADK_LINUX_KERNEL_USB_SUPPORT
61 select ADK_LINUX_KERNEL_USB_ANNOUNCE_NEW_DEVICES
62 default m if ADK_TARGET_SYSTEM_PCENGINES_APU
63 default m if ADK_TARGET_SYSTEM_PCENGINES_ALIX
64 default m if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
65 default m if ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
66 default m if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
67 default y if ADK_TARGET_SYSTEM_KINETIS_K70
68 default y if ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG
71 Universal Serial Bus (USB) is a specification for a serial bus
72 subsystem which offers higher speeds and more features than the
73 traditional PC serial port. The bus supplies power to peripherals
74 and allows for hot swapping. Up to 127 USB peripherals can be
75 connected to a single USB host in a tree structure.
77 The USB host is the root of the tree, the peripherals are the
78 leaves and the inner nodes are special USB devices called hubs.
79 Most PCs now have USB host ports, used to connect peripherals
80 such as scanners, keyboards, mice, modems, cameras, disks,
81 flash memory, network links, and printers to the PC.
83 Say Y here if your computer has a host-side USB port and you want
84 to use USB devices. You then need to say Y to at least one of the
85 Host Controller Driver (HCD) options below. Choose a USB 1.1
86 controller, such as "UHCI HCD support" or "OHCI HCD support",
87 and "EHCI HCD (USB 2.0) support" except for older systems that
88 do not have USB 2.0 support. It doesn't normally hurt to select
89 them all if you are not certain.
91 If your system has a device-side USB port, used in the peripheral
92 side of the USB protocol, see the "USB Gadget" framework instead.
94 After choosing your HCD, then select drivers for the USB peripherals
95 you'll be using. You may want to check out the information provided
96 in <file:Documentation/usb/> and especially the links given in
97 <file:Documentation/usb/usb-help.txt>.
99 menu "USB controller support"
101 config ADK_LINUX_KERNEL_USB_EHCI_HCD
102 tristate "Support for USB EHCI 2.0 controllers"
103 select ADK_LINUX_KERNEL_USB_MXS_PHY if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
104 select ADK_LINUX_KERNEL_USB_EHCI_MXC if ADK_TARGET_SYSTEM_KINETIS_K70
105 select ADK_LINUX_KERNEL_USB_DEVICE_CLASS if ADK_TARGET_SYSTEM_KINETIS_K70
106 depends on !ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
107 depends on !ADK_TARGET_BOARD_BCM28XX
108 depends on ADK_LINUX_KERNEL_USB
109 default m if ADK_TARGET_SYSTEM_PCENGINES_APU
110 default m if ADK_TARGET_SYSTEM_PCENGINES_ALIX
111 default m if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
112 default m if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
113 default y if ADK_TARGET_SYSTEM_KINETIS_K70
114 default y if ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG
117 The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0
118 "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware.
119 If your USB host controller supports USB 2.0, you will likely want to
120 configure this Host Controller Driver. At the time of this writing,
121 the primary implementation of EHCI is a chip from NEC, widely available
122 in add-on PCI cards, but implementations are in the works from other
123 vendors including Intel and Philips. Motherboard support is appearing.
125 EHCI controllers are packaged with "companion" host controllers (OHCI
126 or UHCI) to handle USB 1.1 devices connected to root hub ports. Ports
127 will connect to EHCI if the device is high speed, otherwise they
128 connect to a companion controller. If you configure EHCI, you should
129 probably configure the OHCI (for NEC and some other vendors) USB Host
130 Controller Driver or UHCI (for Via motherboards) Host Controller
133 You may want to read <file:Documentation/usb/ehci.txt>.
135 config ADK_LINUX_KERNEL_USB_UHCI_HCD
136 tristate "Support for UHCI controllers"
137 depends on ADK_LINUX_KERNEL_USB
138 depends on !ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
139 depends on !ADK_TARGET_BOARD_BCM28XX
140 default m if ADK_TARGET_SYSTEM_PCENGINES_APU
141 default m if ADK_TARGET_SYSTEM_PCENGINES_ALIX
142 default m if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
145 The Universal Host Controller Interface is a standard by Intel for
146 accessing the USB hardware in the PC (which is also called the USB
147 host controller). If your USB host controller conforms to this
148 standard, you may want to say Y, but see below. All recent boards
149 with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX,
150 i810, i820) conform to this standard. Also all VIA PCI chipsets
151 (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro
152 133). If unsure, say Y.
154 config ADK_LINUX_KERNEL_USB_OHCI_HCD
155 tristate "Support for OHCI controllers"
156 depends on ADK_LINUX_KERNEL_USB
157 depends on !ADK_TARGET_BOARD_BCM28XX
158 select ADK_LINUX_KERNEL_USB_OHCI_HCD_PCI if ADK_TARGET_SYSTEM_PCENGINES_ALIX
159 select ADK_LINUX_KERNEL_USB_OHCI_HCD_PCI if ADK_TARGET_SYSTEM_PCENGINES_APU
160 default m if ADK_TARGET_SYSTEM_PCENGINES_APU
161 default m if ADK_TARGET_SYSTEM_PCENGINES_ALIX
162 default m if ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
163 default m if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
166 The Open Host Controller Interface (OHCI) is a standard for accessing
167 USB 1.1 host controller hardware. It does more in hardware than Intel's
168 UHCI specification. If your USB host controller follows the OHCI spec,
169 say Y. On most non-x86 systems, and on x86 hardware that's not using a
170 USB controller from Intel or VIA, this is appropriate. If your host
171 controller doesn't use PCI, this is probably appropriate. For a PCI
172 based system where you're not sure, the "lspci -v" entry will list the
173 right "prog-if" for your USB controller(s): EHCI, OHCI, or UHCI.
175 config ADK_LINUX_KERNEL_USB_DWCOTG
176 bool "Support for DWCOTG controller"
177 select ADK_LINUX_KERNEL_USB
178 select ADK_LINUX_KERNEL_FIQ
179 depends on ADK_TARGET_BOARD_BCM28XX
180 default y if ADK_TARGET_BOARD_BCM28XX
183 The Synopsis DWC controller is a dual-role
184 host/peripheral/OTG ("On The Go") USB controllers.
186 config ADK_LINUX_KERNEL_USB_CHIPIDEA_UDC
189 config ADK_LINUX_KERNEL_USB_CHIPIDEA_HOST
192 config ADK_LINUX_KERNEL_USB_CHIPIDEA
193 tristate "Support for ChipIdea controller"
194 select ADK_LINUX_KERNEL_USB_CHIPIDEA_UDC
195 select ADK_LINUX_KERNEL_USB_CHIPIDEA_HOST
196 select ADK_LINUX_KERNEL_USB_GADGET
197 depends on ADK_LINUX_KERNEL_USB_EHCI_HCD
198 depends on ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
199 default m if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
202 config ADK_LINUX_KERNEL_USB_ISP116X_HCD
203 tristate "Support for ISP116X"
204 depends on ADK_LINUX_KERNEL_USB
205 depends on !ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
206 depends on !ADK_TARGET_BOARD_BCM28XX
208 The ISP1160 and ISP1161 chips are USB host controllers. Enable this
209 option if your board has this chip. If unsure, say N.
211 This driver does not support isochronous transfers.
213 config ADK_LINUX_KERNEL_USB_SL811_HCD
214 tristate "Support for SL811HS"
215 depends on ADK_LINUX_KERNEL_USB
216 depends on !ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20
217 depends on !ADK_TARGET_BOARD_BCM28XX
220 The SL811HS is a single-port USB controller that supports either
221 host side or peripheral side roles. Enable this option if your
222 board has this chip, and you want to use it as a host controller.
227 menu "USB devices support"
229 config ADK_LINUX_KERNEL_USB_STORAGE
230 tristate "Support for USB storage devices"
231 select ADK_LINUX_KERNEL_SCSI
232 select ADK_LINUX_KERNEL_BLK_DEV_SD
234 config ADK_LINUX_KERNEL_SND_USB_AUDIO
235 tristate "Support for USB sound adapter"
236 select ADK_LINUX_KERNEL_SND
237 select ADK_LINUX_KERNEL_SND_USB
238 select ADK_LINUX_KERNEL_SND_RAWMIDI
240 config ADK_LINUX_KERNEL_USB_HSO
241 tristate "Support for USB HSO devices"
242 select ADK_LINUX_KERNEL_RFKILL
243 select ADK_LINUX_KERNEL_USB_STORAGE
245 config ADK_LINUX_KERNEL_USB_PRINTER
246 tristate "Support for USB printers"
248 config ADK_LINUX_KERNEL_USB_ACM
249 tristate "Support for USB modems/isdn controllers"
251 config ADK_LINUX_KERNEL_USB_PEGASUS
252 tristate "Support for USB Pegasus network cards"
253 select ADK_LINUX_KERNEL_USB_NET_DRIVERS
255 config ADK_LINUX_KERNEL_USB_SERIAL
256 tristate "Support for USB-to-serial converters"
258 Say Y here if you have a USB device that provides normal serial
259 ports, or acts like a serial device, and you want to connect it to
262 Please read <file:Documentation/usb/usb-serial.txt> for more
263 information on the specifics of the different devices that are
264 supported, and on how to use them.
266 config ADK_LINUX_KERNEL_USB_SERIAL_BELKIN
267 tristate "Support for Belkin USB-to-serial converters"
268 depends on ADK_LINUX_KERNEL_USB_SERIAL
270 Say Y here if you want to use a Belkin USB Serial single port
271 adaptor (F5U103 is one of the model numbers) or the Peracom single
272 port USB to serial adapter.
274 config ADK_LINUX_KERNEL_USB_SERIAL_FTDI_SIO
275 tristate "Support for FTDI USB-to-serial converter"
276 depends on ADK_LINUX_KERNEL_USB_SERIAL
278 Say Y here if you want to use a FTDI SIO single port USB to serial
279 converter device. The implementation I have is called the USC-1000.
280 This driver has also be tested with the 245 and 232 devices.
282 See <http://ftdi-usb-sio.sourceforge.net/> for more
283 information on this driver and the device.
285 config ADK_LINUX_KERNEL_USB_SERIAL_MCT_U232
286 tristate "Support for Magic Control Technology USB-to-Serial converters"
287 depends on ADK_LINUX_KERNEL_USB_SERIAL
289 Say Y here if you want to use a USB Serial single port adapter from
290 Magic Control Technology Corp. (U232 is one of the model numbers).
292 This driver also works with Sitecom U232-P25 and D-Link DU-H3SP USB
293 BAY, Belkin F5U109, and Belkin F5U409 devices.
295 config ADK_LINUX_KERNEL_USB_SERIAL_PL2303
296 tristate "Support for Prolific PL2303 USB-to-Serial converters"
297 depends on ADK_LINUX_KERNEL_USB_SERIAL
299 Say Y here if you want to use the PL2303 USB Serial single port
300 adapter from Prolific.
302 config ADK_LINUX_KERNEL_USB_SERIAL_VISOR
303 tristate "Support for Handspring Visor / Palm m50x / Sony Clie Driver"
304 depends on ADK_LINUX_KERNEL_USB_SERIAL
306 Say Y here if you want to connect to your HandSpring Visor, Palm
307 m500 or m505 through its USB docking station. See
308 <http://usbvisor.sourceforge.net/> for more information on using this
311 config ADK_LINUX_KERNEL_USB_SERIAL_SIERRAWIRELESS
312 tristate "Support for Sierra Wireless USB-to-Serial converters"
313 depends on ADK_LINUX_KERNEL_USB_SERIAL
315 config ADK_LINUX_KERNEL_USB_SERIAL_OPTION
316 tristate "USB driver for GSM and CDMA modems"
317 depends on ADK_LINUX_KERNEL_USB_SERIAL
319 Say Y here if you have a GSM or CDMA modem that's connected to USB.
321 config ADK_LINUX_KERNEL_USB_SERIAL_WWAN
323 depends on ADK_LINUX_KERNEL_USB_SERIAL
325 config ADK_LINUX_KERNEL_USB_ATM
326 tristate "Support for USB ATM devices"
328 config ADK_LINUX_KERNEL_USB_ATM_SPEEDTOUCH
329 tristate "Support for USB Speedtouch ADSL modem"
330 depends on ADK_LINUX_KERNEL_USB_ATM
332 config ADK_LINUX_KERNEL_USB_SISUSBVGA
333 tristate "USB 2.0 SVGA dongle support (Net2280/SiS315)"
335 config ADK_LINUX_KERNEL_USB_NET_QMI_WWAN
336 tristate "Qualcomm LTE modems"
337 select ADK_LINUX_KERNEL_USB_USBNET
340 config ADK_LINUX_KERNEL_USB_SIERRA_NET
341 tristate "Sierra Wireless MC8775 PCI Express"
342 select ADK_LINUX_KERNEL_USB_USBNET
344 Driver for WWAN modem Sierra Wireless MC8775 PCI Express
347 config ADK_LINUX_KERNEL_SND_USB
349 depends on ADK_LINUX_KERNEL_USB
351 config ADK_LINUX_KERNEL_SND_USB_AUDIO
354 config ADK_LINUX_KERNEL_USB_GADGET
357 config ADK_LINUX_KERNEL_USB_AUDIO
360 config ADK_LINUX_KERNEL_USB_MIDI_GADGET
361 tristate "USB Midi Gadgets"
362 select ADK_LINUX_KERNEL_USB_GADGET
363 select ADK_LINUX_KERNEL_USB_AUDIO
364 select ADK_LINUX_KERNEL_SND_USB_AUDIO
365 select ADK_LINUX_KERNEL_SND_USB
367 Enable USB midi devices