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