RISCV: configs: tizen_visionfive2: Enable USB_CONFIGFS_ACM
[platform/kernel/linux-starfive.git] / drivers / input / joystick / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # Joystick driver configuration
4 #
5 menuconfig INPUT_JOYSTICK
6         bool "Joysticks/Gamepads"
7         depends on !UML
8         help
9           If you have a joystick, 6dof controller, gamepad, steering wheel,
10           weapon control system or something like that you can say Y here
11           and the list of supported devices will be displayed. This option
12           doesn't affect the kernel.
13
14           Please read the file <file:Documentation/input/joydev/joystick.rst> which
15           contains more information.
16
17 if INPUT_JOYSTICK
18
19 config JOYSTICK_ANALOG
20         tristate "Classic PC analog joysticks and gamepads"
21         select GAMEPORT
22         help
23           Say Y here if you have a joystick that connects to the PC
24           gameport. In addition to the usual PC analog joystick, this driver
25           supports many extensions, including joysticks with throttle control,
26           with rudders, additional hats and buttons compatible with CH
27           Flightstick Pro, ThrustMaster FCS, 6 and 8 button gamepads, or
28           Saitek Cyborg joysticks.
29
30           Please read the file <file:Documentation/input/joydev/joystick.rst> which
31           contains more information.
32
33           To compile this driver as a module, choose M here: the
34           module will be called analog.
35
36 config JOYSTICK_A3D
37         tristate "Assassin 3D and MadCatz Panther devices"
38         select GAMEPORT
39         help
40           Say Y here if you have an FPGaming or MadCatz controller using the
41           A3D protocol over the PC gameport.
42
43           To compile this driver as a module, choose M here: the
44           module will be called a3d.
45
46 config JOYSTICK_ADC
47         tristate "Simple joystick connected over ADC"
48         depends on IIO
49         select IIO_BUFFER
50         select IIO_BUFFER_CB
51         help
52           Say Y here if you have a simple joystick connected over ADC.
53
54           To compile this driver as a module, choose M here: the
55           module will be called adc-joystick.
56
57 config JOYSTICK_ADI
58         tristate "Logitech ADI digital joysticks and gamepads"
59         select GAMEPORT
60         depends on ADI!=m # avoid module name conflict
61         help
62           Say Y here if you have a Logitech controller using the ADI
63           protocol over the PC gameport.
64
65           To compile this driver as a module, choose M here: the
66           module will be called adi.
67
68 config JOYSTICK_COBRA
69         tristate "Creative Labs Blaster Cobra gamepad"
70         select GAMEPORT
71         help
72           Say Y here if you have a Creative Labs Blaster Cobra gamepad.
73
74           To compile this driver as a module, choose M here: the
75           module will be called cobra.
76
77 config JOYSTICK_GF2K
78         tristate "Genius Flight2000 Digital joysticks and gamepads"
79         select GAMEPORT
80         help
81           Say Y here if you have a Genius Flight2000 or MaxFighter digitally
82           communicating joystick or gamepad.
83
84           To compile this driver as a module, choose M here: the
85           module will be called gf2k.
86
87 config JOYSTICK_GRIP
88         tristate "Gravis GrIP joysticks and gamepads"
89         select GAMEPORT
90         help
91           Say Y here if you have a Gravis controller using the GrIP protocol
92           over the PC gameport.
93
94           To compile this driver as a module, choose M here: the
95           module will be called grip.
96
97 config JOYSTICK_GRIP_MP
98         tristate "Gravis GrIP MultiPort"
99         select GAMEPORT
100         help
101           Say Y here if you have the original Gravis GrIP MultiPort, a hub
102           that connects to the gameport and you connect gamepads to it.
103
104           To compile this driver as a module, choose M here: the
105           module will be called grip_mp.
106
107 config JOYSTICK_GUILLEMOT
108         tristate "Guillemot joysticks and gamepads"
109         select GAMEPORT
110         help
111           Say Y here if you have a Guillemot joystick using a digital
112           protocol over the PC gameport.
113
114           To compile this driver as a module, choose M here: the
115           module will be called guillemot.
116
117 config JOYSTICK_INTERACT
118         tristate "InterAct digital joysticks and gamepads"
119         select GAMEPORT
120         help
121           Say Y here if you have an InterAct gameport or joystick
122           communicating digitally over the gameport.
123
124           To compile this driver as a module, choose M here: the
125           module will be called interact.
126
127 config JOYSTICK_SIDEWINDER
128         tristate "Microsoft SideWinder digital joysticks and gamepads"
129         select GAMEPORT
130         help
131           Say Y here if you have a Microsoft controller using the Digital
132           Overdrive protocol over PC gameport.
133
134           To compile this driver as a module, choose M here: the
135           module will be called sidewinder.
136
137 config JOYSTICK_TMDC
138         tristate "ThrustMaster DirectConnect joysticks and gamepads"
139         select GAMEPORT
140         help
141           Say Y here if you have a ThrustMaster controller using the
142           DirectConnect (BSP) protocol over the PC gameport.
143
144           To compile this driver as a module, choose M here: the
145           module will be called tmdc.
146
147 source "drivers/input/joystick/iforce/Kconfig"
148
149 config JOYSTICK_WARRIOR
150         tristate "Logitech WingMan Warrior joystick"
151         select SERIO
152         help
153           Say Y here if you have a Logitech WingMan Warrior joystick connected
154           to your computer's serial port.
155
156           To compile this driver as a module, choose M here: the
157           module will be called warrior.
158
159 config JOYSTICK_MAGELLAN
160         tristate "LogiCad3d Magellan/SpaceMouse 6dof controllers"
161         select SERIO
162         help
163           Say Y here if you have a Magellan or Space Mouse 6DOF controller
164           connected to your computer's serial port.
165
166           To compile this driver as a module, choose M here: the
167           module will be called magellan.
168
169 config JOYSTICK_SPACEORB
170         tristate "SpaceTec SpaceOrb/Avenger 6dof controllers"
171         select SERIO
172         help
173           Say Y here if you have a SpaceOrb 360 or SpaceBall Avenger 6DOF
174           controller connected to your computer's serial port.
175
176           To compile this driver as a module, choose M here: the
177           module will be called spaceorb.
178
179 config JOYSTICK_SPACEBALL
180         tristate "SpaceTec SpaceBall 6dof controllers"
181         select SERIO
182         help
183           Say Y here if you have a SpaceTec SpaceBall 2003/3003/4000 FLX
184           controller connected to your computer's serial port. For the
185           SpaceBall 4000 USB model, use the USB HID driver.
186
187           To compile this driver as a module, choose M here: the
188           module will be called spaceball.
189
190 config JOYSTICK_STINGER
191         tristate "Gravis Stinger gamepad"
192         select SERIO
193         help
194           Say Y here if you have a Gravis Stinger connected to one of your
195           serial ports.
196
197           To compile this driver as a module, choose M here: the
198           module will be called stinger.
199
200 config JOYSTICK_TWIDJOY
201         tristate "Twiddler as a joystick"
202         select SERIO
203         help
204           Say Y here if you have a Handykey Twiddler connected to your
205           computer's serial port and want to use it as a joystick.
206
207           To compile this driver as a module, choose M here: the
208           module will be called twidjoy.
209
210 config JOYSTICK_ZHENHUA
211         tristate "5-byte Zhenhua RC transmitter"
212         select SERIO
213         select BITREVERSE
214         help
215           Say Y here if you have a Zhen Hua PPM-4CH transmitter which is
216           supplied with a ready to fly micro electric indoor helicopters
217           such as EasyCopter, Lama, MiniCopter, DragonFly or Jabo and want
218           to use it via serial cable as a joystick.
219
220           To compile this driver as a module, choose M here: the
221           module will be called zhenhua.
222
223 config JOYSTICK_DB9
224         tristate "Multisystem, Sega Genesis, Saturn joysticks and gamepads"
225         depends on PARPORT
226         help
227           Say Y here if you have a Sega Master System gamepad, Sega Genesis
228           gamepad, Sega Saturn gamepad, or a Multisystem -- Atari, Amiga,
229           Commodore, Amstrad CPC joystick connected to your parallel port.
230           For more information on how to use the driver please read
231           <file:Documentation/input/devices/joystick-parport.rst>.
232
233           To compile this driver as a module, choose M here: the
234           module will be called db9.
235
236 config JOYSTICK_GAMECON
237         tristate "Multisystem, NES, SNES, N64, PSX joysticks and gamepads"
238         depends on PARPORT
239         select INPUT_FF_MEMLESS
240         help
241           Say Y here if you have a Nintendo Entertainment System gamepad,
242           Super Nintendo Entertainment System gamepad, Nintendo 64 gamepad,
243           Sony PlayStation gamepad or a Multisystem -- Atari, Amiga,
244           Commodore, Amstrad CPC joystick connected to your parallel port.
245           For more information on how to use the driver please read
246           <file:Documentation/input/devices/joystick-parport.rst>.
247
248           To compile this driver as a module, choose M here: the
249           module will be called gamecon.
250
251 config JOYSTICK_TURBOGRAFX
252         tristate "Multisystem joysticks via TurboGraFX device"
253         depends on PARPORT
254         help
255           Say Y here if you have the TurboGraFX interface by Steffen Schwenke,
256           and want to use it with Multisystem -- Atari, Amiga, Commodore,
257           Amstrad CPC joystick. For more information on how to use the driver
258           please read <file:Documentation/input/devices/joystick-parport.rst>.
259
260           To compile this driver as a module, choose M here: the
261           module will be called turbografx.
262
263 config JOYSTICK_AMIGA
264         tristate "Amiga joysticks"
265         depends on AMIGA
266         help
267           Say Y here if you have an Amiga with a digital joystick connected
268           to it.
269
270           To compile this driver as a module, choose M here: the
271           module will be called amijoy.
272
273 config JOYSTICK_AS5011
274         tristate "Austria Microsystem AS5011 joystick"
275         depends on I2C
276         help
277           Say Y here if you have an AS5011 digital joystick connected to your
278           system.
279
280           To compile this driver as a module, choose M here: the
281           module will be called as5011.
282
283 config JOYSTICK_JOYDUMP
284         tristate "Gameport data dumper"
285         select GAMEPORT
286         help
287           Say Y here if you want to dump data from your joystick into the system
288           log for debugging purposes. Say N if you are making a production
289           configuration or aren't sure.
290
291           To compile this driver as a module, choose M here: the
292           module will be called joydump.
293
294 config JOYSTICK_XPAD
295         tristate "Xbox gamepad support"
296         depends on USB_ARCH_HAS_HCD
297         select USB
298         help
299           Say Y here if you want to use Xbox pads with your computer.
300           Make sure to say Y to "Joystick support" (CONFIG_INPUT_JOYDEV)
301           and/or "Event interface support" (CONFIG_INPUT_EVDEV) as well.
302
303           For information about how to connect the Xbox pad to USB, see
304           <file:Documentation/input/devices/xpad.rst>.
305
306           To compile this driver as a module, choose M here: the
307           module will be called xpad.
308
309 config JOYSTICK_XPAD_FF
310         bool "Xbox gamepad rumble support"
311         depends on JOYSTICK_XPAD && INPUT
312         select INPUT_FF_MEMLESS
313         help
314           Say Y here if you want to take advantage of Xbox 360 rumble features.
315
316 config JOYSTICK_XPAD_LEDS
317         bool "LED Support for the Xbox 360 controller Guide button"
318         depends on JOYSTICK_XPAD && (LEDS_CLASS=y || LEDS_CLASS=JOYSTICK_XPAD)
319         help
320           This option enables support for the LED which surrounds the Big X on
321           Xbox 360 controllers.
322
323 config JOYSTICK_WALKERA0701
324         tristate "Walkera WK-0701 RC transmitter"
325         depends on HIGH_RES_TIMERS && PARPORT
326         help
327           Say Y or M here if you have a Walkera WK-0701 transmitter which is
328           supplied with a ready to fly Walkera helicopters such as HM36,
329           HM37, HM60 and want to use it via parport as a joystick. More
330           information is available: <file:Documentation/input/devices/walkera0701.rst>
331
332           To compile this driver as a module, choose M here: the
333           module will be called walkera0701.
334
335 config JOYSTICK_MAPLE
336         tristate "Dreamcast control pad"
337         depends on MAPLE
338         help
339           Say Y here if you have a SEGA Dreamcast and want to use your
340           controller as a joystick.
341
342           Most Dreamcast users will say Y.
343
344           To compile this as a module choose M here: the module will be called
345           maplecontrol.
346
347 config JOYSTICK_PSXPAD_SPI
348         tristate "PlayStation 1/2 joypads via SPI interface"
349         depends on SPI
350         help
351           Say Y here if you wish to connect PlayStation 1/2 joypads
352           via SPI interface.
353
354           To compile this driver as a module, choose M here: the
355           module will be called psxpad-spi.
356
357 config JOYSTICK_PSXPAD_SPI_FF
358         bool "PlayStation 1/2 joypads force feedback (rumble) support"
359         depends on JOYSTICK_PSXPAD_SPI
360         select INPUT_FF_MEMLESS
361         help
362           Say Y here if you want to take advantage of PlayStation 1/2
363           joypads rumble features.
364
365           To drive rumble motor a dedicated power supply is required.
366
367 config JOYSTICK_PXRC
368         tristate "PhoenixRC Flight Controller Adapter"
369         depends on USB_ARCH_HAS_HCD
370         select USB
371         help
372           Say Y here if you want to use the PhoenixRC Flight Controller Adapter.
373
374           To compile this driver as a module, choose M here: the
375           module will be called pxrc.
376
377 config JOYSTICK_QWIIC
378         tristate "SparkFun Qwiic Joystick"
379         depends on I2C
380         help
381           Say Y here if you want to use the SparkFun Qwiic Joystick.
382
383           To compile this driver as a module, choose M here: the
384           module will be called qwiic-joystick.
385
386 config JOYSTICK_FSIA6B
387         tristate "FlySky FS-iA6B RC Receiver"
388         select SERIO
389         help
390           Say Y here if you use a FlySky FS-i6 RC remote control along with the
391           FS-iA6B RC receiver as a joystick input device.
392
393           To compile this driver as a module, choose M here: the
394           module will be called fsia6b.
395
396 config JOYSTICK_N64
397         bool "N64 controller"
398         depends on MACH_NINTENDO64
399         help
400           Say Y here if you want enable support for the four
401           built-in controller ports on the Nintendo 64 console.
402
403 config JOYSTICK_SENSEHAT
404         tristate "Raspberry Pi Sense HAT joystick"
405         depends on INPUT && I2C
406         depends on HAS_IOMEM
407         select MFD_SIMPLE_MFD_I2C
408         help
409           Say Y here if you want to enable the driver for the
410           the Raspberry Pi Sense HAT.
411
412           To compile this driver as a module, choose M here: the
413           module will be called sensehat_joystick.
414
415 endif