1# SPDX-License-Identifier: GPL-2.0-only 2# 3# HID driver configuration 4# 5menu "HID support" 6 depends on INPUT 7 8config HID 9 tristate "HID bus support" 10 depends on INPUT 11 default y 12 help 13 A human interface device (HID) is a type of computer device that 14 interacts directly with and takes input from humans. The term "HID" 15 most commonly used to refer to the USB-HID specification, but other 16 devices (such as, but not strictly limited to, Bluetooth) are 17 designed using HID specification (this involves certain keyboards, 18 mice, tablets, etc). This option adds the HID bus to the kernel, 19 together with generic HID layer code. The HID devices are added and 20 removed from the HID bus by the transport-layer drivers, such as 21 usbhid (USB_HID) and hidp (BT_HIDP). 22 23 For docs and specs, see https://www.usb.org/developers/hidpage/ 24 25 If unsure, say Y. 26 27if HID 28 29config HID_BATTERY_STRENGTH 30 bool "Battery level reporting for HID devices" 31 depends on HID 32 select POWER_SUPPLY 33 default n 34 help 35 This option adds support of reporting battery strength (for HID devices 36 that support this feature) through power_supply class so that userspace 37 tools, such as upower, can display it. 38 39config HIDRAW 40 bool "/dev/hidraw raw HID device support" 41 depends on HID 42 help 43 Say Y here if you want to support HID devices (from the USB 44 specification standpoint) that aren't strictly user interface 45 devices, like monitor controls and Uninterruptible Power Supplies. 46 47 This module supports these devices separately using a separate 48 event interface on /dev/hidraw. 49 50 There is also a /dev/hiddev configuration option in the USB HID 51 configuration menu. In comparison to hiddev, this device does not process 52 the hid events at all (no parsing, no lookups). This lets applications 53 to work on raw hid events when they want to, and avoid using transport-specific 54 userspace libhid/libusb libraries. 55 56 If unsure, say Y. 57 58config UHID 59 tristate "User-space I/O driver support for HID subsystem" 60 depends on HID 61 default n 62 help 63 Say Y here if you want to provide HID I/O Drivers from user-space. 64 This allows to write I/O drivers in user-space and feed the data from 65 the device into the kernel. The kernel parses the HID reports, loads the 66 corresponding HID Device Driver or provides input devices on top of your 67 user-space device. 68 69 This driver cannot be used to parse HID-reports in user-space and write 70 special HID-drivers. You should use hidraw for that. 71 Instead, this driver allows to write the transport-layer driver in 72 user-space like USB-HID and Bluetooth-HID do in kernel-space. 73 74 If unsure, say N. 75 76 To compile this driver as a module, choose M here: the 77 module will be called uhid. 78 79config HID_GENERIC 80 tristate "Generic HID driver" 81 depends on HID 82 default HID 83 help 84 Support for generic devices on the HID bus. This includes most 85 keyboards and mice, joysticks, tablets and digitizers. 86 87 To compile this driver as a module, choose M here: the module 88 will be called hid-generic. 89 90 If unsure, say Y. 91 92menu "Special HID drivers" 93 depends on HID 94 95config HID_A4TECH 96 tristate "A4TECH mice" 97 depends on HID 98 default !EXPERT 99 help 100 Support for some A4TECH mice with two scroll wheels. 101 102config HID_ACCUTOUCH 103 tristate "Accutouch touch device" 104 depends on USB_HID 105 help 106 This selects a driver for the Accutouch 2216 touch controller. 107 108 The driver works around a problem in the reported device capabilities 109 which causes userspace to detect the device as a mouse rather than 110 a touchscreen. 111 112 Say Y here if you have a Accutouch 2216 touch controller. 113 114config HID_ACRUX 115 tristate "ACRUX game controller support" 116 depends on HID 117 help 118 Say Y here if you want to enable support for ACRUX game controllers. 119 120config HID_ACRUX_FF 121 bool "ACRUX force feedback support" 122 depends on HID_ACRUX 123 select INPUT_FF_MEMLESS 124 help 125 Say Y here if you want to enable force feedback support for ACRUX 126 game controllers. 127 128config HID_APPLE 129 tristate "Apple {i,Power,Mac}Books" 130 depends on HID 131 depends on LEDS_CLASS 132 depends on NEW_LEDS 133 default !EXPERT 134 help 135 Support for some Apple devices which less or more break 136 HID specification. 137 138 Say Y here if you want support for keyboards of Apple iBooks, PowerBooks, 139 MacBooks, MacBook Pros and Apple Aluminum. 140 141config HID_APPLEIR 142 tristate "Apple infrared receiver" 143 depends on (USB_HID) 144 help 145 Support for Apple infrared remote control. All the Apple computers from 146 2005 onwards include such a port, except the unibody Macbook (2009), 147 and Mac Pros. This receiver is also used in the Apple TV set-top box 148 prior to the 2010 model. 149 150 Say Y here if you want support for Apple infrared remote control. 151 152config HID_ASUS 153 tristate "Asus" 154 depends on USB_HID 155 depends on LEDS_CLASS 156 depends on ASUS_WMI || ASUS_WMI=n 157 select POWER_SUPPLY 158 help 159 Support for Asus notebook built-in keyboard and touchpad via i2c, and 160 the Asus Republic of Gamers laptop keyboard special keys. 161 162 Supported devices: 163 - EeeBook X205TA 164 - VivoBook E200HA 165 - GL553V series 166 - GL753V series 167 168config HID_AUREAL 169 tristate "Aureal" 170 depends on HID 171 help 172 Support for Aureal Cy se W-01RN Remote Controller and other Aureal derived remotes. 173 174config HID_BELKIN 175 tristate "Belkin Flip KVM and Wireless keyboard" 176 depends on HID 177 default !EXPERT 178 help 179 Support for Belkin Flip KVM and Wireless keyboard. 180 181config HID_BETOP_FF 182 tristate "Betop Production Inc. force feedback support" 183 depends on USB_HID 184 select INPUT_FF_MEMLESS 185 help 186 Say Y here if you want to enable force feedback support for devices by 187 BETOP Production Ltd. 188 Currently the following devices are known to be supported: 189 - BETOP 2185 PC & BFM MODE 190 191config HID_BIGBEN_FF 192 tristate "BigBen Interactive Kids' gamepad support" 193 depends on USB_HID 194 depends on NEW_LEDS 195 depends on LEDS_CLASS 196 select INPUT_FF_MEMLESS 197 help 198 Support for the "Kid-friendly Wired Controller" PS3OFMINIPAD 199 gamepad made by BigBen Interactive, originally sold as a PS3 200 accessory. This driver fixes input mapping and adds support for 201 force feedback effects and LEDs on the device. 202 203config HID_CHERRY 204 tristate "Cherry Cymotion keyboard" 205 depends on HID 206 default !EXPERT 207 help 208 Support for Cherry Cymotion keyboard. 209 210config HID_CHICONY 211 tristate "Chicony devices" 212 depends on USB_HID 213 default !EXPERT 214 help 215 Support for Chicony Tactical pad and special keys on Chicony keyboards. 216 217config HID_CORSAIR 218 tristate "Corsair devices" 219 depends on USB_HID && LEDS_CLASS 220 help 221 Support for Corsair devices that are not fully compliant with the 222 HID standard. 223 224 Supported devices: 225 - Vengeance K90 226 - Scimitar PRO RGB 227 228config HID_COUGAR 229 tristate "Cougar devices" 230 depends on HID 231 help 232 Support for Cougar devices that are not fully compliant with the 233 HID standard. 234 235 Supported devices: 236 - Cougar 500k Gaming Keyboard 237 238config HID_MACALLY 239 tristate "Macally devices" 240 depends on HID 241 help 242 Support for Macally devices that are not fully compliant with the 243 HID standard. 244 245 supported devices: 246 - Macally ikey keyboard 247 248config HID_PRODIKEYS 249 tristate "Prodikeys PC-MIDI Keyboard support" 250 depends on USB_HID && SND 251 select SND_RAWMIDI 252 help 253 Support for Prodikeys PC-MIDI Keyboard device support. 254 Say Y here to enable support for this device. 255 - Prodikeys PC-MIDI keyboard. 256 The Prodikeys PC-MIDI acts as a USB Audio device, with one MIDI 257 input and one MIDI output. These MIDI jacks appear as 258 a sound "card" in the ALSA sound system. 259 Note: if you say N here, this device will still function as a basic 260 multimedia keyboard, but will lack support for the musical keyboard 261 and some additional multimedia keys. 262 263config HID_CMEDIA 264 tristate "CMedia audio chips" 265 depends on HID 266 help 267 Support for CMedia CM6533 HID audio jack controls 268 and HS100B mute buttons. 269 270config HID_CP2112 271 tristate "Silicon Labs CP2112 HID USB-to-SMBus Bridge support" 272 depends on USB_HID && HIDRAW && I2C && GPIOLIB 273 select GPIOLIB_IRQCHIP 274 help 275 Support for Silicon Labs CP2112 HID USB to SMBus Master Bridge. 276 This is a HID device driver which registers as an i2c adapter 277 and gpiochip to expose these functions of the CP2112. The 278 customizable USB descriptor fields are exposed as sysfs attributes. 279 280config HID_CREATIVE_SB0540 281 tristate "Creative SB0540 infrared receiver" 282 depends on USB_HID 283 help 284 Support for Creative infrared SB0540-compatible remote controls, such 285 as the RM-1500 and RM-1800 remotes. 286 287 Say Y here if you want support for Creative SB0540 infrared receiver. 288 289config HID_CYPRESS 290 tristate "Cypress mouse and barcode readers" 291 depends on HID 292 default !EXPERT 293 help 294 Support for cypress mouse and barcode readers. 295 296config HID_DRAGONRISE 297 tristate "DragonRise Inc. game controller" 298 depends on HID 299 help 300 Say Y here if you have DragonRise Inc. game controllers. 301 These might be branded as: 302 - Tesun USB-703 303 - Media-tech MT1504 "Rogue" 304 - DVTech JS19 "Gear" 305 - Defender Game Master 306 307config DRAGONRISE_FF 308 bool "DragonRise Inc. force feedback" 309 depends on HID_DRAGONRISE 310 select INPUT_FF_MEMLESS 311 help 312 Say Y here if you want to enable force feedback support for DragonRise Inc. 313 game controllers. 314 315config HID_EMS_FF 316 tristate "EMS Production Inc. force feedback support" 317 depends on HID 318 select INPUT_FF_MEMLESS 319 help 320 Say Y here if you want to enable force feedback support for devices by 321 EMS Production Ltd. 322 Currently the following devices are known to be supported: 323 - Trio Linker Plus II 324 325config HID_ELAN 326 tristate "ELAN USB Touchpad Support" 327 depends on LEDS_CLASS && USB_HID 328 help 329 Say Y to enable support for the USB ELAN touchpad 330 Currently the following devices are known to be supported: 331 - HP Pavilion X2 10-p0XX. 332 333config HID_ELECOM 334 tristate "ELECOM HID devices" 335 depends on HID 336 help 337 Support for ELECOM devices: 338 - BM084 Bluetooth Mouse 339 - EX-G Trackballs (M-XT3DRBK, M-XT3URBK) 340 - DEFT Trackballs (M-DT1DRBK, M-DT1URBK, M-DT2DRBK, M-DT2URBK) 341 - HUGE Trackballs (M-HT1DRBK, M-HT1URBK) 342 343config HID_ELO 344 tristate "ELO USB 4000/4500 touchscreen" 345 depends on USB_HID 346 help 347 Support for the ELO USB 4000/4500 touchscreens. Note that this is for 348 different devices than those handled by CONFIG_TOUCHSCREEN_USB_ELO. 349 350config HID_EZKEY 351 tristate "Ezkey BTC 8193 keyboard" 352 depends on HID 353 default !EXPERT 354 help 355 Support for Ezkey BTC 8193 keyboard. 356 357config HID_FT260 358 tristate "FTDI FT260 USB HID to I2C host support" 359 depends on USB_HID && HIDRAW && I2C 360 help 361 Provides I2C host adapter functionality over USB-HID through FT260 362 device. The customizable USB descriptor fields are exposed as sysfs 363 attributes. 364 365 To compile this driver as a module, choose M here: the module 366 will be called hid-ft260. 367 368config HID_GEMBIRD 369 tristate "Gembird Joypad" 370 depends on HID 371 help 372 Support for Gembird JPD-DualForce 2. 373 374config HID_GFRM 375 tristate "Google Fiber TV Box remote control support" 376 depends on HID 377 help 378 Support for Google Fiber TV Box remote controls 379 380config HID_GLORIOUS 381 tristate "Glorious PC Gaming Race mice" 382 depends on HID 383 help 384 Support for Glorious PC Gaming Race mice such as 385 the Glorious Model O, O- and D. 386 387config HID_HOLTEK 388 tristate "Holtek HID devices" 389 depends on USB_HID 390 help 391 Support for Holtek based devices: 392 - Holtek On Line Grip based game controller 393 - Trust GXT 18 Gaming Keyboard 394 - Sharkoon Drakonia / Perixx MX-2000 gaming mice 395 - Tracer Sniper TRM-503 / NOVA Gaming Slider X200 / 396 Zalman ZM-GM1 397 - SHARKOON DarkGlider Gaming mouse 398 - LEETGION Hellion Gaming Mouse 399 400config HOLTEK_FF 401 bool "Holtek On Line Grip force feedback support" 402 depends on HID_HOLTEK 403 select INPUT_FF_MEMLESS 404 help 405 Say Y here if you have a Holtek On Line Grip based game controller 406 and want to have force feedback support for it. 407 408config HID_GOOGLE_HAMMER 409 tristate "Google Hammer Keyboard" 410 depends on USB_HID && LEDS_CLASS && CROS_EC 411 help 412 Say Y here if you have a Google Hammer device. 413 414config HID_VIVALDI 415 tristate "Vivaldi Keyboard" 416 depends on HID 417 help 418 Say Y here if you want to enable support for Vivaldi keyboards. 419 420 Vivaldi keyboards use a vendor-specific (Google) HID usage to report 421 how the keys in the top row are physically ordered. 422 423config HID_GT683R 424 tristate "MSI GT68xR LED support" 425 depends on LEDS_CLASS && USB_HID 426 help 427 Say Y here if you want to enable support for the three MSI GT68xR LEDs 428 429 This driver support following modes: 430 - Normal: LEDs are fully on when enabled 431 - Audio: LEDs brightness depends on sound level 432 - Breathing: LEDs brightness varies at human breathing rate 433 434 Currently the following devices are know to be supported: 435 - MSI GT683R 436 437config HID_KEYTOUCH 438 tristate "Keytouch HID devices" 439 depends on HID 440 help 441 Support for Keytouch HID devices not fully compliant with 442 the specification. Currently supported: 443 - Keytouch IEC 60945 444 445config HID_KYE 446 tristate "KYE/Genius devices" 447 depends on HID 448 help 449 Support for KYE/Genius devices not fully compliant with HID standard: 450 - Ergo Mouse 451 - EasyPen i405X tablet 452 - MousePen i608X tablet 453 - EasyPen M610X tablet 454 455config HID_UCLOGIC 456 tristate "UC-Logic" 457 depends on USB_HID 458 help 459 Support for UC-Logic and Huion tablets. 460 461config HID_WALTOP 462 tristate "Waltop" 463 depends on HID 464 help 465 Support for Waltop tablets. 466 467config HID_VIEWSONIC 468 tristate "ViewSonic/Signotec" 469 depends on HID 470 help 471 Support for ViewSonic/Signotec PD1011 signature pad. 472 473config HID_XIAOMI 474 tristate "Xiaomi" 475 depends on HID 476 help 477 Adds support for side buttons of Xiaomi Mi Dual Mode Wireless 478 Mouse Silent Edition. 479 480config HID_GYRATION 481 tristate "Gyration remote control" 482 depends on HID 483 help 484 Support for Gyration remote control. 485 486config HID_ICADE 487 tristate "ION iCade arcade controller" 488 depends on HID 489 help 490 Support for the ION iCade arcade controller to work as a joystick. 491 492 To compile this driver as a module, choose M here: the 493 module will be called hid-icade. 494 495config HID_ITE 496 tristate "ITE devices" 497 depends on HID 498 default !EXPERT 499 help 500 Support for ITE devices not fully compliant with HID standard. 501 502config HID_JABRA 503 tristate "Jabra USB HID Driver" 504 depends on HID 505 help 506 Support for Jabra USB HID devices. 507 508 Prevents mapping of vendor defined HID usages to input events. Without 509 this driver HID reports from Jabra devices may incorrectly be seen as 510 mouse button events. 511 Say M here if you may ever plug in a Jabra USB device. 512 513config HID_TWINHAN 514 tristate "Twinhan IR remote control" 515 depends on HID 516 help 517 Support for Twinhan IR remote control. 518 519config HID_KENSINGTON 520 tristate "Kensington Slimblade Trackball" 521 depends on HID 522 default !EXPERT 523 help 524 Support for Kensington Slimblade Trackball. 525 526config HID_LCPOWER 527 tristate "LC-Power" 528 depends on HID 529 help 530 Support for LC-Power RC1000MCE RF remote control. 531 532config HID_LED 533 tristate "Simple RGB LED support" 534 depends on HID 535 depends on LEDS_CLASS 536 help 537 Support for simple RGB LED devices. Currently supported are: 538 - Riso Kagaku Webmail Notifier 539 - Dream Cheeky Webmail Notifier and Friends Alert 540 - ThingM blink(1) 541 - Delcom Visual Signal Indicator Generation 2 542 - Greynut Luxafor 543 544 To compile this driver as a module, choose M here: the 545 module will be called hid-led. 546 547config HID_LENOVO 548 tristate "Lenovo / Thinkpad devices" 549 depends on HID 550 select NEW_LEDS 551 select LEDS_CLASS 552 help 553 Support for IBM/Lenovo devices that are not fully compliant with HID standard. 554 555 Say Y if you want support for horizontal scrolling of the IBM/Lenovo 556 Scrollpoint mice or the non-compliant features of the Lenovo Thinkpad 557 standalone keyboards, e.g: 558 - ThinkPad USB Keyboard with TrackPoint (supports extra LEDs and trackpoint 559 configuration) 560 - ThinkPad Compact Bluetooth Keyboard with TrackPoint (supports Fn keys) 561 - ThinkPad Compact USB Keyboard with TrackPoint (supports Fn keys) 562 563config HID_LETSKETCH 564 tristate "Letsketch WP9620N tablets" 565 depends on USB_HID 566 help 567 Driver for the LetSketch / VSON WP9620N drawing tablet. This 568 drawing tablet is also sold under other brand names such as Case U, 569 presumably this driver will work for all of them. But it has only been 570 tested with a LetSketch WP9620N model. 571 572 These tablets also work without a special HID driver, but then only 573 part of the active area works and both the pad and stylus buttons are 574 hardwired to special key-combos. E.g. the 2 stylus buttons send right 575 mouse clicks / resp. "e" key presses. 576 577config HID_LOGITECH 578 tristate "Logitech devices" 579 depends on USB_HID 580 depends on LEDS_CLASS 581 default !EXPERT 582 help 583 Support for Logitech devices that are not fully compliant with HID standard. 584 585config HID_LOGITECH_DJ 586 tristate "Logitech receivers full support" 587 depends on USB_HID 588 depends on HIDRAW 589 depends on HID_LOGITECH 590 select HID_LOGITECH_HIDPP 591 help 592 Say Y if you want support for Logitech receivers and devices. 593 Logitech receivers are capable of pairing multiple Logitech compliant 594 devices to the same receiver. Without this driver it will be handled by 595 generic USB_HID driver and all incoming events will be multiplexed 596 into a single mouse and a single keyboard device. 597 598config HID_LOGITECH_HIDPP 599 tristate "Logitech HID++ devices support" 600 depends on HID_LOGITECH 601 select POWER_SUPPLY 602 help 603 Support for Logitech devices relying on the HID++ Logitech specification 604 605 Say Y if you want support for Logitech devices relying on the HID++ 606 specification. Such devices are the various Logitech Touchpads (T650, 607 T651, TK820), some mice (Zone Touch mouse), or even keyboards (Solar 608 Keyboard). 609 610config LOGITECH_FF 611 bool "Logitech force feedback support" 612 depends on HID_LOGITECH 613 select INPUT_FF_MEMLESS 614 help 615 Say Y here if you have one of these devices: 616 - Logitech WingMan Cordless RumblePad 617 - Logitech WingMan Cordless RumblePad 2 618 - Logitech WingMan Force 3D 619 620 and if you want to enable force feedback for them. 621 Note: if you say N here, this device will still be supported, but without 622 force feedback. 623 624config LOGIRUMBLEPAD2_FF 625 bool "Logitech force feedback support (variant 2)" 626 depends on HID_LOGITECH 627 select INPUT_FF_MEMLESS 628 help 629 Say Y here if you want to enable force feedback support for: 630 - Logitech RumblePad 631 - Logitech Rumblepad 2 632 - Logitech Formula Vibration Feedback Wheel 633 634config LOGIG940_FF 635 bool "Logitech Flight System G940 force feedback support" 636 depends on HID_LOGITECH 637 select INPUT_FF_MEMLESS 638 help 639 Say Y here if you want to enable force feedback support for Logitech 640 Flight System G940 devices. 641 642config LOGIWHEELS_FF 643 bool "Logitech wheels configuration and force feedback support" 644 depends on HID_LOGITECH 645 select INPUT_FF_MEMLESS 646 default LOGITECH_FF 647 help 648 Say Y here if you want to enable force feedback and range setting(*) 649 support for following Logitech wheels: 650 - Logitech G25 (*) 651 - Logitech G27 (*) 652 - Logitech G29 (*) 653 - Logitech Driving Force 654 - Logitech Driving Force Pro (*) 655 - Logitech Driving Force GT (*) 656 - Logitech Driving Force EX/RX 657 - Logitech Driving Force Wireless 658 - Logitech Speed Force Wireless 659 - Logitech MOMO Force 660 - Logitech MOMO Racing Force 661 - Logitech Formula Force GP 662 - Logitech Formula Force EX/RX 663 - Logitech Wingman Formula Force GP 664 665config HID_MAGICMOUSE 666 tristate "Apple Magic Mouse/Trackpad multi-touch support" 667 depends on HID 668 help 669 Support for the Apple Magic Mouse/Trackpad multi-touch. 670 671 Say Y here if you want support for the multi-touch features of the 672 Apple Wireless "Magic" Mouse and the Apple Wireless "Magic" Trackpad. 673 674config HID_MALTRON 675 tristate "Maltron L90 keyboard" 676 depends on HID 677 help 678 Adds support for the volume up, volume down, mute, and play/pause buttons 679 of the Maltron L90 keyboard. 680 681config HID_MAYFLASH 682 tristate "Mayflash game controller adapter force feedback" 683 depends on HID 684 select INPUT_FF_MEMLESS 685 help 686 Say Y here if you have HJZ Mayflash PS3 game controller adapters 687 and want to enable force feedback support. 688 689config HID_REDRAGON 690 tristate "Redragon keyboards" 691 depends on HID 692 default !EXPERT 693 help 694 Support for Redragon keyboards that need fix-ups to work properly. 695 696config HID_MICROSOFT 697 tristate "Microsoft non-fully HID-compliant devices" 698 depends on HID 699 default !EXPERT 700 select INPUT_FF_MEMLESS 701 help 702 Support for Microsoft devices that are not fully compliant with HID standard. 703 704config HID_MONTEREY 705 tristate "Monterey Genius KB29E keyboard" 706 depends on HID 707 default !EXPERT 708 help 709 Support for Monterey Genius KB29E. 710 711config HID_MULTITOUCH 712 tristate "HID Multitouch panels" 713 depends on HID 714 help 715 Generic support for HID multitouch panels. 716 717 Say Y here if you have one of the following devices: 718 - 3M PCT touch screens 719 - ActionStar dual touch panels 720 - Atmel panels 721 - Cando dual touch panels 722 - Chunghwa panels 723 - CJTouch panels 724 - CVTouch panels 725 - Cypress TrueTouch panels 726 - Elan Microelectronics touch panels 727 - Elo TouchSystems IntelliTouch Plus panels 728 - GeneralTouch 'Sensing Win7-TwoFinger' panels 729 - GoodTouch panels 730 - Hanvon dual touch panels 731 - Ilitek dual touch panels 732 - IrTouch Infrared USB panels 733 - LG Display panels (Dell ST2220Tc) 734 - Lumio CrystalTouch panels 735 - MosArt dual-touch panels 736 - Panasonic multitouch panels 737 - PenMount dual touch panels 738 - Perixx Peripad 701 touchpad 739 - PixArt optical touch screen 740 - Pixcir dual touch panels 741 - Quanta panels 742 - eGalax dual-touch panels, including the Joojoo and Wetab tablets 743 - SiS multitouch panels 744 - Stantum multitouch panels 745 - Touch International Panels 746 - Unitec Panels 747 - Wistron optical touch panels 748 - XAT optical touch panels 749 - Xiroku optical touch panels 750 - Zytronic touch panels 751 752 If unsure, say N. 753 754 To compile this driver as a module, choose M here: the 755 module will be called hid-multitouch. 756 757config HID_NINTENDO 758 tristate "Nintendo Joy-Con and Pro Controller support" 759 depends on HID 760 depends on NEW_LEDS 761 depends on LEDS_CLASS 762 select POWER_SUPPLY 763 help 764 Adds support for the Nintendo Switch Joy-Cons and Pro Controller. 765 All controllers support bluetooth, and the Pro Controller also supports 766 its USB mode. 767 768 To compile this driver as a module, choose M here: the 769 module will be called hid-nintendo. 770 771config NINTENDO_FF 772 bool "Nintendo Switch controller force feedback support" 773 depends on HID_NINTENDO 774 select INPUT_FF_MEMLESS 775 help 776 Say Y here if you have a Nintendo Switch controller and want to enable 777 force feedback support for it. This works for both joy-cons and the pro 778 controller. For the pro controller, both rumble motors can be controlled 779 individually. 780 781config HID_NTI 782 tristate "NTI keyboard adapters" 783 help 784 Support for the "extra" Sun keyboard keys on keyboards attached 785 through Network Technologies USB-SUN keyboard adapters. 786 787config HID_NTRIG 788 tristate "N-Trig touch screen" 789 depends on USB_HID 790 help 791 Support for N-Trig touch screen. 792 793config HID_ORTEK 794 tristate "Ortek PKB-1700/WKB-2000/Skycable wireless keyboard and mouse trackpad" 795 depends on HID 796 help 797 There are certain devices which have LogicalMaximum wrong in the keyboard 798 usage page of their report descriptor. The most prevailing ones so far 799 are manufactured by Ortek, thus the name of the driver. Currently 800 supported devices by this driver are 801 802 - Ortek PKB-1700 803 - Ortek WKB-2000 804 - Skycable wireless presenter 805 806config HID_PANTHERLORD 807 tristate "Pantherlord/GreenAsia game controller" 808 depends on HID 809 help 810 Say Y here if you have a PantherLord/GreenAsia based game controller 811 or adapter. 812 813config PANTHERLORD_FF 814 bool "Pantherlord force feedback support" 815 depends on HID_PANTHERLORD 816 select INPUT_FF_MEMLESS 817 help 818 Say Y here if you have a PantherLord/GreenAsia based game controller 819 or adapter and want to enable force feedback support for it. 820 821config HID_PENMOUNT 822 tristate "Penmount touch device" 823 depends on USB_HID 824 help 825 This selects a driver for the PenMount 6000 touch controller. 826 827 The driver works around a problem in the report descript allowing 828 the userspace to touch events instead of mouse events. 829 830 Say Y here if you have a Penmount based touch controller. 831 832config HID_PETALYNX 833 tristate "Petalynx Maxter remote control" 834 depends on HID 835 help 836 Support for Petalynx Maxter remote control. 837 838config HID_PICOLCD 839 tristate "PicoLCD (graphic version)" 840 depends on HID 841 help 842 This provides support for Minibox PicoLCD devices, currently 843 only the graphical ones are supported. 844 845 This includes support for the following device features: 846 - Keypad 847 - Switching between Firmware and Flash mode 848 - EEProm / Flash access (via debugfs) 849 Features selectively enabled: 850 - Framebuffer for monochrome 256x64 display 851 - Backlight control 852 - Contrast control 853 - General purpose outputs 854 Features that are not (yet) supported: 855 - IR 856 857config HID_PICOLCD_FB 858 bool "Framebuffer support" if EXPERT 859 default !EXPERT 860 depends on HID_PICOLCD 861 depends on HID_PICOLCD=FB || FB=y 862 select FB_DEFERRED_IO 863 select FB_SYS_FILLRECT 864 select FB_SYS_COPYAREA 865 select FB_SYS_IMAGEBLIT 866 select FB_SYS_FOPS 867 help 868 Provide access to PicoLCD's 256x64 monochrome display via a 869 framebuffer device. 870 871config HID_PICOLCD_BACKLIGHT 872 bool "Backlight control" if EXPERT 873 default !EXPERT 874 depends on HID_PICOLCD 875 depends on HID_PICOLCD=BACKLIGHT_CLASS_DEVICE || BACKLIGHT_CLASS_DEVICE=y 876 help 877 Provide access to PicoLCD's backlight control via backlight 878 class. 879 880config HID_PICOLCD_LCD 881 bool "Contrast control" if EXPERT 882 default !EXPERT 883 depends on HID_PICOLCD 884 depends on HID_PICOLCD=LCD_CLASS_DEVICE || LCD_CLASS_DEVICE=y 885 help 886 Provide access to PicoLCD's LCD contrast via lcd class. 887 888config HID_PICOLCD_LEDS 889 bool "GPO via leds class" if EXPERT 890 default !EXPERT 891 depends on HID_PICOLCD 892 depends on HID_PICOLCD=LEDS_CLASS || LEDS_CLASS=y 893 help 894 Provide access to PicoLCD's GPO pins via leds class. 895 896config HID_PICOLCD_CIR 897 bool "CIR via RC class" if EXPERT 898 default !EXPERT 899 depends on HID_PICOLCD 900 depends on HID_PICOLCD=RC_CORE || RC_CORE=y 901 help 902 Provide access to PicoLCD's CIR interface via remote control (LIRC). 903 904config HID_PLANTRONICS 905 tristate "Plantronics USB HID Driver" 906 depends on HID 907 help 908 Provides HID support for Plantronics USB audio devices. 909 Correctly maps vendor unique volume up/down HID usages to 910 KEY_VOLUMEUP and KEY_VOLUMEDOWN events and prevents core mapping 911 of other vendor unique HID usages to random mouse events. 912 913 Say M here if you may ever plug in a Plantronics USB audio device. 914 915config HID_PLAYSTATION 916 tristate "PlayStation HID Driver" 917 depends on HID 918 depends on LEDS_CLASS_MULTICOLOR 919 select CRC32 920 select POWER_SUPPLY 921 help 922 Provides support for Sony PS5 controllers including support for 923 its special functionalities e.g. touchpad, lights and motion 924 sensors. 925 926config PLAYSTATION_FF 927 bool "PlayStation force feedback support" 928 depends on HID_PLAYSTATION 929 select INPUT_FF_MEMLESS 930 help 931 Say Y here if you would like to enable force feedback support for 932 PlayStation game controllers. 933 934config HID_RAZER 935 tristate "Razer non-fully HID-compliant devices" 936 depends on HID 937 help 938 Support for Razer devices that are not fully compliant with the 939 HID standard. 940 941config HID_PRIMAX 942 tristate "Primax non-fully HID-compliant devices" 943 depends on HID 944 help 945 Support for Primax devices that are not fully compliant with the 946 HID standard. 947 948config HID_RETRODE 949 tristate "Retrode 2 USB adapter for vintage video games" 950 depends on USB_HID 951 help 952 Support for 953 * Retrode 2 cartridge and controller adapter 954 955config HID_ROCCAT 956 tristate "Roccat device support" 957 depends on USB_HID 958 help 959 Support for Roccat devices. 960 Say Y here if you have a Roccat mouse or keyboard and want 961 support for its special functionalities. 962 963config HID_SAITEK 964 tristate "Saitek (Mad Catz) non-fully HID-compliant devices" 965 depends on HID 966 help 967 Support for Saitek devices that are not fully compliant with the 968 HID standard. 969 970 Supported devices: 971 - PS1000 Dual Analog Pad 972 - Saitek R.A.T.7, R.A.T.9, M.M.O.7 Gaming Mice 973 - Mad Catz R.A.T.5, R.A.T.9 Gaming Mice 974 975config HID_SAMSUNG 976 tristate "Samsung InfraRed remote control or keyboards" 977 depends on USB_HID 978 help 979 Support for Samsung InfraRed remote control or keyboards. 980 981config HID_SEMITEK 982 tristate "Semitek USB keyboards" 983 depends on HID 984 help 985 Support for Semitek USB keyboards that are not fully compliant 986 with the HID standard. 987 988 There are many variants, including: 989 - GK61, GK64, GK68, GK84, GK96, etc. 990 - SK61, SK64, SK68, SK84, SK96, etc. 991 - Dierya DK61/DK66 992 - Tronsmart TK09R 993 - Woo-dy 994 - X-Bows Nature/Knight 995 996config HID_SIGMAMICRO 997 tristate "SiGma Micro-based keyboards" 998 depends on USB_HID 999 help 1000 Support for keyboards that use the SiGma Micro (a.k.a SigmaChip) IC. 1001 1002 Supported devices: 1003 - Landslides KR-700 1004 - Rapoo V500 1005 1006config HID_SONY 1007 tristate "Sony PS2/3/4 accessories" 1008 depends on USB_HID 1009 depends on NEW_LEDS 1010 depends on LEDS_CLASS 1011 select POWER_SUPPLY 1012 select CRC32 1013 help 1014 Support for 1015 1016 * Sony PS3 6-axis controllers 1017 * Sony PS4 DualShock 4 controllers 1018 * Buzz controllers 1019 * Sony PS3 Blue-ray Disk Remote Control (Bluetooth) 1020 * Logitech Harmony adapter for Sony Playstation 3 (Bluetooth) 1021 * Guitar Hero Live PS3, Wii U and PS4 guitar dongles 1022 * Guitar Hero PS3 and PC guitar dongles 1023 1024config SONY_FF 1025 bool "Sony PS2/3/4 accessories force feedback support" 1026 depends on HID_SONY 1027 select INPUT_FF_MEMLESS 1028 help 1029 Say Y here if you have a Sony PS2/3/4 accessory and want to enable 1030 force feedback support for it. 1031 1032config HID_SPEEDLINK 1033 tristate "Speedlink VAD Cezanne mouse support" 1034 depends on HID 1035 help 1036 Support for Speedlink Vicious and Divine Cezanne mouse. 1037 1038config HID_STEAM 1039 tristate "Steam Controller support" 1040 depends on HID 1041 select POWER_SUPPLY 1042 help 1043 Say Y here if you have a Steam Controller if you want to use it 1044 without running the Steam Client. It supports both the wired and 1045 the wireless adaptor. 1046 1047config HID_STEELSERIES 1048 tristate "Steelseries SRW-S1 steering wheel support" 1049 depends on HID 1050 help 1051 Support for Steelseries SRW-S1 steering wheel 1052 1053config HID_SUNPLUS 1054 tristate "Sunplus wireless desktop" 1055 depends on HID 1056 help 1057 Support for Sunplus wireless desktop. 1058 1059config HID_RMI 1060 tristate "Synaptics RMI4 device support" 1061 depends on HID 1062 select RMI4_CORE 1063 select RMI4_F03 1064 select RMI4_F11 1065 select RMI4_F12 1066 select RMI4_F30 1067 help 1068 Support for Synaptics RMI4 touchpads. 1069 Say Y here if you have a Synaptics RMI4 touchpads over i2c-hid or usbhid 1070 and want support for its special functionalities. 1071 1072config HID_GREENASIA 1073 tristate "GreenAsia (Product ID 0x12) game controller support" 1074 depends on HID 1075 help 1076 Say Y here if you have a GreenAsia (Product ID 0x12) based game 1077 controller or adapter. 1078 1079config GREENASIA_FF 1080 bool "GreenAsia (Product ID 0x12) force feedback support" 1081 depends on HID_GREENASIA 1082 select INPUT_FF_MEMLESS 1083 help 1084 Say Y here if you have a GreenAsia (Product ID 0x12) based game controller 1085 (like MANTA Warrior MM816 and SpeedLink Strike2 SL-6635) or adapter 1086 and want to enable force feedback support for it. 1087 1088config HID_HYPERV_MOUSE 1089 tristate "Microsoft Hyper-V mouse driver" 1090 depends on HYPERV 1091 help 1092 Select this option to enable the Hyper-V mouse driver. 1093 1094config HID_SMARTJOYPLUS 1095 tristate "SmartJoy PLUS PS2/USB adapter support" 1096 depends on HID 1097 help 1098 Support for SmartJoy PLUS PS2/USB adapter, Super Dual Box, 1099 Super Joy Box 3 Pro, Super Dual Box Pro, and Super Joy Box 5 Pro. 1100 1101 Note that DDR (Dance Dance Revolution) mode is not supported, nor 1102 is pressure sensitive buttons on the pro models. 1103 1104config SMARTJOYPLUS_FF 1105 bool "SmartJoy PLUS PS2/USB adapter force feedback support" 1106 depends on HID_SMARTJOYPLUS 1107 select INPUT_FF_MEMLESS 1108 help 1109 Say Y here if you have a SmartJoy PLUS PS2/USB adapter and want to 1110 enable force feedback support for it. 1111 1112config HID_TIVO 1113 tristate "TiVo Slide Bluetooth remote control support" 1114 depends on HID 1115 help 1116 Say Y if you have a TiVo Slide Bluetooth remote control. 1117 1118config HID_TOPSEED 1119 tristate "TopSeed Cyberlink, BTC Emprex, Conceptronic remote control support" 1120 depends on HID 1121 help 1122 Say Y if you have a TopSeed Cyberlink or BTC Emprex or Conceptronic 1123 CLLRCMCE remote control. 1124 1125config HID_THINGM 1126 tristate "ThingM blink(1) USB RGB LED" 1127 depends on HID 1128 depends on LEDS_CLASS 1129 select HID_LED 1130 help 1131 Support for the ThingM blink(1) USB RGB LED. This driver has been 1132 merged into the generic hid led driver. Config symbol HID_THINGM 1133 just selects HID_LED and will be removed soon. 1134 1135config HID_THRUSTMASTER 1136 tristate "ThrustMaster devices support" 1137 depends on USB_HID 1138 help 1139 Say Y here if you have a THRUSTMASTER FireStore Dual Power 2, 1140 a THRUSTMASTER Ferrari GT Rumble Wheel or Thrustmaster FFB 1141 Wheel (T150RS, T300RS, T300 Ferrari Alcantara Edition, T500RS). 1142 1143config THRUSTMASTER_FF 1144 bool "ThrustMaster devices force feedback support" 1145 depends on HID_THRUSTMASTER 1146 select INPUT_FF_MEMLESS 1147 help 1148 Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or 3, 1149 a THRUSTMASTER Dual Trigger 3-in-1 or a THRUSTMASTER Ferrari GT 1150 Rumble Force or Force Feedback Wheel. 1151 1152config HID_UDRAW_PS3 1153 tristate "THQ PS3 uDraw tablet" 1154 depends on HID 1155 help 1156 Say Y here if you want to use the THQ uDraw gaming tablet for 1157 the PS3. 1158 1159config HID_U2FZERO 1160 tristate "U2F Zero LED and RNG support" 1161 depends on USB_HID 1162 depends on LEDS_CLASS 1163 depends on HW_RANDOM 1164 help 1165 Support for the LED of the U2F Zero device. 1166 1167 U2F Zero supports custom commands for blinking the LED 1168 and getting data from the internal hardware RNG. 1169 The internal hardware can be used to feed the enthropy pool. 1170 1171 U2F Zero only supports blinking its LED, so this driver doesn't 1172 allow setting the brightness to anything but 1, which will 1173 trigger a single blink and immediately reset back to 0. 1174 1175config HID_WACOM 1176 tristate "Wacom Intuos/Graphire tablet support (USB)" 1177 depends on USB_HID 1178 select POWER_SUPPLY 1179 select NEW_LEDS 1180 select LEDS_CLASS 1181 select LEDS_TRIGGERS 1182 help 1183 Say Y here if you want to use the USB or BT version of the Wacom Intuos 1184 or Graphire tablet. 1185 1186 To compile this driver as a module, choose M here: the 1187 module will be called wacom. 1188 1189config HID_WIIMOTE 1190 tristate "Nintendo Wii / Wii U peripherals" 1191 depends on HID 1192 depends on LEDS_CLASS 1193 select POWER_SUPPLY 1194 select INPUT_FF_MEMLESS 1195 help 1196 Support for Nintendo Wii and Wii U Bluetooth peripherals. Supported 1197 devices are the Wii Remote and its extension devices, but also devices 1198 based on the Wii Remote like the Wii U Pro Controller or the 1199 Wii Balance Board. 1200 1201 Support for all official Nintendo extensions is available, however, 3rd 1202 party extensions might not be supported. Please report these devices to: 1203 http://github.com/dvdhrm/xwiimote/issues 1204 1205 Other Nintendo Wii U peripherals that are IEEE 802.11 based (including 1206 the Wii U Gamepad) might be supported in the future. But currently 1207 support is limited to Bluetooth based devices. 1208 1209 If unsure, say N. 1210 1211 To compile this driver as a module, choose M here: the 1212 module will be called hid-wiimote. 1213 1214config HID_XINMO 1215 tristate "Xin-Mo non-fully compliant devices" 1216 depends on HID 1217 help 1218 Support for Xin-Mo devices that are not fully compliant with the HID 1219 standard. Currently only supports the Xin-Mo Dual Arcade. Say Y here 1220 if you have a Xin-Mo Dual Arcade controller. 1221 1222config HID_ZEROPLUS 1223 tristate "Zeroplus based game controller support" 1224 depends on HID 1225 help 1226 Say Y here if you have a Zeroplus based game controller. 1227 1228config ZEROPLUS_FF 1229 bool "Zeroplus based game controller force feedback support" 1230 depends on HID_ZEROPLUS 1231 select INPUT_FF_MEMLESS 1232 help 1233 Say Y here if you have a Zeroplus based game controller and want 1234 to have force feedback support for it. 1235 1236config HID_ZYDACRON 1237 tristate "Zydacron remote control support" 1238 depends on HID 1239 help 1240 Support for Zydacron remote control. 1241 1242config HID_SENSOR_HUB 1243 tristate "HID Sensors framework support" 1244 depends on HID && HAS_IOMEM 1245 select MFD_CORE 1246 default n 1247 help 1248 Support for HID Sensor framework. This creates a MFD instance 1249 for a sensor hub and identifies all the sensors connected to it. 1250 Each sensor is registered as a MFD cell, so that sensor specific 1251 processing can be done in a separate driver. Each sensor 1252 drivers can use the service provided by this driver to register 1253 for events and handle data streams. Each sensor driver can format 1254 data and present to user mode using input or IIO interface. 1255 1256config HID_SENSOR_CUSTOM_SENSOR 1257 tristate "HID Sensors hub custom sensor support" 1258 depends on HID_SENSOR_HUB 1259 default n 1260 help 1261 HID Sensor hub specification allows definition of some custom and 1262 generic sensors. Unlike other HID sensors, they can't be exported 1263 via Linux IIO because of custom fields. This is up to the manufacturer 1264 to decide how to interpret these special sensor ids and process in 1265 the user space. Currently some manufacturers are using these ids for 1266 sensor calibration and debugging other sensors. Manufacturers 1267 shouldn't use these special custom sensor ids to export any of the 1268 standard sensors. 1269 Select this config option for custom/generic sensor support. 1270 1271config HID_ALPS 1272 tristate "Alps HID device support" 1273 depends on HID 1274 help 1275 Support for Alps I2C HID touchpads and StickPointer. 1276 Say Y here if you have a Alps touchpads over i2c-hid or usbhid 1277 and want support for its special functionalities. 1278 1279config HID_MCP2221 1280 tristate "Microchip MCP2221 HID USB-to-I2C/SMbus host support" 1281 depends on USB_HID && I2C 1282 depends on GPIOLIB 1283 help 1284 Provides I2C and SMBUS host adapter functionality over USB-HID 1285 through MCP2221 device. 1286 1287 To compile this driver as a module, choose M here: the module 1288 will be called hid-mcp2221.ko. 1289 1290endmenu 1291 1292endif # HID 1293 1294source "drivers/hid/usbhid/Kconfig" 1295 1296source "drivers/hid/i2c-hid/Kconfig" 1297 1298source "drivers/hid/intel-ish-hid/Kconfig" 1299 1300source "drivers/hid/amd-sfh-hid/Kconfig" 1301 1302source "drivers/hid/surface-hid/Kconfig" 1303 1304endmenu 1305