xref: /linux/drivers/usb/misc/Kconfig (revision 8be174835f07b2c106b9961c0775486d06112a3c)
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_APPLEDISPLAY
112	tristate "Apple Cinema Display support"
113	select BACKLIGHT_CLASS_DEVICE
114	help
115	  Say Y here if you want to control the backlight of Apple Cinema
116	  Displays over USB. This driver provides a sysfs interface.
117
118config USB_QCOM_EUD
119	tristate "QCOM Embedded USB Debugger(EUD) Driver"
120	depends on ARCH_QCOM || COMPILE_TEST
121	select USB_ROLE_SWITCH
122	help
123	  This module enables support for Qualcomm Technologies, Inc.
124	  Embedded USB Debugger (EUD). The EUD is a control peripheral
125	  which reports VBUS attach/detach events and has USB-based
126	  debug and trace capabilities. On selecting m, the module name
127	  that is built is qcom_eud.ko
128
129config APPLE_MFI_FASTCHARGE
130	tristate "Fast charge control for iOS devices"
131	select POWER_SUPPLY
132	help
133	  Say Y here if you want to control whether iOS devices will
134	  fast charge from the USB interface, as implemented in "MFi"
135	  chargers.
136
137	  It is safe to say M here.
138
139source "drivers/usb/misc/sisusbvga/Kconfig"
140
141config USB_LD
142	tristate "USB LD driver"
143	help
144	  This driver is for generic USB devices that use interrupt transfers,
145	  like LD Didactic's USB devices.
146
147	  To compile this driver as a module, choose M here: the
148	  module will be called ldusb.
149
150config USB_TRANCEVIBRATOR
151	tristate "PlayStation 2 Trance Vibrator driver support"
152	help
153	  Say Y here if you want to connect a PlayStation 2 Trance Vibrator
154	  device to your computer's USB port.
155
156	  To compile this driver as a module, choose M here: the
157	  module will be called trancevibrator.
158
159config USB_IOWARRIOR
160	tristate "IO Warrior driver support"
161	help
162	  Say Y here if you want to support the IO Warrior devices from Code
163	  Mercenaries.  This includes support for the following devices:
164	  	IO Warrior 40
165		IO Warrior 24
166		IO Warrior 56
167		IO Warrior 24 Power Vampire
168
169	  To compile this driver as a module, choose M here: the
170	  module will be called iowarrior.
171
172config USB_TEST
173	tristate "USB testing driver"
174	help
175	  This driver is for testing host controller software.  It is used
176	  with specialized device firmware for regression and stress testing,
177	  to help prevent problems from cropping up with "real" drivers.
178
179	  See <http://www.linux-usb.org/usbtest/> for more information,
180	  including sample test device firmware and "how to use it".
181
182config USB_EHSET_TEST_FIXTURE
183	tristate "USB EHSET Test Fixture driver"
184	help
185	  Say Y here if you want to support the special test fixture device
186	  used for the USB-IF Embedded Host High-Speed Electrical Test procedure.
187
188	  When the test fixture is connected, it can enumerate as one of several
189	  VID/PID pairs. This driver then initiates a corresponding test mode on
190	  the downstream port to which the test fixture is attached.
191
192	  See <http://www.usb.org/developers/onthego/EHSET_v1.01.pdf> for more
193	  information.
194
195config USB_ISIGHTFW
196	tristate "iSight firmware loading support"
197	select FW_LOADER
198	help
199	  This driver loads firmware for USB Apple iSight cameras, allowing
200	  them to be driven by the USB video class driver available at
201	  http://linux-uvc.berlios.de
202
203	  The firmware for this driver must be extracted from the MacOS
204	  driver beforehand. Tools for doing so are available at
205	  http://bersace03.free.fr
206
207config USB_YUREX
208	tristate "USB YUREX driver support"
209	help
210	  Say Y here if you want to connect a YUREX to your computer's
211	  USB port. The YUREX is a leg-shakes sensor. See
212	  <http://bbu.kayac.com/en/> for further information.
213	  This driver supports read/write of leg-shakes counter and
214	  fasync for the counter update via a device file /dev/yurex*.
215
216	  To compile this driver as a module, choose M here: the
217	  module will be called yurex.
218
219config USB_EZUSB_FX2
220	tristate "Functions for loading firmware on EZUSB chips"
221	help
222	  Say Y here if you need EZUSB device support.
223	  (Cypress FX/FX2/FX2LP microcontrollers)
224
225config USB_HUB_USB251XB
226	tristate "USB251XB Hub Controller Configuration Driver"
227	depends on I2C
228	help
229	  This option enables support for configuration via SMBus of the
230	  Microchip USB251x/xBi USB 2.0 Hub Controller series. Configuration
231	  parameters may be set in devicetree or platform data.
232	  Say Y or M here if you need to configure such a device via SMBus.
233
234config USB_HSIC_USB3503
235	tristate "USB3503 HSIC to USB20 Driver"
236	depends on I2C
237	select REGMAP_I2C
238	help
239	  This option enables support for SMSC USB3503 HSIC to USB 2.0 Driver.
240
241config USB_HSIC_USB4604
242	tristate "USB4604 HSIC to USB20 Driver"
243	depends on I2C
244	help
245	  This option enables support for SMSC USB4604 HSIC to USB 2.0 Driver.
246
247config USB_LINK_LAYER_TEST
248	tristate "USB Link Layer Test driver"
249	help
250	  This driver is for generating specific traffic for Super Speed Link
251	  Layer Test Device. Say Y only when you want to conduct USB Super Speed
252	  Link Layer Test for host controllers.
253
254config USB_CHAOSKEY
255	tristate "ChaosKey random number generator driver support"
256	depends on HW_RANDOM
257	help
258	  Say Y here if you want to connect an AltusMetrum ChaosKey or
259	  Araneus Alea I to your computer's USB port. These devices
260	  are hardware random number generators which hook into the
261	  kernel entropy pool to ensure a large supply of entropy for
262	  /dev/random and /dev/urandom and also provides direct access
263	  via /dev/chaoskeyX
264
265	  To compile this driver as a module, choose M here: the
266	  module will be called chaoskey.
267
268config BRCM_USB_PINMAP
269	tristate "Broadcom pinmap driver support"
270	depends on (ARCH_BRCMSTB && PHY_BRCM_USB) || COMPILE_TEST
271	default ARCH_BRCMSTB && PHY_BRCM_USB
272	help
273	  This option enables support for remapping some USB external
274	  signals, which are typically on dedicated pins on the chip,
275	  to any gpio.
276
277config USB_ONBOARD_HUB
278	tristate "Onboard USB hub support"
279	depends on OF
280	help
281	  Say Y here if you want to support discrete onboard USB hubs that
282	  don't require an additional control bus for initialization, but
283	  need some non-trivial form of initialization, such as enabling a
284	  power regulator. An example for such a hub is the Realtek
285	  RTS5411.
286
287	  This driver can be used as a module but its state (module vs
288	  builtin) must match the state of the USB subsystem. Enabling
289	  this config will enable the driver and it will automatically
290	  match the state of the USB subsystem. If this driver is a
291	  module it will be called onboard_usb_hub.
292