| 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 | config JOYSTICK_SEESAW |
| 416 | tristate "Adafruit Mini I2C Gamepad with Seesaw" |
| 417 | depends on I2C |
| 418 | select INPUT_SPARSEKMAP |
| 419 | help |
| 420 | Say Y here if you want to use the Adafruit Mini I2C Gamepad. |
| 421 | |
| 422 | To compile this driver as a module, choose M here: the module will be |
| 423 | called adafruit-seesaw. |
| 424 | |
| 425 | endif |