0001 # SPDX-License-Identifier: GPL-2.0
0002 #
0003 # USB Miscellaneous driver configuration
0004 #
0005 comment "USB Miscellaneous drivers"
0006
0007 config USB_EMI62
0008 tristate "EMI 6|2m USB Audio interface support"
0009 help
0010 This driver loads firmware to Emagic EMI 6|2m low latency USB
0011 Audio and Midi interface.
0012
0013 After firmware load the device is handled with standard linux
0014 USB Audio driver.
0015
0016 This code is also available as a module ( = code which can be
0017 inserted in and removed from the running kernel whenever you want).
0018 The module will be called audio. If you want to compile it as a
0019 module, say M here and read <file:Documentation/kbuild/modules.rst>.
0020
0021 config USB_EMI26
0022 tristate "EMI 2|6 USB Audio interface support"
0023 help
0024 This driver loads firmware to Emagic EMI 2|6 low latency USB
0025 Audio interface.
0026
0027 After firmware load the device is handled with standard linux
0028 USB Audio driver.
0029
0030 To compile this driver as a module, choose M here: the
0031 module will be called emi26.
0032
0033 config USB_ADUTUX
0034 tristate "ADU devices from Ontrak Control Systems"
0035 help
0036 Say Y if you want to use an ADU device from Ontrak Control
0037 Systems.
0038
0039 To compile this driver as a module, choose M here. The module
0040 will be called adutux.
0041
0042 config USB_SEVSEG
0043 tristate "USB 7-Segment LED Display"
0044 help
0045 Say Y here if you have a USB 7-Segment Display by Delcom
0046
0047 To compile this driver as a module, choose M here: the
0048 module will be called usbsevseg.
0049
0050 config USB_LEGOTOWER
0051 tristate "USB Lego Infrared Tower support"
0052 help
0053 Say Y here if you want to connect a USB Lego Infrared Tower to your
0054 computer's USB port.
0055
0056 This code is also available as a module ( = code which can be
0057 inserted in and removed from the running kernel whenever you want).
0058 The module will be called legousbtower. If you want to compile it as
0059 a module, say M here and read
0060 <file:Documentation/kbuild/modules.rst>.
0061
0062 config USB_LCD
0063 tristate "USB LCD driver support"
0064 help
0065 Say Y here if you want to connect an USBLCD to your computer's
0066 USB port. The USBLCD is a small USB interface board for
0067 alphanumeric LCD modules. See <http://www.usblcd.de/> for more
0068 information.
0069
0070 To compile this driver as a module, choose M here: the
0071 module will be called usblcd.
0072
0073 config USB_CYPRESS_CY7C63
0074 tristate "Cypress CY7C63xxx USB driver support"
0075 help
0076 Say Y here if you want to connect a Cypress CY7C63xxx
0077 micro controller to your computer's USB port. Currently this
0078 driver supports the pre-programmed devices (incl. firmware)
0079 by AK Modul-Bus Computer GmbH.
0080
0081 Please see: https://www.ak-modul-bus.de/stat/mikrocontroller.html
0082
0083 To compile this driver as a module, choose M here: the
0084 module will be called cypress_cy7c63.
0085
0086 config USB_CYTHERM
0087 tristate "Cypress USB thermometer driver support"
0088 help
0089 Say Y here if you want to connect a Cypress USB thermometer
0090 device to your computer's USB port. This device is also known
0091 as the Cypress USB Starter kit or demo board. The Elektor
0092 magazine published a modified version of this device in issue
0093 #291.
0094
0095 To compile this driver as a module, choose M here: the
0096 module will be called cytherm.
0097
0098 config USB_IDMOUSE
0099 tristate "Siemens ID USB Mouse Fingerprint sensor support"
0100 help
0101 Say Y here if you want to use the fingerprint sensor on
0102 the Siemens ID Mouse. There is also a Siemens ID Mouse
0103 _Professional_, which has not been tested with this driver,
0104 but uses the same sensor and may therefore work.
0105
0106 This driver creates an entry "/dev/idmouseX" or "/dev/usb/idmouseX",
0107 which can be used by, e.g.,"cat /dev/idmouse0 > fingerprint.pnm".
0108
0109 See also <https://www.fs.tum.de/~echtler/idmouse/>.
0110
0111 config USB_FTDI_ELAN
0112 tristate "Elan PCMCIA CardBus Adapter USB Client"
0113 help
0114 ELAN's Uxxx series of adapters are USB to PCMCIA CardBus adapters.
0115 Currently only the U132 adapter is available.
0116
0117 The U132 is specifically designed for CardBus PC cards that contain
0118 an OHCI host controller. Typical PC cards are the Orange Mobile 3G
0119 Option GlobeTrotter Fusion card. The U132 adapter will *NOT* work
0120 with PC cards that do not contain an OHCI controller. To use a U132
0121 adapter you will need this "ftdi-elan" module as well as the "u132-hcd"
0122 module which is a USB host controller driver that talks to the OHCI
0123 controller within CardBus card that are inserted in the U132 adapter.
0124
0125 This driver has been tested with a CardBus OHCI USB adapter, and
0126 worked with a USB PEN Drive inserted into the first USB port of
0127 the PCCARD. A rather pointless thing to do, but useful for testing.
0128
0129 See also the USB_U132_HCD entry "Elan U132 Adapter Host Controller"
0130
0131 It is safe to say M here.
0132
0133 config USB_APPLEDISPLAY
0134 tristate "Apple Cinema Display support"
0135 select BACKLIGHT_CLASS_DEVICE
0136 help
0137 Say Y here if you want to control the backlight of Apple Cinema
0138 Displays over USB. This driver provides a sysfs interface.
0139
0140 config USB_QCOM_EUD
0141 tristate "QCOM Embedded USB Debugger(EUD) Driver"
0142 depends on ARCH_QCOM || COMPILE_TEST
0143 select USB_ROLE_SWITCH
0144 help
0145 This module enables support for Qualcomm Technologies, Inc.
0146 Embedded USB Debugger (EUD). The EUD is a control peripheral
0147 which reports VBUS attach/detach events and has USB-based
0148 debug and trace capabilities. On selecting m, the module name
0149 that is built is qcom_eud.ko
0150
0151 config APPLE_MFI_FASTCHARGE
0152 tristate "Fast charge control for iOS devices"
0153 select POWER_SUPPLY
0154 help
0155 Say Y here if you want to control whether iOS devices will
0156 fast charge from the USB interface, as implemented in "MFi"
0157 chargers.
0158
0159 It is safe to say M here.
0160
0161 source "drivers/usb/misc/sisusbvga/Kconfig"
0162
0163 config USB_LD
0164 tristate "USB LD driver"
0165 help
0166 This driver is for generic USB devices that use interrupt transfers,
0167 like LD Didactic's USB devices.
0168
0169 To compile this driver as a module, choose M here: the
0170 module will be called ldusb.
0171
0172 config USB_TRANCEVIBRATOR
0173 tristate "PlayStation 2 Trance Vibrator driver support"
0174 help
0175 Say Y here if you want to connect a PlayStation 2 Trance Vibrator
0176 device to your computer's USB port.
0177
0178 To compile this driver as a module, choose M here: the
0179 module will be called trancevibrator.
0180
0181 config USB_IOWARRIOR
0182 tristate "IO Warrior driver support"
0183 help
0184 Say Y here if you want to support the IO Warrior devices from Code
0185 Mercenaries. This includes support for the following devices:
0186 IO Warrior 40
0187 IO Warrior 24
0188 IO Warrior 56
0189 IO Warrior 24 Power Vampire
0190
0191 To compile this driver as a module, choose M here: the
0192 module will be called iowarrior.
0193
0194 config USB_TEST
0195 tristate "USB testing driver"
0196 help
0197 This driver is for testing host controller software. It is used
0198 with specialized device firmware for regression and stress testing,
0199 to help prevent problems from cropping up with "real" drivers.
0200
0201 See <http://www.linux-usb.org/usbtest/> for more information,
0202 including sample test device firmware and "how to use it".
0203
0204 config USB_EHSET_TEST_FIXTURE
0205 tristate "USB EHSET Test Fixture driver"
0206 help
0207 Say Y here if you want to support the special test fixture device
0208 used for the USB-IF Embedded Host High-Speed Electrical Test procedure.
0209
0210 When the test fixture is connected, it can enumerate as one of several
0211 VID/PID pairs. This driver then initiates a corresponding test mode on
0212 the downstream port to which the test fixture is attached.
0213
0214 See <http://www.usb.org/developers/onthego/EHSET_v1.01.pdf> for more
0215 information.
0216
0217 config USB_ISIGHTFW
0218 tristate "iSight firmware loading support"
0219 select FW_LOADER
0220 help
0221 This driver loads firmware for USB Apple iSight cameras, allowing
0222 them to be driven by the USB video class driver available at
0223 http://linux-uvc.berlios.de
0224
0225 The firmware for this driver must be extracted from the MacOS
0226 driver beforehand. Tools for doing so are available at
0227 http://bersace03.free.fr
0228
0229 config USB_YUREX
0230 tristate "USB YUREX driver support"
0231 help
0232 Say Y here if you want to connect a YUREX to your computer's
0233 USB port. The YUREX is a leg-shakes sensor. See
0234 <http://bbu.kayac.com/en/> for further information.
0235 This driver supports read/write of leg-shakes counter and
0236 fasync for the counter update via a device file /dev/yurex*.
0237
0238 To compile this driver as a module, choose M here: the
0239 module will be called yurex.
0240
0241 config USB_EZUSB_FX2
0242 tristate "Functions for loading firmware on EZUSB chips"
0243 help
0244 Say Y here if you need EZUSB device support.
0245 (Cypress FX/FX2/FX2LP microcontrollers)
0246
0247 config USB_HUB_USB251XB
0248 tristate "USB251XB Hub Controller Configuration Driver"
0249 depends on I2C
0250 help
0251 This option enables support for configuration via SMBus of the
0252 Microchip USB251x/xBi USB 2.0 Hub Controller series. Configuration
0253 parameters may be set in devicetree or platform data.
0254 Say Y or M here if you need to configure such a device via SMBus.
0255
0256 config USB_HSIC_USB3503
0257 tristate "USB3503 HSIC to USB20 Driver"
0258 depends on I2C
0259 select REGMAP_I2C
0260 help
0261 This option enables support for SMSC USB3503 HSIC to USB 2.0 Driver.
0262
0263 config USB_HSIC_USB4604
0264 tristate "USB4604 HSIC to USB20 Driver"
0265 depends on I2C
0266 help
0267 This option enables support for SMSC USB4604 HSIC to USB 2.0 Driver.
0268
0269 config USB_LINK_LAYER_TEST
0270 tristate "USB Link Layer Test driver"
0271 help
0272 This driver is for generating specific traffic for Super Speed Link
0273 Layer Test Device. Say Y only when you want to conduct USB Super Speed
0274 Link Layer Test for host controllers.
0275
0276 config USB_CHAOSKEY
0277 tristate "ChaosKey random number generator driver support"
0278 depends on HW_RANDOM
0279 help
0280 Say Y here if you want to connect an AltusMetrum ChaosKey or
0281 Araneus Alea I to your computer's USB port. These devices
0282 are hardware random number generators which hook into the
0283 kernel entropy pool to ensure a large supply of entropy for
0284 /dev/random and /dev/urandom and also provides direct access
0285 via /dev/chaoskeyX
0286
0287 To compile this driver as a module, choose M here: the
0288 module will be called chaoskey.
0289
0290 config BRCM_USB_PINMAP
0291 tristate "Broadcom pinmap driver support"
0292 depends on (ARCH_BRCMSTB && PHY_BRCM_USB) || COMPILE_TEST
0293 default ARCH_BRCMSTB && PHY_BRCM_USB
0294 help
0295 This option enables support for remapping some USB external
0296 signals, which are typically on dedicated pins on the chip,
0297 to any gpio.
0298
0299 config USB_ONBOARD_HUB
0300 tristate "Onboard USB hub support"
0301 depends on OF || COMPILE_TEST
0302 help
0303 Say Y here if you want to support discrete onboard USB hubs that
0304 don't require an additional control bus for initialization, but
0305 need some non-trivial form of initialization, such as enabling a
0306 power regulator. An example for such a hub is the Realtek
0307 RTS5411.
0308
0309 This driver can be used as a module but its state (module vs
0310 builtin) must match the state of the USB subsystem. Enabling
0311 this config will enable the driver and it will automatically
0312 match the state of the USB subsystem. If this driver is a
0313 module it will be called onboard_usb_hub.