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 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 57config 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 68config 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 77config 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 87config 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 97config 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 107config 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 117config 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 127config 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 137config 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 147source "drivers/input/joystick/iforce/Kconfig" 148 149config 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 159config 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 169config 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 179config 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 190config 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 200config 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 210config 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 223config 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 236config 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 251config 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 263config 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 273config 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 283config 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 294config 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 309config 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 316config 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 323config 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 335config 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 347config 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 357config 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 367config 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 377config 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 386config 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 396config 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 403config 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 415endif 416