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