xref: /openbmc/linux/drivers/usb/misc/Kconfig (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
1cae8dc3bSGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0
21da177e4SLinus Torvalds#
31da177e4SLinus Torvalds# USB Miscellaneous driver configuration
41da177e4SLinus Torvalds#
51da177e4SLinus Torvaldscomment "USB Miscellaneous drivers"
61da177e4SLinus Torvalds
7*d629c0e2SLukas Bulwahnconfig USB_USS720
8*d629c0e2SLukas Bulwahn	tristate "USS720 parport driver"
9*d629c0e2SLukas Bulwahn	depends on PARPORT
10*d629c0e2SLukas Bulwahn	select PARPORT_NOT_PC
11*d629c0e2SLukas Bulwahn	help
12*d629c0e2SLukas Bulwahn	  This driver is for USB parallel port adapters that use the Lucent
13*d629c0e2SLukas Bulwahn	  Technologies USS-720 chip. These cables are plugged into your USB
14*d629c0e2SLukas Bulwahn	  port and provide USB compatibility to peripherals designed with
15*d629c0e2SLukas Bulwahn	  parallel port interfaces.
16*d629c0e2SLukas Bulwahn
17*d629c0e2SLukas Bulwahn	  The chip has two modes: automatic mode and manual mode. In automatic
18*d629c0e2SLukas Bulwahn	  mode, it looks to the computer like a standard USB printer. Only
19*d629c0e2SLukas Bulwahn	  printers may be connected to the USS-720 in this mode. The generic
20*d629c0e2SLukas Bulwahn	  USB printer driver ("USB Printer support", above) may be used in
21*d629c0e2SLukas Bulwahn	  that mode, and you can say N here if you want to use the chip only
22*d629c0e2SLukas Bulwahn	  in this mode.
23*d629c0e2SLukas Bulwahn
24*d629c0e2SLukas Bulwahn	  Manual mode is not limited to printers, any parallel port
25*d629c0e2SLukas Bulwahn	  device should work. This driver utilizes manual mode.
26*d629c0e2SLukas Bulwahn	  Note however that some operations are three orders of magnitude
27*d629c0e2SLukas Bulwahn	  slower than on a PCI/ISA Parallel Port, so timing critical
28*d629c0e2SLukas Bulwahn	  applications might not work.
29*d629c0e2SLukas Bulwahn
30*d629c0e2SLukas Bulwahn	  Say Y here if you own an USS-720 USB->Parport cable and intend to
31*d629c0e2SLukas Bulwahn	  connect anything other than a printer to it.
32*d629c0e2SLukas Bulwahn
33*d629c0e2SLukas Bulwahn	  To compile this driver as a module, choose M here: the
34*d629c0e2SLukas Bulwahn	  module will be called uss720.
35*d629c0e2SLukas Bulwahn
361da177e4SLinus Torvaldsconfig USB_EMI62
371da177e4SLinus Torvalds	tristate "EMI 6|2m USB Audio interface support"
38a7f7f624SMasahiro Yamada	help
391da177e4SLinus Torvalds	  This driver loads firmware to Emagic EMI 6|2m low latency USB
401da177e4SLinus Torvalds	  Audio and Midi interface.
411da177e4SLinus Torvalds
421da177e4SLinus Torvalds	  After firmware load the device is handled with standard linux
431da177e4SLinus Torvalds	  USB Audio driver.
441da177e4SLinus Torvalds
451da177e4SLinus Torvalds	  This code is also available as a module ( = code which can be
461da177e4SLinus Torvalds	  inserted in and removed from the running kernel whenever you want).
471da177e4SLinus Torvalds	  The module will be called audio. If you want to compile it as a
48cd238effSMauro Carvalho Chehab	  module, say M here and read <file:Documentation/kbuild/modules.rst>.
491da177e4SLinus Torvalds
501da177e4SLinus Torvaldsconfig USB_EMI26
511da177e4SLinus Torvalds	tristate "EMI 2|6 USB Audio interface support"
52a7f7f624SMasahiro Yamada	help
531da177e4SLinus Torvalds	  This driver loads firmware to Emagic EMI 2|6 low latency USB
541da177e4SLinus Torvalds	  Audio interface.
551da177e4SLinus Torvalds
561da177e4SLinus Torvalds	  After firmware load the device is handled with standard linux
571da177e4SLinus Torvalds	  USB Audio driver.
581da177e4SLinus Torvalds
591da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
601da177e4SLinus Torvalds	  module will be called emi26.
611da177e4SLinus Torvalds
6203270634SSteven Haighconfig USB_ADUTUX
63bce62c26SRobert P. J. Day	tristate "ADU devices from Ontrak Control Systems"
6403270634SSteven Haigh	help
6503270634SSteven Haigh	  Say Y if you want to use an ADU device from Ontrak Control
6603270634SSteven Haigh	  Systems.
6703270634SSteven Haigh
6803270634SSteven Haigh	  To compile this driver as a module, choose M here.  The module
6903270634SSteven Haigh	  will be called adutux.
7003270634SSteven Haigh
71eb86be54SHarrison Metzgerconfig USB_SEVSEG
72eb86be54SHarrison Metzger	tristate "USB 7-Segment LED Display"
73eb86be54SHarrison Metzger	help
74eb86be54SHarrison Metzger	  Say Y here if you have a USB 7-Segment Display by Delcom
75eb86be54SHarrison Metzger
76eb86be54SHarrison Metzger	  To compile this driver as a module, choose M here: the
77eb86be54SHarrison Metzger	  module will be called usbsevseg.
78eb86be54SHarrison Metzger
791da177e4SLinus Torvaldsconfig USB_LEGOTOWER
80bce62c26SRobert P. J. Day	tristate "USB Lego Infrared Tower support"
811da177e4SLinus Torvalds	help
821da177e4SLinus Torvalds	  Say Y here if you want to connect a USB Lego Infrared Tower to your
831da177e4SLinus Torvalds	  computer's USB port.
841da177e4SLinus Torvalds
851da177e4SLinus Torvalds	  This code is also available as a module ( = code which can be
861da177e4SLinus Torvalds	  inserted in and removed from the running kernel whenever you want).
871da177e4SLinus Torvalds	  The module will be called legousbtower. If you want to compile it as
881da177e4SLinus Torvalds	  a module, say M here and read
89cd238effSMauro Carvalho Chehab	  <file:Documentation/kbuild/modules.rst>.
901da177e4SLinus Torvalds
911da177e4SLinus Torvaldsconfig USB_LCD
921da177e4SLinus Torvalds	tristate "USB LCD driver support"
931da177e4SLinus Torvalds	help
941da177e4SLinus Torvalds	  Say Y here if you want to connect an USBLCD to your computer's
951da177e4SLinus Torvalds	  USB port. The USBLCD is a small USB interface board for
961da177e4SLinus Torvalds	  alphanumeric LCD modules. See <http://www.usblcd.de/> for more
971da177e4SLinus Torvalds	  information.
981da177e4SLinus Torvalds
991da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1001da177e4SLinus Torvalds	  module will be called usblcd.
1011da177e4SLinus Torvalds
1029189bfc2SOliver Bockconfig USB_CYPRESS_CY7C63
1034255e6f6SOliver Bock	tristate "Cypress CY7C63xxx USB driver support"
1044255e6f6SOliver Bock	help
1054255e6f6SOliver Bock	  Say Y here if you want to connect a Cypress CY7C63xxx
1069189bfc2SOliver Bock	  micro controller to your computer's USB port. Currently this
1079189bfc2SOliver Bock	  driver supports the pre-programmed devices (incl. firmware)
1089189bfc2SOliver Bock	  by AK Modul-Bus Computer GmbH.
1094255e6f6SOliver Bock
110ffeb1e9eSAlexander A. Klimov	  Please see: https://www.ak-modul-bus.de/stat/mikrocontroller.html
1114255e6f6SOliver Bock
1124255e6f6SOliver Bock	  To compile this driver as a module, choose M here: the
1139189bfc2SOliver Bock	  module will be called cypress_cy7c63.
1144255e6f6SOliver Bock
1151da177e4SLinus Torvaldsconfig USB_CYTHERM
1161da177e4SLinus Torvalds	tristate "Cypress USB thermometer driver support"
1171da177e4SLinus Torvalds	help
1181da177e4SLinus Torvalds	  Say Y here if you want to connect a Cypress USB thermometer
1191da177e4SLinus Torvalds	  device to your computer's USB port. This device is also known
1201da177e4SLinus Torvalds	  as the Cypress USB Starter kit or demo board. The Elektor
1211da177e4SLinus Torvalds	  magazine published a modified version of this device in issue
1221da177e4SLinus Torvalds	  #291.
1231da177e4SLinus Torvalds
1241da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1251da177e4SLinus Torvalds	  module will be called cytherm.
1261da177e4SLinus Torvalds
1271da177e4SLinus Torvaldsconfig USB_IDMOUSE
1281da177e4SLinus Torvalds	tristate "Siemens ID USB Mouse Fingerprint sensor support"
1291da177e4SLinus Torvalds	help
1301da177e4SLinus Torvalds	  Say Y here if you want to use the fingerprint sensor on
1311da177e4SLinus Torvalds	  the Siemens ID Mouse. There is also a Siemens ID Mouse
1321da177e4SLinus Torvalds	  _Professional_, which has not been tested with this driver,
1331da177e4SLinus Torvalds	  but uses the same sensor and may therefore work.
1341da177e4SLinus Torvalds
1351da177e4SLinus Torvalds	  This driver creates an entry "/dev/idmouseX" or "/dev/usb/idmouseX",
1361da177e4SLinus Torvalds	  which can be used by, e.g.,"cat /dev/idmouse0 > fingerprint.pnm".
1371da177e4SLinus Torvalds
138ffeb1e9eSAlexander A. Klimov	  See also <https://www.fs.tum.de/~echtler/idmouse/>.
1391da177e4SLinus Torvalds
140069e8a65Sakpm@osdl.orgconfig USB_APPLEDISPLAY
141069e8a65Sakpm@osdl.org	tristate "Apple Cinema Display support"
142069e8a65Sakpm@osdl.org	select BACKLIGHT_CLASS_DEVICE
143069e8a65Sakpm@osdl.org	help
144069e8a65Sakpm@osdl.org	  Say Y here if you want to control the backlight of Apple Cinema
145069e8a65Sakpm@osdl.org	  Displays over USB. This driver provides a sysfs interface.
146069e8a65Sakpm@osdl.org
1479a1bf58cSSouradeep Chowdhuryconfig USB_QCOM_EUD
1489a1bf58cSSouradeep Chowdhury	tristate "QCOM Embedded USB Debugger(EUD) Driver"
149a352fa58SGeert Uytterhoeven	depends on ARCH_QCOM || COMPILE_TEST
1509a1bf58cSSouradeep Chowdhury	select USB_ROLE_SWITCH
1519a1bf58cSSouradeep Chowdhury	help
1529a1bf58cSSouradeep Chowdhury	  This module enables support for Qualcomm Technologies, Inc.
1539a1bf58cSSouradeep Chowdhury	  Embedded USB Debugger (EUD). The EUD is a control peripheral
1549a1bf58cSSouradeep Chowdhury	  which reports VBUS attach/detach events and has USB-based
1559a1bf58cSSouradeep Chowdhury	  debug and trace capabilities. On selecting m, the module name
1569a1bf58cSSouradeep Chowdhury	  that is built is qcom_eud.ko
1579a1bf58cSSouradeep Chowdhury
158249fa821SBastien Noceraconfig APPLE_MFI_FASTCHARGE
159249fa821SBastien Nocera	tristate "Fast charge control for iOS devices"
160249fa821SBastien Nocera	select POWER_SUPPLY
161249fa821SBastien Nocera	help
162249fa821SBastien Nocera	  Say Y here if you want to control whether iOS devices will
163249fa821SBastien Nocera	  fast charge from the USB interface, as implemented in "MFi"
164249fa821SBastien Nocera	  chargers.
165249fa821SBastien Nocera
166249fa821SBastien Nocera	  It is safe to say M here.
167249fa821SBastien Nocera
1681da177e4SLinus Torvaldssource "drivers/usb/misc/sisusbvga/Kconfig"
1691da177e4SLinus Torvalds
1702824bd25SMichael Hundconfig USB_LD
1712824bd25SMichael Hund	tristate "USB LD driver"
1722824bd25SMichael Hund	help
1732824bd25SMichael Hund	  This driver is for generic USB devices that use interrupt transfers,
1742824bd25SMichael Hund	  like LD Didactic's USB devices.
1752824bd25SMichael Hund
1762824bd25SMichael Hund	  To compile this driver as a module, choose M here: the
1772824bd25SMichael Hund	  module will be called ldusb.
1782824bd25SMichael Hund
1799fcde235SGreg Kroah-Hartmanconfig USB_TRANCEVIBRATOR
1809fcde235SGreg Kroah-Hartman	tristate "PlayStation 2 Trance Vibrator driver support"
1819fcde235SGreg Kroah-Hartman	help
1829fcde235SGreg Kroah-Hartman	  Say Y here if you want to connect a PlayStation 2 Trance Vibrator
1839fcde235SGreg Kroah-Hartman	  device to your computer's USB port.
1849fcde235SGreg Kroah-Hartman
1859fcde235SGreg Kroah-Hartman	  To compile this driver as a module, choose M here: the
1869fcde235SGreg Kroah-Hartman	  module will be called trancevibrator.
1879fcde235SGreg Kroah-Hartman
188946b960dSGreg Kroah-Hartmanconfig USB_IOWARRIOR
189946b960dSGreg Kroah-Hartman	tristate "IO Warrior driver support"
190946b960dSGreg Kroah-Hartman	help
191946b960dSGreg Kroah-Hartman	  Say Y here if you want to support the IO Warrior devices from Code
192946b960dSGreg Kroah-Hartman	  Mercenaries.  This includes support for the following devices:
193946b960dSGreg Kroah-Hartman	  	IO Warrior 40
194946b960dSGreg Kroah-Hartman		IO Warrior 24
195946b960dSGreg Kroah-Hartman		IO Warrior 56
196946b960dSGreg Kroah-Hartman		IO Warrior 24 Power Vampire
197946b960dSGreg Kroah-Hartman
198946b960dSGreg Kroah-Hartman	  To compile this driver as a module, choose M here: the
199946b960dSGreg Kroah-Hartman	  module will be called iowarrior.
200946b960dSGreg Kroah-Hartman
2011da177e4SLinus Torvaldsconfig USB_TEST
202bce62c26SRobert P. J. Day	tristate "USB testing driver"
2031da177e4SLinus Torvalds	help
2041da177e4SLinus Torvalds	  This driver is for testing host controller software.  It is used
2051da177e4SLinus Torvalds	  with specialized device firmware for regression and stress testing,
2061da177e4SLinus Torvalds	  to help prevent problems from cropping up with "real" drivers.
2071da177e4SLinus Torvalds
2081da177e4SLinus Torvalds	  See <http://www.linux-usb.org/usbtest/> for more information,
2091da177e4SLinus Torvalds	  including sample test device firmware and "how to use it".
2101da177e4SLinus Torvalds
2111353aa53SManu Gautamconfig USB_EHSET_TEST_FIXTURE
2121353aa53SManu Gautam	tristate "USB EHSET Test Fixture driver"
2131353aa53SManu Gautam	help
2141353aa53SManu Gautam	  Say Y here if you want to support the special test fixture device
2151353aa53SManu Gautam	  used for the USB-IF Embedded Host High-Speed Electrical Test procedure.
2161353aa53SManu Gautam
2171353aa53SManu Gautam	  When the test fixture is connected, it can enumerate as one of several
2181353aa53SManu Gautam	  VID/PID pairs. This driver then initiates a corresponding test mode on
2191353aa53SManu Gautam	  the downstream port to which the test fixture is attached.
2201353aa53SManu Gautam
2211353aa53SManu Gautam	  See <http://www.usb.org/developers/onthego/EHSET_v1.01.pdf> for more
2221353aa53SManu Gautam	  information.
2231353aa53SManu Gautam
22462d104d0SMatthew Garrettconfig USB_ISIGHTFW
22562d104d0SMatthew Garrett	tristate "iSight firmware loading support"
2266460a261SIngo Molnar	select FW_LOADER
22762d104d0SMatthew Garrett	help
22862d104d0SMatthew Garrett	  This driver loads firmware for USB Apple iSight cameras, allowing
22962d104d0SMatthew Garrett	  them to be driven by the USB video class driver available at
23062d104d0SMatthew Garrett	  http://linux-uvc.berlios.de
23162d104d0SMatthew Garrett
23262d104d0SMatthew Garrett	  The firmware for this driver must be extracted from the MacOS
23362d104d0SMatthew Garrett	  driver beforehand. Tools for doing so are available at
23462d104d0SMatthew Garrett	  http://bersace03.free.fr
235cbc30118SStephen Ware
2366bc235a2STomoki Sekiyamaconfig USB_YUREX
2376bc235a2STomoki Sekiyama	tristate "USB YUREX driver support"
2386bc235a2STomoki Sekiyama	help
2396bc235a2STomoki Sekiyama	  Say Y here if you want to connect a YUREX to your computer's
2406bc235a2STomoki Sekiyama	  USB port. The YUREX is a leg-shakes sensor. See
2416bc235a2STomoki Sekiyama	  <http://bbu.kayac.com/en/> for further information.
2426bc235a2STomoki Sekiyama	  This driver supports read/write of leg-shakes counter and
2436bc235a2STomoki Sekiyama	  fasync for the counter update via a device file /dev/yurex*.
2446bc235a2STomoki Sekiyama
2456bc235a2STomoki Sekiyama	  To compile this driver as a module, choose M here: the
2466bc235a2STomoki Sekiyama	  module will be called yurex.
2476bc235a2STomoki Sekiyama
24870c048a2SRene Buergelconfig USB_EZUSB_FX2
24970c048a2SRene Buergel	tristate "Functions for loading firmware on EZUSB chips"
25070c048a2SRene Buergel	help
25170c048a2SRene Buergel	  Say Y here if you need EZUSB device support.
25270c048a2SRene Buergel	  (Cypress FX/FX2/FX2LP microcontrollers)
2536a099c63SDongjin Kim
2543ec72a2aSRichard Leitnerconfig USB_HUB_USB251XB
2553ec72a2aSRichard Leitner	tristate "USB251XB Hub Controller Configuration Driver"
2563ec72a2aSRichard Leitner	depends on I2C
2573ec72a2aSRichard Leitner	help
2583ec72a2aSRichard Leitner	  This option enables support for configuration via SMBus of the
2597fcf5584SSerge Semin	  Microchip USB251x/xBi USB 2.0 Hub Controller series. Configuration
2607fcf5584SSerge Semin	  parameters may be set in devicetree or platform data.
2613ec72a2aSRichard Leitner	  Say Y or M here if you need to configure such a device via SMBus.
2623ec72a2aSRichard Leitner
2636a099c63SDongjin Kimconfig USB_HSIC_USB3503
2646a099c63SDongjin Kim	tristate "USB3503 HSIC to USB20 Driver"
2656a099c63SDongjin Kim	depends on I2C
266eea88512SMatthew Dawson	select REGMAP_I2C
2676a099c63SDongjin Kim	help
2686a099c63SDongjin Kim	  This option enables support for SMSC USB3503 HSIC to USB 2.0 Driver.
269ce21bfe6SPratyush Anand
270740a6a17SStephen Boydconfig USB_HSIC_USB4604
271740a6a17SStephen Boyd	tristate "USB4604 HSIC to USB20 Driver"
272740a6a17SStephen Boyd	depends on I2C
273740a6a17SStephen Boyd	help
274740a6a17SStephen Boyd	  This option enables support for SMSC USB4604 HSIC to USB 2.0 Driver.
275740a6a17SStephen Boyd
276ce21bfe6SPratyush Anandconfig USB_LINK_LAYER_TEST
277ce21bfe6SPratyush Anand	tristate "USB Link Layer Test driver"
278ce21bfe6SPratyush Anand	help
279ce21bfe6SPratyush Anand	  This driver is for generating specific traffic for Super Speed Link
280ce21bfe6SPratyush Anand	  Layer Test Device. Say Y only when you want to conduct USB Super Speed
281ce21bfe6SPratyush Anand	  Link Layer Test for host controllers.
28266e3e591SKeith Packard
28366e3e591SKeith Packardconfig USB_CHAOSKEY
28466e3e591SKeith Packard	tristate "ChaosKey random number generator driver support"
285d9aab404SRandy Dunlap	depends on HW_RANDOM
28666e3e591SKeith Packard	help
287d3ede2dbSBob Ham	  Say Y here if you want to connect an AltusMetrum ChaosKey or
288d3ede2dbSBob Ham	  Araneus Alea I to your computer's USB port. These devices
289d3ede2dbSBob Ham	  are hardware random number generators which hook into the
290d3ede2dbSBob Ham	  kernel entropy pool to ensure a large supply of entropy for
291d3ede2dbSBob Ham	  /dev/random and /dev/urandom and also provides direct access
292d3ede2dbSBob Ham	  via /dev/chaoskeyX
29366e3e591SKeith Packard
29466e3e591SKeith Packard	  To compile this driver as a module, choose M here: the
29566e3e591SKeith Packard	  module will be called chaoskey.
296517c4c44SAl Cooper
297517c4c44SAl Cooperconfig BRCM_USB_PINMAP
298517c4c44SAl Cooper	tristate "Broadcom pinmap driver support"
299517c4c44SAl Cooper	depends on (ARCH_BRCMSTB && PHY_BRCM_USB) || COMPILE_TEST
300517c4c44SAl Cooper	default ARCH_BRCMSTB && PHY_BRCM_USB
301517c4c44SAl Cooper	help
302517c4c44SAl Cooper	  This option enables support for remapping some USB external
303517c4c44SAl Cooper	  signals, which are typically on dedicated pins on the chip,
304517c4c44SAl Cooper	  to any gpio.
3058bc06364SMatthias Kaehlcke
3068bc06364SMatthias Kaehlckeconfig USB_ONBOARD_HUB
3078bc06364SMatthias Kaehlcke	tristate "Onboard USB hub support"
30822683e48SJean Delvare	depends on OF
3098bc06364SMatthias Kaehlcke	help
3108bc06364SMatthias Kaehlcke	  Say Y here if you want to support discrete onboard USB hubs that
3118bc06364SMatthias Kaehlcke	  don't require an additional control bus for initialization, but
3128bc06364SMatthias Kaehlcke	  need some non-trivial form of initialization, such as enabling a
3138bc06364SMatthias Kaehlcke	  power regulator. An example for such a hub is the Realtek
3148bc06364SMatthias Kaehlcke	  RTS5411.
3158bc06364SMatthias Kaehlcke
3168bc06364SMatthias Kaehlcke	  This driver can be used as a module but its state (module vs
3178bc06364SMatthias Kaehlcke	  builtin) must match the state of the USB subsystem. Enabling
3188bc06364SMatthias Kaehlcke	  this config will enable the driver and it will automatically
3198bc06364SMatthias Kaehlcke	  match the state of the USB subsystem. If this driver is a
3208bc06364SMatthias Kaehlcke	  module it will be called onboard_usb_hub.
321