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 415