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