xref: /linux/drivers/usb/misc/Kconfig (revision 22683e480b370ad1b3a34cfa461028d1f51da12d)
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
71da177e4SLinus Torvaldsconfig USB_EMI62
81da177e4SLinus Torvalds	tristate "EMI 6|2m USB Audio interface support"
9a7f7f624SMasahiro Yamada	help
101da177e4SLinus Torvalds	  This driver loads firmware to Emagic EMI 6|2m low latency USB
111da177e4SLinus Torvalds	  Audio and Midi interface.
121da177e4SLinus Torvalds
131da177e4SLinus Torvalds	  After firmware load the device is handled with standard linux
141da177e4SLinus Torvalds	  USB Audio driver.
151da177e4SLinus Torvalds
161da177e4SLinus Torvalds	  This code is also available as a module ( = code which can be
171da177e4SLinus Torvalds	  inserted in and removed from the running kernel whenever you want).
181da177e4SLinus Torvalds	  The module will be called audio. If you want to compile it as a
19cd238effSMauro Carvalho Chehab	  module, say M here and read <file:Documentation/kbuild/modules.rst>.
201da177e4SLinus Torvalds
211da177e4SLinus Torvaldsconfig USB_EMI26
221da177e4SLinus Torvalds	tristate "EMI 2|6 USB Audio interface support"
23a7f7f624SMasahiro Yamada	help
241da177e4SLinus Torvalds	  This driver loads firmware to Emagic EMI 2|6 low latency USB
251da177e4SLinus Torvalds	  Audio interface.
261da177e4SLinus Torvalds
271da177e4SLinus Torvalds	  After firmware load the device is handled with standard linux
281da177e4SLinus Torvalds	  USB Audio driver.
291da177e4SLinus Torvalds
301da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
311da177e4SLinus Torvalds	  module will be called emi26.
321da177e4SLinus Torvalds
3303270634SSteven Haighconfig USB_ADUTUX
34bce62c26SRobert P. J. Day	tristate "ADU devices from Ontrak Control Systems"
3503270634SSteven Haigh	help
3603270634SSteven Haigh	  Say Y if you want to use an ADU device from Ontrak Control
3703270634SSteven Haigh	  Systems.
3803270634SSteven Haigh
3903270634SSteven Haigh	  To compile this driver as a module, choose M here.  The module
4003270634SSteven Haigh	  will be called adutux.
4103270634SSteven Haigh
42eb86be54SHarrison Metzgerconfig USB_SEVSEG
43eb86be54SHarrison Metzger	tristate "USB 7-Segment LED Display"
44eb86be54SHarrison Metzger	help
45eb86be54SHarrison Metzger	  Say Y here if you have a USB 7-Segment Display by Delcom
46eb86be54SHarrison Metzger
47eb86be54SHarrison Metzger	  To compile this driver as a module, choose M here: the
48eb86be54SHarrison Metzger	  module will be called usbsevseg.
49eb86be54SHarrison Metzger
501da177e4SLinus Torvaldsconfig USB_LEGOTOWER
51bce62c26SRobert P. J. Day	tristate "USB Lego Infrared Tower support"
521da177e4SLinus Torvalds	help
531da177e4SLinus Torvalds	  Say Y here if you want to connect a USB Lego Infrared Tower to your
541da177e4SLinus Torvalds	  computer's USB port.
551da177e4SLinus Torvalds
561da177e4SLinus Torvalds	  This code is also available as a module ( = code which can be
571da177e4SLinus Torvalds	  inserted in and removed from the running kernel whenever you want).
581da177e4SLinus Torvalds	  The module will be called legousbtower. If you want to compile it as
591da177e4SLinus Torvalds	  a module, say M here and read
60cd238effSMauro Carvalho Chehab	  <file:Documentation/kbuild/modules.rst>.
611da177e4SLinus Torvalds
621da177e4SLinus Torvaldsconfig USB_LCD
631da177e4SLinus Torvalds	tristate "USB LCD driver support"
641da177e4SLinus Torvalds	help
651da177e4SLinus Torvalds	  Say Y here if you want to connect an USBLCD to your computer's
661da177e4SLinus Torvalds	  USB port. The USBLCD is a small USB interface board for
671da177e4SLinus Torvalds	  alphanumeric LCD modules. See <http://www.usblcd.de/> for more
681da177e4SLinus Torvalds	  information.
691da177e4SLinus Torvalds
701da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
711da177e4SLinus Torvalds	  module will be called usblcd.
721da177e4SLinus Torvalds
739189bfc2SOliver Bockconfig USB_CYPRESS_CY7C63
744255e6f6SOliver Bock	tristate "Cypress CY7C63xxx USB driver support"
754255e6f6SOliver Bock	help
764255e6f6SOliver Bock	  Say Y here if you want to connect a Cypress CY7C63xxx
779189bfc2SOliver Bock	  micro controller to your computer's USB port. Currently this
789189bfc2SOliver Bock	  driver supports the pre-programmed devices (incl. firmware)
799189bfc2SOliver Bock	  by AK Modul-Bus Computer GmbH.
804255e6f6SOliver Bock
81ffeb1e9eSAlexander A. Klimov	  Please see: https://www.ak-modul-bus.de/stat/mikrocontroller.html
824255e6f6SOliver Bock
834255e6f6SOliver Bock	  To compile this driver as a module, choose M here: the
849189bfc2SOliver Bock	  module will be called cypress_cy7c63.
854255e6f6SOliver Bock
861da177e4SLinus Torvaldsconfig USB_CYTHERM
871da177e4SLinus Torvalds	tristate "Cypress USB thermometer driver support"
881da177e4SLinus Torvalds	help
891da177e4SLinus Torvalds	  Say Y here if you want to connect a Cypress USB thermometer
901da177e4SLinus Torvalds	  device to your computer's USB port. This device is also known
911da177e4SLinus Torvalds	  as the Cypress USB Starter kit or demo board. The Elektor
921da177e4SLinus Torvalds	  magazine published a modified version of this device in issue
931da177e4SLinus Torvalds	  #291.
941da177e4SLinus Torvalds
951da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
961da177e4SLinus Torvalds	  module will be called cytherm.
971da177e4SLinus Torvalds
981da177e4SLinus Torvaldsconfig USB_IDMOUSE
991da177e4SLinus Torvalds	tristate "Siemens ID USB Mouse Fingerprint sensor support"
1001da177e4SLinus Torvalds	help
1011da177e4SLinus Torvalds	  Say Y here if you want to use the fingerprint sensor on
1021da177e4SLinus Torvalds	  the Siemens ID Mouse. There is also a Siemens ID Mouse
1031da177e4SLinus Torvalds	  _Professional_, which has not been tested with this driver,
1041da177e4SLinus Torvalds	  but uses the same sensor and may therefore work.
1051da177e4SLinus Torvalds
1061da177e4SLinus Torvalds	  This driver creates an entry "/dev/idmouseX" or "/dev/usb/idmouseX",
1071da177e4SLinus Torvalds	  which can be used by, e.g.,"cat /dev/idmouse0 > fingerprint.pnm".
1081da177e4SLinus Torvalds
109ffeb1e9eSAlexander A. Klimov	  See also <https://www.fs.tum.de/~echtler/idmouse/>.
1101da177e4SLinus Torvalds
111a5c66e4bSTony Olechconfig USB_FTDI_ELAN
112a5c66e4bSTony Olech	tristate "Elan PCMCIA CardBus Adapter USB Client"
113a5c66e4bSTony Olech	help
114a5c66e4bSTony Olech	  ELAN's Uxxx series of adapters are USB to PCMCIA CardBus adapters.
115a5c66e4bSTony Olech	  Currently only the U132 adapter is available.
116a5c66e4bSTony Olech
117a5c66e4bSTony Olech	  The U132 is specifically designed for CardBus PC cards that contain
118a5c66e4bSTony Olech	  an OHCI host controller. Typical PC cards are the Orange Mobile 3G
119a5c66e4bSTony Olech	  Option GlobeTrotter Fusion card. The U132 adapter will *NOT* work
120a5c66e4bSTony Olech	  with PC cards that do not contain an OHCI controller. To use a U132
121a5c66e4bSTony Olech	  adapter you will need this "ftdi-elan" module as well as the "u132-hcd"
122a5c66e4bSTony Olech	  module which is a USB host controller driver that talks to the OHCI
123a5c66e4bSTony Olech	  controller within CardBus card that are inserted in the U132 adapter.
124a5c66e4bSTony Olech
125a5c66e4bSTony Olech	  This driver has been tested with a CardBus OHCI USB adapter, and
126a5c66e4bSTony Olech	  worked with a USB PEN Drive inserted into the first USB port of
127a5c66e4bSTony Olech	  the PCCARD. A rather pointless thing to do, but useful for testing.
128a5c66e4bSTony Olech
129a5c66e4bSTony Olech	  See also the USB_U132_HCD entry "Elan U132 Adapter Host Controller"
130a5c66e4bSTony Olech
131a5c66e4bSTony Olech	  It is safe to say M here.
132a5c66e4bSTony Olech
133069e8a65Sakpm@osdl.orgconfig USB_APPLEDISPLAY
134069e8a65Sakpm@osdl.org	tristate "Apple Cinema Display support"
135069e8a65Sakpm@osdl.org	select BACKLIGHT_CLASS_DEVICE
136069e8a65Sakpm@osdl.org	help
137069e8a65Sakpm@osdl.org	  Say Y here if you want to control the backlight of Apple Cinema
138069e8a65Sakpm@osdl.org	  Displays over USB. This driver provides a sysfs interface.
139069e8a65Sakpm@osdl.org
1409a1bf58cSSouradeep Chowdhuryconfig USB_QCOM_EUD
1419a1bf58cSSouradeep Chowdhury	tristate "QCOM Embedded USB Debugger(EUD) Driver"
142a352fa58SGeert Uytterhoeven	depends on ARCH_QCOM || COMPILE_TEST
1439a1bf58cSSouradeep Chowdhury	select USB_ROLE_SWITCH
1449a1bf58cSSouradeep Chowdhury	help
1459a1bf58cSSouradeep Chowdhury	  This module enables support for Qualcomm Technologies, Inc.
1469a1bf58cSSouradeep Chowdhury	  Embedded USB Debugger (EUD). The EUD is a control peripheral
1479a1bf58cSSouradeep Chowdhury	  which reports VBUS attach/detach events and has USB-based
1489a1bf58cSSouradeep Chowdhury	  debug and trace capabilities. On selecting m, the module name
1499a1bf58cSSouradeep Chowdhury	  that is built is qcom_eud.ko
1509a1bf58cSSouradeep Chowdhury
151249fa821SBastien Noceraconfig APPLE_MFI_FASTCHARGE
152249fa821SBastien Nocera	tristate "Fast charge control for iOS devices"
153249fa821SBastien Nocera	select POWER_SUPPLY
154249fa821SBastien Nocera	help
155249fa821SBastien Nocera	  Say Y here if you want to control whether iOS devices will
156249fa821SBastien Nocera	  fast charge from the USB interface, as implemented in "MFi"
157249fa821SBastien Nocera	  chargers.
158249fa821SBastien Nocera
159249fa821SBastien Nocera	  It is safe to say M here.
160249fa821SBastien Nocera
1611da177e4SLinus Torvaldssource "drivers/usb/misc/sisusbvga/Kconfig"
1621da177e4SLinus Torvalds
1632824bd25SMichael Hundconfig USB_LD
1642824bd25SMichael Hund	tristate "USB LD driver"
1652824bd25SMichael Hund	help
1662824bd25SMichael Hund	  This driver is for generic USB devices that use interrupt transfers,
1672824bd25SMichael Hund	  like LD Didactic's USB devices.
1682824bd25SMichael Hund
1692824bd25SMichael Hund	  To compile this driver as a module, choose M here: the
1702824bd25SMichael Hund	  module will be called ldusb.
1712824bd25SMichael Hund
1729fcde235SGreg Kroah-Hartmanconfig USB_TRANCEVIBRATOR
1739fcde235SGreg Kroah-Hartman	tristate "PlayStation 2 Trance Vibrator driver support"
1749fcde235SGreg Kroah-Hartman	help
1759fcde235SGreg Kroah-Hartman	  Say Y here if you want to connect a PlayStation 2 Trance Vibrator
1769fcde235SGreg Kroah-Hartman	  device to your computer's USB port.
1779fcde235SGreg Kroah-Hartman
1789fcde235SGreg Kroah-Hartman	  To compile this driver as a module, choose M here: the
1799fcde235SGreg Kroah-Hartman	  module will be called trancevibrator.
1809fcde235SGreg Kroah-Hartman
181946b960dSGreg Kroah-Hartmanconfig USB_IOWARRIOR
182946b960dSGreg Kroah-Hartman	tristate "IO Warrior driver support"
183946b960dSGreg Kroah-Hartman	help
184946b960dSGreg Kroah-Hartman	  Say Y here if you want to support the IO Warrior devices from Code
185946b960dSGreg Kroah-Hartman	  Mercenaries.  This includes support for the following devices:
186946b960dSGreg Kroah-Hartman	  	IO Warrior 40
187946b960dSGreg Kroah-Hartman		IO Warrior 24
188946b960dSGreg Kroah-Hartman		IO Warrior 56
189946b960dSGreg Kroah-Hartman		IO Warrior 24 Power Vampire
190946b960dSGreg Kroah-Hartman
191946b960dSGreg Kroah-Hartman	  To compile this driver as a module, choose M here: the
192946b960dSGreg Kroah-Hartman	  module will be called iowarrior.
193946b960dSGreg Kroah-Hartman
1941da177e4SLinus Torvaldsconfig USB_TEST
195bce62c26SRobert P. J. Day	tristate "USB testing driver"
1961da177e4SLinus Torvalds	help
1971da177e4SLinus Torvalds	  This driver is for testing host controller software.  It is used
1981da177e4SLinus Torvalds	  with specialized device firmware for regression and stress testing,
1991da177e4SLinus Torvalds	  to help prevent problems from cropping up with "real" drivers.
2001da177e4SLinus Torvalds
2011da177e4SLinus Torvalds	  See <http://www.linux-usb.org/usbtest/> for more information,
2021da177e4SLinus Torvalds	  including sample test device firmware and "how to use it".
2031da177e4SLinus Torvalds
2041353aa53SManu Gautamconfig USB_EHSET_TEST_FIXTURE
2051353aa53SManu Gautam	tristate "USB EHSET Test Fixture driver"
2061353aa53SManu Gautam	help
2071353aa53SManu Gautam	  Say Y here if you want to support the special test fixture device
2081353aa53SManu Gautam	  used for the USB-IF Embedded Host High-Speed Electrical Test procedure.
2091353aa53SManu Gautam
2101353aa53SManu Gautam	  When the test fixture is connected, it can enumerate as one of several
2111353aa53SManu Gautam	  VID/PID pairs. This driver then initiates a corresponding test mode on
2121353aa53SManu Gautam	  the downstream port to which the test fixture is attached.
2131353aa53SManu Gautam
2141353aa53SManu Gautam	  See <http://www.usb.org/developers/onthego/EHSET_v1.01.pdf> for more
2151353aa53SManu Gautam	  information.
2161353aa53SManu Gautam
21762d104d0SMatthew Garrettconfig USB_ISIGHTFW
21862d104d0SMatthew Garrett	tristate "iSight firmware loading support"
2196460a261SIngo Molnar	select FW_LOADER
22062d104d0SMatthew Garrett	help
22162d104d0SMatthew Garrett	  This driver loads firmware for USB Apple iSight cameras, allowing
22262d104d0SMatthew Garrett	  them to be driven by the USB video class driver available at
22362d104d0SMatthew Garrett	  http://linux-uvc.berlios.de
22462d104d0SMatthew Garrett
22562d104d0SMatthew Garrett	  The firmware for this driver must be extracted from the MacOS
22662d104d0SMatthew Garrett	  driver beforehand. Tools for doing so are available at
22762d104d0SMatthew Garrett	  http://bersace03.free.fr
228cbc30118SStephen Ware
2296bc235a2STomoki Sekiyamaconfig USB_YUREX
2306bc235a2STomoki Sekiyama	tristate "USB YUREX driver support"
2316bc235a2STomoki Sekiyama	help
2326bc235a2STomoki Sekiyama	  Say Y here if you want to connect a YUREX to your computer's
2336bc235a2STomoki Sekiyama	  USB port. The YUREX is a leg-shakes sensor. See
2346bc235a2STomoki Sekiyama	  <http://bbu.kayac.com/en/> for further information.
2356bc235a2STomoki Sekiyama	  This driver supports read/write of leg-shakes counter and
2366bc235a2STomoki Sekiyama	  fasync for the counter update via a device file /dev/yurex*.
2376bc235a2STomoki Sekiyama
2386bc235a2STomoki Sekiyama	  To compile this driver as a module, choose M here: the
2396bc235a2STomoki Sekiyama	  module will be called yurex.
2406bc235a2STomoki Sekiyama
24170c048a2SRene Buergelconfig USB_EZUSB_FX2
24270c048a2SRene Buergel	tristate "Functions for loading firmware on EZUSB chips"
24370c048a2SRene Buergel	help
24470c048a2SRene Buergel	  Say Y here if you need EZUSB device support.
24570c048a2SRene Buergel	  (Cypress FX/FX2/FX2LP microcontrollers)
2466a099c63SDongjin Kim
2473ec72a2aSRichard Leitnerconfig USB_HUB_USB251XB
2483ec72a2aSRichard Leitner	tristate "USB251XB Hub Controller Configuration Driver"
2493ec72a2aSRichard Leitner	depends on I2C
2503ec72a2aSRichard Leitner	help
2513ec72a2aSRichard Leitner	  This option enables support for configuration via SMBus of the
2527fcf5584SSerge Semin	  Microchip USB251x/xBi USB 2.0 Hub Controller series. Configuration
2537fcf5584SSerge Semin	  parameters may be set in devicetree or platform data.
2543ec72a2aSRichard Leitner	  Say Y or M here if you need to configure such a device via SMBus.
2553ec72a2aSRichard Leitner
2566a099c63SDongjin Kimconfig USB_HSIC_USB3503
2576a099c63SDongjin Kim	tristate "USB3503 HSIC to USB20 Driver"
2586a099c63SDongjin Kim	depends on I2C
259eea88512SMatthew Dawson	select REGMAP_I2C
2606a099c63SDongjin Kim	help
2616a099c63SDongjin Kim	  This option enables support for SMSC USB3503 HSIC to USB 2.0 Driver.
262ce21bfe6SPratyush Anand
263740a6a17SStephen Boydconfig USB_HSIC_USB4604
264740a6a17SStephen Boyd	tristate "USB4604 HSIC to USB20 Driver"
265740a6a17SStephen Boyd	depends on I2C
266740a6a17SStephen Boyd	help
267740a6a17SStephen Boyd	  This option enables support for SMSC USB4604 HSIC to USB 2.0 Driver.
268740a6a17SStephen Boyd
269ce21bfe6SPratyush Anandconfig USB_LINK_LAYER_TEST
270ce21bfe6SPratyush Anand	tristate "USB Link Layer Test driver"
271ce21bfe6SPratyush Anand	help
272ce21bfe6SPratyush Anand	  This driver is for generating specific traffic for Super Speed Link
273ce21bfe6SPratyush Anand	  Layer Test Device. Say Y only when you want to conduct USB Super Speed
274ce21bfe6SPratyush Anand	  Link Layer Test for host controllers.
27566e3e591SKeith Packard
27666e3e591SKeith Packardconfig USB_CHAOSKEY
27766e3e591SKeith Packard	tristate "ChaosKey random number generator driver support"
278d9aab404SRandy Dunlap	depends on HW_RANDOM
27966e3e591SKeith Packard	help
280d3ede2dbSBob Ham	  Say Y here if you want to connect an AltusMetrum ChaosKey or
281d3ede2dbSBob Ham	  Araneus Alea I to your computer's USB port. These devices
282d3ede2dbSBob Ham	  are hardware random number generators which hook into the
283d3ede2dbSBob Ham	  kernel entropy pool to ensure a large supply of entropy for
284d3ede2dbSBob Ham	  /dev/random and /dev/urandom and also provides direct access
285d3ede2dbSBob Ham	  via /dev/chaoskeyX
28666e3e591SKeith Packard
28766e3e591SKeith Packard	  To compile this driver as a module, choose M here: the
28866e3e591SKeith Packard	  module will be called chaoskey.
289517c4c44SAl Cooper
290517c4c44SAl Cooperconfig BRCM_USB_PINMAP
291517c4c44SAl Cooper	tristate "Broadcom pinmap driver support"
292517c4c44SAl Cooper	depends on (ARCH_BRCMSTB && PHY_BRCM_USB) || COMPILE_TEST
293517c4c44SAl Cooper	default ARCH_BRCMSTB && PHY_BRCM_USB
294517c4c44SAl Cooper	help
295517c4c44SAl Cooper	  This option enables support for remapping some USB external
296517c4c44SAl Cooper	  signals, which are typically on dedicated pins on the chip,
297517c4c44SAl Cooper	  to any gpio.
2988bc06364SMatthias Kaehlcke
2998bc06364SMatthias Kaehlckeconfig USB_ONBOARD_HUB
3008bc06364SMatthias Kaehlcke	tristate "Onboard USB hub support"
301*22683e48SJean Delvare	depends on OF
3028bc06364SMatthias Kaehlcke	help
3038bc06364SMatthias Kaehlcke	  Say Y here if you want to support discrete onboard USB hubs that
3048bc06364SMatthias Kaehlcke	  don't require an additional control bus for initialization, but
3058bc06364SMatthias Kaehlcke	  need some non-trivial form of initialization, such as enabling a
3068bc06364SMatthias Kaehlcke	  power regulator. An example for such a hub is the Realtek
3078bc06364SMatthias Kaehlcke	  RTS5411.
3088bc06364SMatthias Kaehlcke
3098bc06364SMatthias Kaehlcke	  This driver can be used as a module but its state (module vs
3108bc06364SMatthias Kaehlcke	  builtin) must match the state of the USB subsystem. Enabling
3118bc06364SMatthias Kaehlcke	  this config will enable the driver and it will automatically
3128bc06364SMatthias Kaehlcke	  match the state of the USB subsystem. If this driver is a
3138bc06364SMatthias Kaehlcke	  module it will be called onboard_usb_hub.
314