xref: /linux/drivers/usb/misc/Kconfig (revision 213acadd21a080fc8cda8eebe6d14cc2d4ad1332)
1# SPDX-License-Identifier: GPL-2.0
2#
3# USB Miscellaneous driver configuration
4#
5comment "USB Miscellaneous drivers"
6
7config USB_EMI62
8	tristate "EMI 6|2m USB Audio interface support"
9	help
10	  This driver loads firmware to Emagic EMI 6|2m low latency USB
11	  Audio and Midi interface.
12
13	  After firmware load the device is handled with standard linux
14	  USB Audio driver.
15
16	  This code is also available as a module ( = code which can be
17	  inserted in and removed from the running kernel whenever you want).
18	  The module will be called audio. If you want to compile it as a
19	  module, say M here and read <file:Documentation/kbuild/modules.rst>.
20
21config USB_EMI26
22	tristate "EMI 2|6 USB Audio interface support"
23	help
24	  This driver loads firmware to Emagic EMI 2|6 low latency USB
25	  Audio interface.
26
27	  After firmware load the device is handled with standard linux
28	  USB Audio driver.
29
30	  To compile this driver as a module, choose M here: the
31	  module will be called emi26.
32
33config USB_ADUTUX
34	tristate "ADU devices from Ontrak Control Systems"
35	help
36	  Say Y if you want to use an ADU device from Ontrak Control
37	  Systems.
38
39	  To compile this driver as a module, choose M here.  The module
40	  will be called adutux.
41
42config USB_SEVSEG
43	tristate "USB 7-Segment LED Display"
44	help
45	  Say Y here if you have a USB 7-Segment Display by Delcom
46
47	  To compile this driver as a module, choose M here: the
48	  module will be called usbsevseg.
49
50config USB_LEGOTOWER
51	tristate "USB Lego Infrared Tower support"
52	help
53	  Say Y here if you want to connect a USB Lego Infrared Tower to your
54	  computer's USB port.
55
56	  This code is also available as a module ( = code which can be
57	  inserted in and removed from the running kernel whenever you want).
58	  The module will be called legousbtower. If you want to compile it as
59	  a module, say M here and read
60	  <file:Documentation/kbuild/modules.rst>.
61
62config USB_LCD
63	tristate "USB LCD driver support"
64	help
65	  Say Y here if you want to connect an USBLCD to your computer's
66	  USB port. The USBLCD is a small USB interface board for
67	  alphanumeric LCD modules. See <http://www.usblcd.de/> for more
68	  information.
69
70	  To compile this driver as a module, choose M here: the
71	  module will be called usblcd.
72
73config USB_CYPRESS_CY7C63
74	tristate "Cypress CY7C63xxx USB driver support"
75	help
76	  Say Y here if you want to connect a Cypress CY7C63xxx
77	  micro controller to your computer's USB port. Currently this
78	  driver supports the pre-programmed devices (incl. firmware)
79	  by AK Modul-Bus Computer GmbH.
80
81	  Please see: https://www.ak-modul-bus.de/stat/mikrocontroller.html
82
83	  To compile this driver as a module, choose M here: the
84	  module will be called cypress_cy7c63.
85
86config USB_CYTHERM
87	tristate "Cypress USB thermometer driver support"
88	help
89	  Say Y here if you want to connect a Cypress USB thermometer
90	  device to your computer's USB port. This device is also known
91	  as the Cypress USB Starter kit or demo board. The Elektor
92	  magazine published a modified version of this device in issue
93	  #291.
94
95	  To compile this driver as a module, choose M here: the
96	  module will be called cytherm.
97
98config USB_IDMOUSE
99	tristate "Siemens ID USB Mouse Fingerprint sensor support"
100	help
101	  Say Y here if you want to use the fingerprint sensor on
102	  the Siemens ID Mouse. There is also a Siemens ID Mouse
103	  _Professional_, which has not been tested with this driver,
104	  but uses the same sensor and may therefore work.
105
106	  This driver creates an entry "/dev/idmouseX" or "/dev/usb/idmouseX",
107	  which can be used by, e.g.,"cat /dev/idmouse0 > fingerprint.pnm".
108
109	  See also <https://www.fs.tum.de/~echtler/idmouse/>.
110
111config USB_FTDI_ELAN
112	tristate "Elan PCMCIA CardBus Adapter USB Client"
113	help
114	  ELAN's Uxxx series of adapters are USB to PCMCIA CardBus adapters.
115	  Currently only the U132 adapter is available.
116
117	  The U132 is specifically designed for CardBus PC cards that contain
118	  an OHCI host controller. Typical PC cards are the Orange Mobile 3G
119	  Option GlobeTrotter Fusion card. The U132 adapter will *NOT* work
120	  with PC cards that do not contain an OHCI controller. To use a U132
121	  adapter you will need this "ftdi-elan" module as well as the "u132-hcd"
122	  module which is a USB host controller driver that talks to the OHCI
123	  controller within CardBus card that are inserted in the U132 adapter.
124
125	  This driver has been tested with a CardBus OHCI USB adapter, and
126	  worked with a USB PEN Drive inserted into the first USB port of
127	  the PCCARD. A rather pointless thing to do, but useful for testing.
128
129	  It is safe to say M here.
130
131config USB_APPLEDISPLAY
132	tristate "Apple Cinema Display support"
133	select BACKLIGHT_CLASS_DEVICE
134	help
135	  Say Y here if you want to control the backlight of Apple Cinema
136	  Displays over USB. This driver provides a sysfs interface.
137
138config USB_QCOM_EUD
139	tristate "QCOM Embedded USB Debugger(EUD) Driver"
140	depends on ARCH_QCOM || COMPILE_TEST
141	select USB_ROLE_SWITCH
142	help
143	  This module enables support for Qualcomm Technologies, Inc.
144	  Embedded USB Debugger (EUD). The EUD is a control peripheral
145	  which reports VBUS attach/detach events and has USB-based
146	  debug and trace capabilities. On selecting m, the module name
147	  that is built is qcom_eud.ko
148
149config APPLE_MFI_FASTCHARGE
150	tristate "Fast charge control for iOS devices"
151	select POWER_SUPPLY
152	help
153	  Say Y here if you want to control whether iOS devices will
154	  fast charge from the USB interface, as implemented in "MFi"
155	  chargers.
156
157	  It is safe to say M here.
158
159source "drivers/usb/misc/sisusbvga/Kconfig"
160
161config USB_LD
162	tristate "USB LD driver"
163	help
164	  This driver is for generic USB devices that use interrupt transfers,
165	  like LD Didactic's USB devices.
166
167	  To compile this driver as a module, choose M here: the
168	  module will be called ldusb.
169
170config USB_TRANCEVIBRATOR
171	tristate "PlayStation 2 Trance Vibrator driver support"
172	help
173	  Say Y here if you want to connect a PlayStation 2 Trance Vibrator
174	  device to your computer's USB port.
175
176	  To compile this driver as a module, choose M here: the
177	  module will be called trancevibrator.
178
179config USB_IOWARRIOR
180	tristate "IO Warrior driver support"
181	help
182	  Say Y here if you want to support the IO Warrior devices from Code
183	  Mercenaries.  This includes support for the following devices:
184	  	IO Warrior 40
185		IO Warrior 24
186		IO Warrior 56
187		IO Warrior 24 Power Vampire
188
189	  To compile this driver as a module, choose M here: the
190	  module will be called iowarrior.
191
192config USB_TEST
193	tristate "USB testing driver"
194	help
195	  This driver is for testing host controller software.  It is used
196	  with specialized device firmware for regression and stress testing,
197	  to help prevent problems from cropping up with "real" drivers.
198
199	  See <http://www.linux-usb.org/usbtest/> for more information,
200	  including sample test device firmware and "how to use it".
201
202config USB_EHSET_TEST_FIXTURE
203	tristate "USB EHSET Test Fixture driver"
204	help
205	  Say Y here if you want to support the special test fixture device
206	  used for the USB-IF Embedded Host High-Speed Electrical Test procedure.
207
208	  When the test fixture is connected, it can enumerate as one of several
209	  VID/PID pairs. This driver then initiates a corresponding test mode on
210	  the downstream port to which the test fixture is attached.
211
212	  See <http://www.usb.org/developers/onthego/EHSET_v1.01.pdf> for more
213	  information.
214
215config USB_ISIGHTFW
216	tristate "iSight firmware loading support"
217	select FW_LOADER
218	help
219	  This driver loads firmware for USB Apple iSight cameras, allowing
220	  them to be driven by the USB video class driver available at
221	  http://linux-uvc.berlios.de
222
223	  The firmware for this driver must be extracted from the MacOS
224	  driver beforehand. Tools for doing so are available at
225	  http://bersace03.free.fr
226
227config USB_YUREX
228	tristate "USB YUREX driver support"
229	help
230	  Say Y here if you want to connect a YUREX to your computer's
231	  USB port. The YUREX is a leg-shakes sensor. See
232	  <http://bbu.kayac.com/en/> for further information.
233	  This driver supports read/write of leg-shakes counter and
234	  fasync for the counter update via a device file /dev/yurex*.
235
236	  To compile this driver as a module, choose M here: the
237	  module will be called yurex.
238
239config USB_EZUSB_FX2
240	tristate "Functions for loading firmware on EZUSB chips"
241	help
242	  Say Y here if you need EZUSB device support.
243	  (Cypress FX/FX2/FX2LP microcontrollers)
244
245config USB_HUB_USB251XB
246	tristate "USB251XB Hub Controller Configuration Driver"
247	depends on I2C
248	help
249	  This option enables support for configuration via SMBus of the
250	  Microchip USB251x/xBi USB 2.0 Hub Controller series. Configuration
251	  parameters may be set in devicetree or platform data.
252	  Say Y or M here if you need to configure such a device via SMBus.
253
254config USB_HSIC_USB3503
255	tristate "USB3503 HSIC to USB20 Driver"
256	depends on I2C
257	select REGMAP_I2C
258	help
259	  This option enables support for SMSC USB3503 HSIC to USB 2.0 Driver.
260
261config USB_HSIC_USB4604
262	tristate "USB4604 HSIC to USB20 Driver"
263	depends on I2C
264	help
265	  This option enables support for SMSC USB4604 HSIC to USB 2.0 Driver.
266
267config USB_LINK_LAYER_TEST
268	tristate "USB Link Layer Test driver"
269	help
270	  This driver is for generating specific traffic for Super Speed Link
271	  Layer Test Device. Say Y only when you want to conduct USB Super Speed
272	  Link Layer Test for host controllers.
273
274config USB_CHAOSKEY
275	tristate "ChaosKey random number generator driver support"
276	depends on HW_RANDOM
277	help
278	  Say Y here if you want to connect an AltusMetrum ChaosKey or
279	  Araneus Alea I to your computer's USB port. These devices
280	  are hardware random number generators which hook into the
281	  kernel entropy pool to ensure a large supply of entropy for
282	  /dev/random and /dev/urandom and also provides direct access
283	  via /dev/chaoskeyX
284
285	  To compile this driver as a module, choose M here: the
286	  module will be called chaoskey.
287
288config BRCM_USB_PINMAP
289	tristate "Broadcom pinmap driver support"
290	depends on (ARCH_BRCMSTB && PHY_BRCM_USB) || COMPILE_TEST
291	default ARCH_BRCMSTB && PHY_BRCM_USB
292	help
293	  This option enables support for remapping some USB external
294	  signals, which are typically on dedicated pins on the chip,
295	  to any gpio.
296
297config USB_ONBOARD_HUB
298	tristate "Onboard USB hub support"
299	depends on OF
300	help
301	  Say Y here if you want to support discrete onboard USB hubs that
302	  don't require an additional control bus for initialization, but
303	  need some non-trivial form of initialization, such as enabling a
304	  power regulator. An example for such a hub is the Realtek
305	  RTS5411.
306
307	  This driver can be used as a module but its state (module vs
308	  builtin) must match the state of the USB subsystem. Enabling
309	  this config will enable the driver and it will automatically
310	  match the state of the USB subsystem. If this driver is a
311	  module it will be called onboard_usb_hub.
312